This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Flash Driver Read/Write Alignment Question


I am puzzling over how the eCos flash drivers are supposed to work when
using 16-bit wide flash devices.  I'm using an ARM architecture (ARM7TDMI,
ARM940T), and the AMD AM29LV160 flash device connected in the 16-bit wide
mode (CYGNUM_FLASH_WIDTH=16).

Looking at the flash driver code, this defines the flash_data_t as a 16-bit
type.  This results in all accesses to the flash device to be performed as
16-bit reads/writes.

The flash driver defines some special addresses (FLASH_Setup_Addr1,
FLASH_Setup_Addr2, etc.).  At least one of these will be defined as an odd
address.  This will result in an unaligned transfer, causing a DATA ABORT
exception.  What am I missing here?

Jay


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]