Modify

Opened 8 years ago

Closed 6 years ago

Last modified 4 years ago

#7246 closed enhancement (fixed)

Missing support for broadcom serial flash support for brcm47xx target

Reported by: anonymous Owned by: hauke
Priority: normal Milestone: Barrier Breaker 14.07
Component: packages Version: Trunk
Keywords: sflash brcm47xx Cc:

Description

Serial flash support has been added to brcm-2.4 target, but it is not in brcm47xx target, I'd like to use 2.6 series kernel on my device (Netcore NW618, which is a model equipped with serial flash chip)

Thanks

Attachments (2)

bcm947xx-flash.c (14.3 KB) - added by yrleu 7 years ago.
sflash.c (19.1 KB) - added by yrleu 7 years ago.

Download all attachments as: .zip

Change History (14)

comment:1 Changed 8 years ago by rtz2

I have a WNR3500L, which has a serial flash chip, so let me see, what I can do about it.

comment:2 Changed 8 years ago by rtz2

  • Owner changed from developers to rtz2
  • Status changed from new to accepted

comment:3 Changed 8 years ago by nico

  • Milestone changed from Backfire 10.03.1 to Kamikaze
  • Version changed from Backfire 10.03 to Trunk

Changed 7 years ago by yrleu

Changed 7 years ago by yrleu

comment:6 Changed 7 years ago by yrleu

I have made serial flash work on my D-Link DIR-627 with OpenWrt linux 2.6.37.
I have followed the instructions detailed in Tick#6580 ASUS RT-N16 Support to make the DIR-627 bootable. And I use the attached bcm847xx-flash.c and sflash.c instead of those in <OpenWrt-Devel> <PATCH> patch in trunk to support serial flash driver of Netgear WNR3500L patch.
However, to make sflash.c compiled successfully within the new brcm4716 target (Linux 2.6.37), some .h include files of sflash.c must be modified using matterial copied from the correspoinding .h files in brcm-2.4.
In the sflash.c of the WNR3500L patch, GET_BYTE(ptr) is defined as:

#define GET_BYTE(ptr)  (*(u8 *)((u32)(ptr) ^ 7))

In the attached sflash.c, GETBYTE(ptr) is defined as:

#ifdef	IL_BIGENDIAN
#ifdef	BCMHND74K
#define	GET_BYTE(ptr)	(*(u8 *)((u32)(ptr) ^ 7))
#else	/* !74K, bcm33xx */
#define	GET_BYTE(ptr)	(*(u8 *)((u32)(ptr) ^ 3))
#endif	/* BCMHND74K */
#else	/* !IL_BIGENDIAN */
#define	GET_BYTE(ptr)	(*(ptr))
#endif	/* IL_BIGENDIAN */

comment:7 Changed 7 years ago by hauke

  • Owner changed from rtz2 to hauke

comment:8 Changed 7 years ago by jonimus

This patch in conjunction with the RT-N15 change-set allows for booting on my WRT320N/E2000. I had to add an include of <linux/semaphore.h> and change the init_MUTEX(sem) to sema_init(sem, 1)

comment:9 Changed 6 years ago by anonymous

+1

comment:10 follow-up: Changed 6 years ago by hauke

  • Resolution set to fixed
  • Status changed from accepted to closed

Serial flash support for the brcm47xx tagert is included in OpenWrt trunk for some months now.

comment:11 in reply to: ↑ 10 Changed 6 years ago by anonymous

Replying to hauke:

Serial flash support for the brcm47xx tagert is included in OpenWrt trunk for some months now.

where can I find it? and how to do?

comment:12 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.