u-boot/board/dbau1x00
Wolfgang Denk 64134f0112 Fix linker scripts: add NOLOAD atribute to .bss/.sbss sections
With recent toolchain versions, some boards would not build because
or errors like this one (here for ocotea board when building with
ELDK 4.2 beta):
ppc_4xx-ld: section .bootpg [fffff000 -> fffff23b] overlaps section .bss [fffee900 -> fffff8ab]

For many boards, the .bss section is big enough that it wraps around
at the end of the address space (0xFFFFFFFF), so the problem will not
be visible unless you use a 64 bit tool chain for development. On
some boards however, changes to the code size (due to different
optimizations) we bail out with section overlaps like above.

The fix is to add the NOLOAD attribute to the .bss and .sbss
sections, telling the linker that .bss does not consume any space in
the image.

Signed-off-by: Wolfgang Denk <wd@denx.de>
2008-01-12 20:31:39 +01:00
..
config.mk * Patch by Steven Scholz, 10 Oct 2003 2003-10-09 20:09:04 +00:00
dbau1x00.c Fixed mips_io_port_base build errors. 2007-11-17 01:37:44 +01:00
flash.c * Patch by Steven Scholz, 10 Oct 2003 2003-10-09 20:09:04 +00:00
lowlevel_init.S * Fix dbau1x00 Board 2006-04-11 14:53:29 +02:00
Makefile Move "ar" flags to config.mk to allow for silent "make -s" 2006-10-09 01:02:05 +02:00
README Cleanup 2004-10-11 23:10:30 +00:00
u-boot.lds Fix linker scripts: add NOLOAD atribute to .bss/.sbss sections 2008-01-12 20:31:39 +01:00

By Thomas.Lange@corelatus.se 2004-Oct-05
----------------------------------------
DbAu1xx0 are development boards from AMD containing
an Alchemy AU1xx0 series cpu with mips32 core.
Existing cpu:s are Au1000, Au1100, Au1500 and Au1550

Limitations & comments
----------------------
Support was originally big endian only.
I have not tested, but several u-boot users report working
configurations in little endian mode.

I named the board dbau1x00, to allow
support for all three development boards
( dbau1000, dbau1100 and dbau1500 ).
Now there is a new board called dbau1550 also, which
should be supported RSN.

I only have a dbau1000, so my testing is limited
to this board.

The board has two different flash banks, that can
be selected via dip switch. This makes it possible
to test new bootloaders without thrashing the YAMON
boot loader delivered with board.

NOTE! When you switch between the two boot flashes, the
base addresses will be swapped.
Have this in mind when you compile u-boot. TEXT_BASE has
to match the address where u-boot is located when you
actually launch.

Ethernet only supported for mac0.

PCMCIA only supported for slot 0, only 3.3V.

PCMCIA IDE tested with Sandisk Compact Flash and
IBM microdrive.

###################################
########     NOTE!!!!!!   #########
###################################
If you partition a disk on another system (e.g. laptop),
all bytes will be swapped on 16bit level when using
PCMCIA and running cpu in big endian mode!!!!

This is probably due to an error in Au1000 chip.

Solution:

a) Boot via network and partition disk directly from
dbau1x00. The endian will then be correct.

b) Partition disk on "laptop" and fill it with all files
you need. Then write a simple program that endian swaps
whole disk,

Example:
Original "laptop" byte order:
B0 B1 B2 B3 B4 B5 B6 B7 B8 B9...

Dbau1000 byte order will then be:
B1 B0 B3 B2 B5 B4 B7 B6 B9 B8...