[U-Boot-Users] Boot from Compact Flash

Ed Okerson eokerson at texasconnect.net
Tue Nov 18 20:34:02 CET 2003


  My BDI2000 is due to arrive today, I'm just waiting for FedEx to show
up.  In the meantime, I managed to get u-boot to run from RAM, so I wanted
to get a head start on booting from Compact Flash.  I have a 256MB CF card
in a PCMCIA adapter.  When I insert this in a Linux Laptop, it properly
reports it as a SanDisk 256MB CF card.  I managed to get u-boot to build
Little Endian, and in that mode when I insert the PCMCIA it reports it as:

Reset IDE: Bus 0: OK
  Device 0: Model: aSDnsi kDSFC-B52 6 Firm: dV g.812. Ser#:
1144901E09P30101
            Type: Removable Hard Disk
            Capacity: 117964.8 MB = 115.2 GB (-1476395001 x 512)

Obviousle the endian-ness is wrong.  I tracked to the code in
common/cmd_ide.c where there is a note:

/* We only need to swap data if we are running on a big endian cpu. */
/* But Au1x00 cpu:s already swaps data in big endian mode! */
#if defined(__LITTLE_ENDIAN) || defined(CONFIG_AU1X00)
#define input_swap_data(x,y,z) input_data(x,y,z)

Where is the bit getting set that tells the Au1500 to swap bytes?  If I
build u-boot as big endian, it properly recognizes the CF card.

I am using the BdAu1500 board.

Is there a discussion somewhere about the pros/cons of running in
big/little endian mode?

Ed Okerson





More information about the U-Boot mailing list