Skip to contentSkip to conversation

Support for AMD db1550 board

PATCH New Leif Lindholm 3 participants 3 messages Sep 23, 2004 – Jan 10, 2005

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Support for AMD db1550 board

Hi

This patch adds support for the AMD db1550 board to u-boot. It is implemented as a flavor of the au1x00 family.
Since I have not tested the pcmcia/ide stuff, this board has CONFIG_BOOTCOMMAND and CONFIG_COMMANDS ifdef:d to different values than the rest of the boards in the family.

Also, the memory setup differs a bit from earlier boards, due to this board being equipped with DDR SDRAM. This has lead to quite a large memsetup.S (heavily ifdef:d).
It also includes some code taken from AMD:s version of YAMON for this board (with their permission), for enabling cache and doing some preloads before reconfiguring the flash controller to correct values. This precaution may be a good idea on the other boards as well, but since I have not tested it on them, this part is ifdef:d CONFIG_DBAU1550.

I have included the "new" version of mkconfig, which now accepts a "$6" specifying endianess.
This software is only tested in little endian mode.

This patch also contains some minor changes allowing for setting CPU clock frequency in only one place (instead of three) and calculating the correct divisor for the uart based on this.

regards

	/
		Leif

-------------- next part --------------
A non-text attachment was scrubbed...
Name: u-boot-trunk-db1550.patch.gz
Type: application/x-gzip
Size: 5814 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20040923/18776d26/attachment.bin

#1 lore raw

PATCH 1/1 Support for AMD db1550 board

Dear Leif,

Quoted 3 lines · in message <1095939429.29740.77.camel@fortress> you wrote:

This patch adds support for the AMD db1550 board to u-boot. It is implemented as a flavor of the au1x00 family.

I tried to add it, but ran into a few problems so had to leave some parts out.

Quoted 2 lines

I have included the "new" version of mkconfig, which now accepts a "$6" specifying endianess.

This conflicts with current versions of the "mkconfig" command, please check and resubmit.

Quoted 1 line

This software is only tested in little endian mode.

Unfortunately, the file board/dbau1x00/u-boot-el.lds was missing in your patch. Please resubmit.

Finally, there were conflicts in cpu/mips/config.mk; please check and resubmit.

Please don't forget to include a CHANGELOG entry next time.

Best regards,

Wolfgang Denk

Signature · 4 lines
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The C-shell doesn't parse. It adhoculates.
    - Casper.Dik at Holland.Sun.COM in <[email protected]>
#2 lore raw

PATCH 1/1 Support for AMD db1550 board

Quoted 10 lines · Wolfgang Denk

Dear Leif,

Quoted 3 lines · in message <1095939429.29740.77.camel@fortress> you wrote:

This patch adds support for the AMD db1550 board to u-boot. It is implemented as a flavor of the au1x00 family.

I tried to add it, but ran into a few problems so had to leave some parts out.

I had been using Leif's patch as a basis for a board we are working on and ran into the same issues applying it to CVS. (Thanks for the patch Leif!) What's below is offered up as a suggestion.

Here's what I did to fix it:

1) in the master Makefile I added a line to put ENDIANESS into the master config.mk

2) I changed the u-boot.lds file so that it can be used to produce a little endian file when used by a linker in little endian mode (no need to add a new linker file as far as I know)

3) changed the mips config.mk to look at ENDIANESS to set the -EL or -EB flags.

4) Similar changes under examples to match this scheme.

Some patch segments are below to clarify what I mean.

Index: Makefile
===================================================================
RCS file: /cvsroot/u-boot/u-boot/Makefile,v
retrieving revision 1.165
diff -r1.165 Makefile
1489a1490,1497

Quoted 8 lines

## RightHand Technologies Eldorado
#########################################################################
eldorado_config : unconfig
@ >include/config.h
@./mkconfig $(@:_config=) mips mips eldorado @echo "ENDIANESS = little" >> include/config.mk

#########################################################################

Index: board/dbau1x00/u-boot.lds
===================================================================
RCS file: /cvsroot/u-boot/u-boot/board/dbau1x00/u-boot.lds,v retrieving revision 1.1
diff -r1.1 u-boot.lds
25c25
< OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-bigmips")
---

Quoted 1 line

OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips")

27c27
< OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradbigmips")
---

Quoted 1 line

OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips")

Index: cpu/mips/config.mk
===================================================================
RCS file: /cvsroot/u-boot/u-boot/cpu/mips/config.mk,v retrieving revision 1.3
diff -r1.3 config.mk
22a23,24

Quoted 2 lines

include $(TOPDIR)/include/config.mk

27c29
< echo "-mcpu=4kc -EB -mabicalls"; \
---

Quoted 1 line
      echo "-mcpu=4kc -mabicalls"; \

29c31
< echo "-march=4kc -mtune=4kc
-Wa,-mips_allow_branch_to_undefined -EB -mabicalls"; \
---

Quoted 1 line
      echo "-march=4kc -mtune=4kc -Wa,-mips_allow_branch_to_undefined -mabicalls"; \

31a34,39

Quoted 6 lines

ifeq ($(ENDIANESS), little)

      PLATFORM_CPPFLAGS += -EL
else
      PLATFORM_CPPFLAGS += -EB

endif

Index: examples/Makefile
===================================================================
RCS file: /cvsroot/u-boot/u-boot/examples/Makefile,v retrieving revision 1.23
diff -r1.23 Makefile
89c89,91
< ifeq ($(BIG_ENDIAN),y)
---

Quoted 3 lines

ifeq ($(ENDIANESS),little)
EX_LDFLAGS += -EL
else

Index: examples/mips.lds
===================================================================
RCS file: /cvsroot/u-boot/u-boot/examples/mips.lds,v retrieving revision 1.2
diff -r1.2 mips.lds
25c25
< OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-bigmips")
---

Quoted 1 line

OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips")

27c27
< OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradbigmips")
---

Quoted 1 line

OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips")

Signature · 2 lines
Hardware, n.:
        The parts of a computer system that can be kicked.