This is the mail archive of the
ecos-devel@sources.redhat.com
mailing list for the eCos project.
RE: Strataflash mapping problem
- From: "Daly, Jeffrey" <jeffrey dot daly at intel dot com>
- To: <ecos-devel at sources dot redhat dot com>
- Date: Fri, 13 Feb 2004 07:53:04 -0500
- Subject: RE: Strataflash mapping problem
i think the way it should be implemented is CYGNUM_FLASH_DEVICES should be the real number of devices on the board, CYGNUM_FLASH_WIDTH would be the 8 or 16 bit width of the particular implementation and something like CYGNUM_FLASH_BUS_WIDTH would be defined as either 8,16,32 (bits) and this would then calculate the CYGNUM_FLASH_INTERLEAVE. so given the example in strata.h we would have CYGNUM_FLASH_BUS_WIDTH = 32 and CYGNUM_FLASH_WIDTH = 16, and with CYGNUM_FLASH_DEVICES = 2 and CYGNUM_FLASH_INTERLEAVE = CYGNUM_FLASH_BUS_WIDTH/CYGNUM_FLASH_WIDTH. the implementation below would be CYGNUM_FLASH_WIDTH = 16, CYGNUM_FLASH_DEVICES = 4 and CYGNUM_FLASH_BUS_WIDTH = 16. CYGNUM_FLASH_INTERLEAVE = CYGNUM_FLASH_BUS_WIDTH/CYGNUM_FLASH_WIDTH, include/flash_dev.h then defines FLASHWORD(k) as typedef cyg_uint16 flash_data_t.
> -----Original Message-----
> From: ecos-devel-owner@sources.redhat.com
> [mailto:ecos-devel-owner@sources.redhat.com]On Behalf Of
> Enric Bel Prim
> Sent: Friday, February 13, 2004 3:48 AM
> To: 'ecos-devel@sources.redhat.com'
> Subject: Strataflash mapping problem
>
>
> Hi.
> I'm porting the RedBoot to a custom board similar to IXDP425
> (with an Arm
> Xscale IXP425 processor).
> Everything is going well except one thing: the RedBoot only
> recognizes one
> memory flash device.
>
> My board has four Intel StrataFlash 28F128J3 devices (64
> MBytes in total),
> serially allocated (not interleaved), connected to the
> processor expansion
> bus 16 bits size (same as flash device bus size).
> I have selected the 'Intel StrataFlash memory support' package to
> implement the flash memory driver.
> I think the problem is that this driver only supports
> interleaved memory
> devices (I've seen this in the file strata.h: #define
> CYGNUM_FLASH_INTERLEAVE CYGNUM_FLASH_DEVICES ). Is it true??
> If I define CYGNUM_FLASH_DEVICES =(4) I get a compiler error
> at function
> 'flash_hwr_map_error' (I think it's about the definition of FLASHWORD
> macro).
> If I define CYGNUM_FLASH_DEVICES =(1) Redboot only
> recognizes one device.
>
> What can I do to acces the whole flash region?
> Thanks.
>
>
> ----------------------------------------- PLEASE NOTE
> -------------------------------------------
> This message, along with any attachments, may be confidential
> or legally privileged.
> It is intended only for the named person(s), who is/are the
> only authorized recipients.
> If this message has reached you in error, kindly destroy it
> without review and notify the sender immediately.
> Thank you for your help.
> DIMAT uses virus scanning software but excludes any liability
> for viruses contained in any attachment.
>
> ------------------------------------ ROGAMOS LEA ESTE TEXTO
> -------------------------------------
> Este mensaje y sus anexos pueden contener información
> confidencial y/o con derecho legal.
> Está dirigido únicamente a la/s persona/s o entidad/es
> resenadas como único destinatario autorizado.
> Si este mensaje le hubiera llegado por error, por favor
> elimínelo sin revisarlo ni reenviarlo y notifíquelo
> inmediatamente al remitente. Gracias por su colaboración.
> DIMAT utiliza software antivirus, pero no se hace responsable
> de los virus contenidos en los ficheros anexos.
>