]> git.kernelconcepts.de Git - karo-tx-uboot.git/commitdiff
Merge git://www.denx.de/git/u-boot
authorNobuhiro Iwamatsu <iwamatsu@nigauri.org>
Sat, 22 Sep 2007 16:29:43 +0000 (01:29 +0900)
committerNobuhiro Iwamatsu <iwamatsu@nigauri.org>
Sat, 22 Sep 2007 16:29:43 +0000 (01:29 +0900)
Conflicts:

CREDITS

1  2 
CREDITS
Makefile
common/cmd_bootm.c
drivers/Makefile

diff --combined CREDITS
index e94372dd0c1a26a36d7df884c9bade99f8427489,0953e7b952ada10f4e438d71e37a708159023624..13150aec65b20b2cba2532a95da6669d8c189347
+++ b/CREDITS
@@@ -117,7 -117,7 +117,7 @@@ N: Arun Dharanka
  E: ADharankar@ATTBI.Com
  D: threads / scheduler example code
  
--N: Kári Davíðsson
++N: K?ri Dav??sson
  E: kd@flaga.is
  D: FLAGA DM Support
  
@@@ -143,10 -143,15 +143,15 @@@ E: info@elste.or
  D: Port for the ModNET50 Board, NET+50 CPU Port
  W: http://www.imms.de
  
--N: Daniel Engström
++N: Daniel Engstr?m
  E: daniel@omicron.se
  D: x86 port, Support for sc520_cdp board
  
+ N: Hayden Fraser
+ E: Hayden.Fraser@freescale.com
+ D: Support for ColdFire MCF5253
+ W: www.freescale.com
  N: Dr. Wolfgang Grandegger
  E: wg@denx.de
  D: Support for Interphase 4539 T1/E1/J1 PMC, PN62, CCM, SCM boards
@@@ -160,6 -165,11 +165,11 @@@ N: Thomas Friede
  E: ThomasF@hyperion-entertainment.com
  D: Support for AmigaOne
  
+ N: Niklaus Giger
+ E: niklaus.giger@netstal.com
+ D: Support for HCU(x) boards
+ W: www.netstal.com
  N: Paul Gortmaker
  E: paul.gortmaker@windriver.com
  D: Support for WRS SBC8347/8349 boards
@@@ -252,6 -262,10 +262,10 @@@ E: Raghu.Krishnaprasad@fci.co
  D: Support for Adder-II MPC852T evaluation board
  W: http://www.forcecomputers.com
  
+ N: Sergey Kubushyn
+ E: ksi@koi8.net
+ D: Support for various TI DaVinci based boards.
  N: Bernhard Kuhn
  E: bkuhn@metrowerks.com
  D Support for Coldfire CPU; Support for Motorola M5272C3 and M5282EVB boards
@@@ -274,6 -288,11 +288,11 @@@ E: team@leox.or
  D: Support for LEOX boards, DS164x RTC
  W: http://www.leox.org
  
+ N: TsiChung Liew
+ E: Tsi-Chung.Liew@freescale.com
+ D: Support for ColdFire MCF523x, MCF532x, MCF5445x
+ W: www.freescale.com
  N: Leif Lindholm
  E: leif.lindholm@i3micro.com
  D: Support for AMD dbau1550 board.
@@@ -288,6 -307,11 +307,11 @@@ N: Raymond L
  E: lo@routefree.com
  D: Support for DOS partitions
  
+ N: James MacAulay
+ E: james.macaulay@amirix.com
+ D: Suppport for Amirix AP1000
+ W: www.amirix.com
  N: Dan Malek
  E: dan@embeddedalley.com
  D: FADSROM, the grandfather of all of this
@@@ -310,7 -334,7 +334,7 @@@ N: Frank Morau
  E: frank.morauf@salzbrenner.com
  D: Support for Embedded Planet RPX Super Board
  
--N: David Müller
++N: David M?ller
  E: d.mueller@elsoft.ch
  D: Support for Samsung ARM920T SMDK2410 eval board
  
@@@ -363,8 -387,9 +387,9 @@@ D: Support for the Wind River sbc405, s
  W: http://www.windriver.com
  
  N: Stefan Roese
- E: stefan.roese@esd-electronics.com
- D: AMCC PPC401/403/405GP Support; Windows environment support
+ E: sr@denx.de
+ D: AMCC PPC4xx Support
+ W: http://www.denx.de
  
  N: Erwin Rol
  E: erwin@muffin.org
@@@ -398,6 -423,11 +423,11 @@@ N: Art Shipkowsk
  E: art@videon-central.com
  D: Support for NetSilicon NS7520
  
+ N: Michal Simek
+ E: monstr@monstr.eu
+ D: Support for Microblaze, ML401, XUPV2P board
+ W: www.monstr.eu
  N: Yasushi Shoji
  E: yashi@atmark-techno.com
  D: Support for Xilinx MicroBlaze, for Atmark Techno SUZAKU FPGA board
@@@ -411,6 -441,11 +441,11 @@@ E: andrea.scian@dave-tech.i
  D: Port to B2 board
  W: www.dave-tech.it
  
+ N: Timur Tabi
+ E: timur@freescale.com
+ D: Support for MPC8349E-mITX
+ W: www.freescale.com
  N: Rob Taylor
  E: robt@flyingpig.com
  D: Port to MBX860T and Sandpoint8240
@@@ -464,23 -499,3 +499,8 @@@ N: Alex Zuepk
  E: azu@sysgo.de
  D: Overall improvements on StrongARM, ARM720TDMI; Support for Tuxscreen; initial PCMCIA support for ARM
  W: www.elinos.com
- N: James MacAulay
- E: james.macaulay@amirix.com
- D: Suppport for Amirix AP1000
- W: www.amirix.com
- N: Timur Tabi
- E: timur@freescale.com
- D: Support for MPC8349E-mITX
- W: www.freescale.com
- N: Michal Simek
- E: monstr@monstr.eu
- D: Support for Microblaze, ML401, XUPV2P board
- W: www.monstr.eu
 +
- D: Support for SuperH, MS7750SE01 , MS7780SE03  board
- W: www.nigauri.org
 +N: Nobuhiro Iwamatsu
 +E: iwamatsu@nigauri.org
++D: Support for SuperH, MS7750SE01 and  MS7722SE01 boards.
++W: http://www.nigauri.org/~iwamatsu/
diff --combined Makefile
index 6001d1d18fb9f8d8b5b0c97facf2df7c8609d33b,8d500f534956c56958806b65180877e95c5d79ea..9ae11e25632be62e6215bc92f0e6298569452fb4
+++ b/Makefile
@@@ -22,9 -22,9 +22,9 @@@
  #
  
  VERSION = 1
- PATCHLEVEL = 2
+ PATCHLEVEL = 3
  SUBLEVEL = 0
- EXTRAVERSION =
+ EXTRAVERSION = -rc2
  U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
  VERSION_FILE = $(obj)include/version_autogenerated.h
  
@@@ -34,6 -34,7 +34,7 @@@ HOSTARCH := $(shell uname -m | 
            -e s/arm.*/arm/ \
            -e s/sa110/arm/ \
            -e s/powerpc/ppc/ \
+           -e s/ppc64/ppc/ \
            -e s/macppc/ppc/)
  
  HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \
@@@ -122,7 -123,7 +123,7 @@@ ifeq ($(HOSTARCH),$(ARCH)
  CROSS_COMPILE =
  else
  ifeq ($(ARCH),ppc)
- CROSS_COMPILE = powerpc-linux-
+ CROSS_COMPILE = ppc_8xx-
  endif
  ifeq ($(ARCH),arm)
  CROSS_COMPILE = arm-linux-
@@@ -151,9 -152,6 +152,9 @@@ endi
  ifeq ($(ARCH),avr32)
  CROSS_COMPILE = avr32-linux-
  endif
 +ifeq ($(ARCH),sh)
 +CROSS_COMPILE = sh4-linux-
 +endif
  endif
  endif
  
@@@ -176,9 -174,6 +177,6 @@@ endi
  ifeq ($(CPU),mpc85xx)
  OBJS += cpu/$(CPU)/resetvec.o
  endif
- ifeq ($(CPU),mpc86xx)
- OBJS += cpu/$(CPU)/resetvec.o
- endif
  ifeq ($(CPU),bf533)
  OBJS += cpu/$(CPU)/start1.o   cpu/$(CPU)/interrupt.o  cpu/$(CPU)/cache.o
  OBJS += cpu/$(CPU)/flush.o    cpu/$(CPU)/init_sdram.o
@@@ -195,6 -190,8 +193,8 @@@ endi
  OBJS := $(addprefix $(obj),$(OBJS))
  
  LIBS  = lib_generic/libgeneric.a
+ LIBS += $(shell if [ -f board/$(VENDOR)/common/Makefile ]; then echo \
+       "board/$(VENDOR)/common/lib$(VENDOR).a"; fi)
  LIBS += board/$(BOARDDIR)/lib$(BOARD).a
  LIBS += cpu/$(CPU)/lib$(CPU).a
  ifdef SOC
@@@ -211,15 -208,23 +211,23 @@@ LIBS += disk/libdisk.
  LIBS += rtc/librtc.a
  LIBS += dtt/libdtt.a
  LIBS += drivers/libdrivers.a
+ LIBS += drivers/bios_emulator/libatibiosemu.a
  LIBS += drivers/nand/libnand.a
  LIBS += drivers/nand_legacy/libnand_legacy.a
+ LIBS += drivers/net/libnet.a
  ifeq ($(CPU),mpc83xx)
  LIBS += drivers/qe/qe.a
  endif
+ ifeq ($(CPU),mpc85xx)
+ LIBS += drivers/qe/qe.a
+ endif
+ LIBS += drivers/serial/libserial.a
  LIBS += drivers/sk98lin/libsk98lin.a
  LIBS += post/libpost.a post/drivers/libpostdrivers.a
  LIBS += $(shell if [ -d post/lib_$(ARCH) ]; then echo \
        "post/lib_$(ARCH)/libpost$(ARCH).a"; fi)
+ LIBS += $(shell if [ -d post/lib_$(ARCH)/fpu ]; then echo \
+       "post/lib_$(ARCH)/fpu/libpost$(ARCH)fpu.a"; fi)
  LIBS += $(shell if [ -d post/cpu/$(CPU) ]; then echo \
        "post/cpu/$(CPU)/libpost$(CPU).a"; fi)
  LIBS += $(shell if [ -d post/board/$(BOARDDIR) ]; then echo \
@@@ -251,7 -256,7 +259,7 @@@ __LIBS := $(subst $(obj),,$(LIBS)
  #########################################################################
  #########################################################################
  
- ALL = $(obj)u-boot.srec $(obj)u-boot.bin $(obj)System.map $(U_BOOT_NAND)
+ ALL += $(obj)u-boot.srec $(obj)u-boot.bin $(obj)System.map $(U_BOOT_NAND)
  
  all:          $(ALL)
  
@@@ -271,6 -276,9 +279,9 @@@ $(obj)u-boot.img:  $(obj)u-boot.bi
                        sed -e 's/"[     ]*$$/ for $(BOARD) board"/') \
                -d $< $@
  
+ $(obj)u-boot.sha1:    $(obj)u-boot.bin
+               $(obj)tools/ubsha1 $(obj)u-boot.bin
  $(obj)u-boot.dis:     $(obj)u-boot
                $(OBJDUMP) -d $< > $@
  
@@@ -311,7 -319,7 +322,7 @@@ updater
  env:
                $(MAKE) -C tools/env all || exit 1
  
- depend dep:
+ depend dep:   version
                for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir _depend ; done
  
  tags ctags:
@@@ -430,7 -438,7 +441,7 @@@ jupiter_config:         unconfi
        @$(MKCONFIG) jupiter ppc mpc5xxx jupiter
  
  v38b_config: unconfig
-       @./mkconfig -a v38b ppc mpc5xxx v38b
+       @$(MKCONFIG) -a v38b ppc mpc5xxx v38b
  
  inka4x0_config:       unconfig
        @$(MKCONFIG) inka4x0 ppc mpc5xxx inka4x0
@@@ -533,6 -541,9 +544,9 @@@ PM520_ROMBOOT_DDR_config:  unconfi
  smmaco4_config: unconfig
        @$(MKCONFIG) -a smmaco4 ppc mpc5xxx tqm5200
  
+ cm5200_config:        unconfig
+       @./mkconfig -a cm5200 ppc mpc5xxx cm5200
  spieval_config:       unconfig
        @$(MKCONFIG) -a spieval ppc mpc5xxx tqm5200
  
@@@ -634,6 -645,13 +648,13 @@@ motionpro_config:         unconfi
        @$(MKCONFIG) motionpro ppc mpc5xxx motionpro
  
  
+ #########################################################################
+ ## MPC512x Systems
+ #########################################################################
+ ads5121_config: unconfig
+       @$(MKCONFIG) ads5121 ppc mpc512x ads5121
  #########################################################################
  ## MPC8xx Systems
  #########################################################################
@@@ -647,6 -665,9 +668,9 @@@ AdderII_config  
        @echo "#define CONFIG_MPC852T" > $(obj)include/config.h)
        @$(MKCONFIG) -a Adder ppc mpc8xx adder
  
+ AdderUSB_config:      unconfig
+       @./mkconfig -a AdderUSB ppc mpc8xx adder
  ADS860_config     \
  FADS823_config    \
  FADS850SAR_config \
@@@ -1020,11 -1041,19 +1044,19 @@@ xtract_4xx = $(subst _25,,$(subst _33,,
  acadia_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx acadia amcc
  
+ acadia_nand_config:   unconfig
+       @mkdir -p $(obj)include $(obj)board/amcc/acadia
+       @mkdir -p $(obj)nand_spl/board/amcc/acadia
+       @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
+       @$(MKCONFIG) -n $@ -a acadia ppc ppc4xx acadia amcc
+       @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/acadia/config.tmp
+       @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
  ADCIOP_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx adciop esd
  
  alpr_config:  unconfig
-       @./mkconfig $(@:_config=) ppc ppc4xx alpr prodrive
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx alpr prodrive
  
  AP1000_config:unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx ap1000 amirix
@@@ -1041,6 -1070,14 +1073,14 @@@ ASH405_config:        unconfi
  bamboo_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx bamboo amcc
  
+ bamboo_nand_config:   unconfig
+       @mkdir -p $(obj)include $(obj)board/amcc/bamboo
+       @mkdir -p $(obj)nand_spl/board/amcc/bamboo
+       @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
+       @$(MKCONFIG) -n $@ -a bamboo ppc ppc4xx bamboo amcc
+       @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/bamboo/config.tmp
+       @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
  bubinga_config:       unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx bubinga amcc
  
@@@ -1109,6 -1146,12 +1149,12 @@@ EXBITGEN_config:      unconfi
  G2000_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx g2000
  
+ hcu4_config:  unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx hcu4 netstal
+ hcu5_config:  unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx hcu5 netstal
  HH405_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx hh405 esd
  
@@@ -1127,6 -1170,9 +1173,9 @@@ katmai_config:  unconfi
  luan_config:  unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx luan amcc
  
+ lwmon5_config:        unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx lwmon5
  METROBOX_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx metrobox sandburst
  
@@@ -1213,9 -1259,8 +1262,8 @@@ rainier_config: unconfi
  
  sequoia_nand_config \
  rainier_nand_config: unconfig
-       @mkdir -p $(obj)include
-       @mkdir -p $(obj)nand_spl
-       @mkdir -p $(obj)board/amcc/sequoia
+       @mkdir -p $(obj)include $(obj)board/amcc/sequoia
+       @mkdir -p $(obj)nand_spl/board/amcc/sequoia
        @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
        @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \
                tr '[:lower:]' '[:upper:]')" >> $(obj)include/config.h
        @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
  
  sc3_config:unconfig
-       @./mkconfig $(@:_config=) ppc ppc4xx sc3
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx sc3
+ taihu_config: unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx taihu amcc
  
  taishan_config:       unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx taishan amcc
@@@ -1263,6 -1311,9 +1314,9 @@@ yellowstone_config: unconfi
  yucca_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx yucca amcc
  
+ zeus_config:  unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx zeus
  #########################################################################
  ## MPC8220 Systems
  #########################################################################
@@@ -1390,7 -1441,7 +1444,7 @@@ ep8260_config:  unconfi
        @$(MKCONFIG) $(@:_config=) ppc mpc8260 ep8260
  
  ep82xxm_config:       unconfig
-       @./mkconfig $(@:_config=) ppc mpc8260 ep82xxm
+       @$(MKCONFIG) $(@:_config=) ppc mpc8260 ep82xxm
  
  gw8260_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc8260 gw8260
@@@ -1590,6 -1641,31 +1644,31 @@@ ZPC1900_config: unconfi
  ## Coldfire
  #########################################################################
  
+ M5235EVB_config \
+ M5235EVB_Flash16_config \
+ M5235EVB_Flash32_config:      unconfig
+       @case "$@" in \
+       M5235EVB_config)                FLASH=16;; \
+       M5235EVB_Flash16_config)        FLASH=16;; \
+       M5235EVB_Flash32_config)        FLASH=32;; \
+       esac; \
+       >include/config.h ; \
+       if [ "$${FLASH}" != "16" ] ; then \
+               echo "#define NORFLASH_PS32BIT  1" >> include/config.h ; \
+               echo "TEXT_BASE = 0xFFC00000" > $(obj)board/freescale/m5235evb/config.tmp ; \
+               cp $(obj)board/freescale/m5235evb/u-boot.32 $(obj)board/freescale/m5235evb/u-boot.lds ; \
+       else \
+               echo "TEXT_BASE = 0xFFE00000" > $(obj)board/freescale/m5235evb/config.tmp ; \
+               cp $(obj)board/freescale/m5235evb/u-boot.16 $(obj)board/freescale/m5235evb/u-boot.lds ; \
+       fi
+       @$(MKCONFIG) -a M5235EVB m68k mcf523x m5235evb freescale
+ M5249EVB_config :             unconfig
+       @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5249evb freescale
+ M5253EVBE_config :            unconfig
+       @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5253evbe freescale
  cobra5272_config :            unconfig
        @$(MKCONFIG) $(@:_config=) m68k mcf52x2 cobra5272
  
@@@ -1625,74 -1701,133 +1704,133 @@@ TASREG_config :            unconfi
  r5200_config :                unconfig
        @$(MKCONFIG) $(@:_config=) m68k mcf52x2 r5200
  
+ M5329AFEE_config \
+ M5329BFEE_config :    unconfig
+       @case "$@" in \
+       M5329AFEE_config)       NAND=0;; \
+       M5329BFEE_config)       NAND=16;; \
+       esac; \
+       >include/config.h ; \
+       if [ "$${NAND}" != "0" ] ; then \
+               echo "#define NANDFLASH_SIZE    $${NAND}" > $(obj)include/config.h ; \
+       fi
+       @$(MKCONFIG) -a M5329EVB m68k mcf532x m5329evb freescale
+ M54455EVB_config \
+ M54455EVB_atmel_config \
+ M54455EVB_intel_config \
+ M54455EVB_a33_config \
+ M54455EVB_a66_config \
+ M54455EVB_i33_config \
+ M54455EVB_i66_config :        unconfig
+       @case "$@" in \
+       M54455EVB_config)               FLASH=ATMEL; FREQ=33333333;; \
+       M54455EVB_atmel_config)         FLASH=ATMEL; FREQ=33333333;; \
+       M54455EVB_intel_config)         FLASH=INTEL; FREQ=33333333;; \
+       M54455EVB_a33_config)           FLASH=ATMEL; FREQ=33333333;; \
+       M54455EVB_a66_config)           FLASH=ATMEL; FREQ=66666666;; \
+       M54455EVB_i33_config)           FLASH=INTEL; FREQ=33333333;; \
+       M54455EVB_i66_config)           FLASH=INTEL; FREQ=66666666;; \
+       esac; \
+       >include/config.h ; \
+       if [ "$${FLASH}" == "INTEL" ] ; then \
+               echo "#undef CFG_ATMEL_BOOT" >> $(obj)include/config.h ; \
+               echo "... with INTEL boot..." ; \
+       else \
+               echo "#define CFG_ATMEL_BOOT"   >> $(obj)include/config.h ; \
+               echo "... with ATMEL boot..." ; \
+       fi; \
+       echo "#define CFG_INPUT_CLKSRC $${FREQ}" >> $(obj)include/config.h ; \
+       echo "... with $${FREQ}Hz input clock"
+       @$(MKCONFIG) -a M54455EVB m68k mcf5445x m54455evb freescale
  #########################################################################
  ## MPC83xx Systems
  #########################################################################
  
+ MPC8313ERDB_33_config \
+ MPC8313ERDB_66_config: unconfig
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
+       if [ "$(findstring _33_,$@)" ] ; then \
+               echo -n "...33M ..." ; \
+               echo "#define CFG_33MHZ" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _66_,$@)" ] ; then \
+               echo -n "...66M..." ; \
+               echo "#define CFG_66MHZ" >>$(obj)include/config.h ; \
+       fi ;
+       @$(MKCONFIG) -a MPC8313ERDB ppc mpc83xx mpc8313erdb freescale
+ MPC8323ERDB_config:   unconfig
+       @$(MKCONFIG) -a MPC8323ERDB ppc mpc83xx mpc8323erdb freescale
  MPC832XEMDS_config \
  MPC832XEMDS_HOST_33_config \
  MPC832XEMDS_HOST_66_config \
  MPC832XEMDS_SLAVE_config:     unconfig
-       @echo "" >include/config.h ; \
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
        if [ "$(findstring _HOST_,$@)" ] ; then \
                echo -n "... PCI HOST " ; \
-               echo "#define CONFIG_PCI" >>include/config.h ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _SLAVE_,$@)" ] ; then \
                echo "...PCI SLAVE 66M"  ; \
-               echo "#define CONFIG_PCI" >>include/config.h ; \
-               echo "#define CONFIG_PCISLAVE" >>include/config.h ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PCISLAVE" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _33_,$@)" ] ; then \
                echo -n "...33M ..." ; \
-               echo "#define PCI_33M" >>include/config.h ; \
+               echo "#define PCI_33M" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _66_,$@)" ] ; then \
                echo -n "...66M..." ; \
-               echo "#define PCI_66M" >>include/config.h ; \
+               echo "#define PCI_66M" >>$(obj)include/config.h ; \
        fi ;
-       @$(MKCONFIG) -a MPC832XEMDS ppc mpc83xx mpc832xemds
+       @$(MKCONFIG) -a MPC832XEMDS ppc mpc83xx mpc832xemds freescale
  
  MPC8349EMDS_config:   unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc83xx mpc8349emds
+       @$(MKCONFIG) $(@:_config=) ppc mpc83xx mpc8349emds freescale
  
  MPC8349ITX_config \
  MPC8349ITX_LOWBOOT_config \
  MPC8349ITXGP_config:  unconfig
        @mkdir -p $(obj)include
-       @mkdir -p $(obj)board/mpc8349itx
+       @mkdir -p $(obj)board/freescale/mpc8349itx
        @echo "#define CONFIG_$(subst _LOWBOOT,,$(@:_config=))" >> $(obj)include/config.h
        @if [ "$(findstring GP,$@)" ] ; then \
-               echo "TEXT_BASE = 0xFE000000" >$(obj)board/mpc8349itx/config.tmp ; \
+               echo "TEXT_BASE = 0xFE000000" >$(obj)board/freescale/mpc8349itx/config.tmp ; \
        fi
        @if [ "$(findstring LOWBOOT,$@)" ] ; then \
-               echo "TEXT_BASE = 0xFE000000" >$(obj)board/mpc8349itx/config.tmp ; \
+               echo "TEXT_BASE = 0xFE000000" >$(obj)board/freescale/mpc8349itx/config.tmp ; \
        fi
-       @$(MKCONFIG) -a -n $(@:_config=) MPC8349ITX ppc mpc83xx mpc8349itx
+       @$(MKCONFIG) -a -n $(@:_config=) MPC8349ITX ppc mpc83xx mpc8349itx freescale
  
  MPC8360EMDS_config \
  MPC8360EMDS_HOST_33_config \
  MPC8360EMDS_HOST_66_config \
  MPC8360EMDS_SLAVE_config:     unconfig
-       @echo "" >include/config.h ; \
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
        if [ "$(findstring _HOST_,$@)" ] ; then \
                echo -n "... PCI HOST " ; \
-               echo "#define CONFIG_PCI" >>include/config.h ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _SLAVE_,$@)" ] ; then \
                echo "...PCI SLAVE 66M"  ; \
-               echo "#define CONFIG_PCI" >>include/config.h ; \
-               echo "#define CONFIG_PCISLAVE" >>include/config.h ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PCISLAVE" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _33_,$@)" ] ; then \
                echo -n "...33M ..." ; \
-               echo "#define PCI_33M" >>include/config.h ; \
+               echo "#define PCI_33M" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _66_,$@)" ] ; then \
                echo -n "...66M..." ; \
-               echo "#define PCI_66M" >>include/config.h ; \
+               echo "#define PCI_66M" >>$(obj)include/config.h ; \
        fi ;
-       @$(MKCONFIG) -a MPC8360EMDS ppc mpc83xx mpc8360emds
+       @$(MKCONFIG) -a MPC8360EMDS ppc mpc83xx mpc8360emds freescale
  
  sbc8349_config:               unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc83xx sbc8349
@@@ -1716,10 -1851,10 +1854,10 @@@ MPC8540EVAL_66_slave_config:      uncon
        @mkdir -p $(obj)include
        @echo "" >$(obj)include/config.h ; \
        if [ "$(findstring _33_,$@)" ] ; then \
-               echo -n "... 33 MHz PCI" ; \
+               echo "... 33 MHz PCI" ; \
        else \
                echo "#define CONFIG_SYSCLK_66M" >>$(obj)include/config.h ; \
-               echo -n "... 66 MHz PCI" ; \
+               echo "... 66 MHz PCI" ; \
        fi ; \
        if [ "$(findstring _slave_,$@)" ] ; then \
                echo "#define CONFIG_PCI_SLAVE" >>$(obj)include/config.h ; \
  MPC8560ADS_config:    unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8560ads
  
+ MPC8541CDS_legacy_config \
  MPC8541CDS_config:    unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8541cds cds
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
+       if [ "$(findstring _legacy_,$@)" ] ; then \
+               echo "#define CONFIG_LEGACY" >>$(obj)include/config.h ; \
+               echo "... legacy" ; \
+       fi
+       @$(MKCONFIG) -a MPC8541CDS ppc mpc85xx mpc8541cds cds
  
  MPC8544DS_config:     unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8544ds freescale
  
+ MPC8548CDS_legacy_config \
  MPC8548CDS_config:    unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8548cds cds
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
+       if [ "$(findstring _legacy_,$@)" ] ; then \
+               echo "#define CONFIG_LEGACY" >>$(obj)include/config.h ; \
+               echo "... legacy" ; \
+       fi
+       @$(MKCONFIG) -a MPC8548CDS ppc mpc85xx mpc8548cds cds
  
+ MPC8555CDS_legacy_config \
  MPC8555CDS_config:    unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8555cds cds
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
+       if [ "$(findstring _legacy_,$@)" ] ; then \
+               echo "#define CONFIG_LEGACY" >>$(obj)include/config.h ; \
+               echo "... legacy" ; \
+       fi
+       @$(MKCONFIG) -a MPC8555CDS ppc mpc85xx mpc8555cds cds
  
  MPC8568MDS_config:    unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8568mds
@@@ -1782,8 -1938,16 +1941,16 @@@ sbc8560_66_config:      unconfi
  stxgp3_config:                unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx stxgp3
  
- stxssa_config:                unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc85xx stxssa
+ stxssa_config         \
+ stxssa_4M_config:     unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _4M_,$@)" ] ; then \
+               echo "#define CONFIG_STXSSA_4M" >>$(obj)include/config.h ; \
+               echo "... with 4 MiB flash memory" ; \
+       else \
+               >$(obj)include/config.h ; \
+       fi
+       @$(MKCONFIG) -a stxssa ppc mpc85xx stxssa
  
  TQM8540_config                \
  TQM8541_config                \
@@@ -1797,7 -1961,7 +1964,7 @@@ TQM8560_config:         unconfi
        echo "#define CONFIG_TQM$${CTYPE}">>$(obj)include/config.h; \
        echo "#define CONFIG_HOSTNAME tqm$${CTYPE}">>$(obj)include/config.h; \
        echo "#define CONFIG_BOARDNAME \"TQM$${CTYPE}\"">>$(obj)include/config.h; \
-       echo "#define CFG_BOOTFILE \"bootfile=/tftpboot/tqm$${CTYPE}/uImage\0\"">>$(obj)include/config.h
+       echo "#define CFG_BOOTFILE_PATH \"/tftpboot/tqm$${CTYPE}/uImage\"">>$(obj)include/config.h
        @$(MKCONFIG) -a TQM85xx ppc mpc85xx tqm85xx
  
  #########################################################################
  #########################################################################
  
  MPC8641HPCN_config:    unconfig
-       @./mkconfig $(@:_config=) ppc mpc86xx mpc8641hpcn
+       @$(MKCONFIG) $(@:_config=) ppc mpc86xx mpc8641hpcn freescale
  
+ sbc8641d_config:      unconfig
+       @./mkconfig $(@:_config=) ppc mpc86xx sbc8641d
  
  #########################################################################
  ## 74xx/7xx Systems
@@@ -1962,6 -2128,15 +2131,15 @@@ omap1510inn_config :  unconfi
  omap5912osk_config :  unconfig
        @$(MKCONFIG) $(@:_config=) arm arm926ejs omap5912osk NULL omap
  
+ davinci_dvevm_config :        unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm926ejs dv-evm davinci davinci
+ davinci_schmoogie_config :    unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm926ejs schmoogie davinci davinci
+ davinci_sonata_config :       unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm926ejs sonata davinci davinci
  omap1610inn_config \
  omap1610inn_cs0boot_config \
  omap1610inn_cs3boot_config \
@@@ -1972,13 -2147,13 +2150,13 @@@ omap1610h2_cs3boot_config 
  omap1610h2_cs_autoboot_config:        unconfig
        @mkdir -p $(obj)include
        @if [ "$(findstring _cs0boot_, $@)" ] ; then \
-               echo "#define CONFIG_CS0_BOOT" >> .$(obj)/include/config.h ; \
+               echo "#define CONFIG_CS0_BOOT" >> .$(obj)include/config.h ; \
                echo "... configured for CS0 boot"; \
        elif [ "$(findstring _cs_autoboot_, $@)" ] ; then \
-               echo "#define CONFIG_CS_AUTOBOOT" >> $(obj)./include/config.h ; \
+               echo "#define CONFIG_CS_AUTOBOOT" >> $(obj)include/config.h ; \
                echo "... configured for CS_AUTO boot"; \
        else \
-               echo "#define CONFIG_CS3_BOOT" >> $(obj)./include/config.h ; \
+               echo "#define CONFIG_CS3_BOOT" >> $(obj)include/config.h ; \
                echo "... configured for CS3 boot"; \
        fi;
        @$(MKCONFIG) -a $(call xtract_omap1610xxx,$@) arm arm926ejs omap1610inn NULL omap
@@@ -2103,7 -2278,10 +2281,10 @@@ evb4510_config :      unconfi
        @$(MKCONFIG) $(@:_config=) arm arm720t evb4510
  
  lpc2292sodimm_config: unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm720t lpc2292sodimm
+       @$(MKCONFIG) $(@:_config=) arm arm720t lpc2292sodimm NULL lpc2292
+ SMN42_config  :       unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm720t SMN42 siemens lpc2292
  
  #########################################################################
  ## XScale Systems
@@@ -2144,17 -2322,21 +2325,21 @@@ logodl_config        :       unconfi
  
  pdnb3_config \
  scpu_config:    unconfig
+       @mkdir -p $(obj)include
        @if [ "$(findstring scpu_,$@)" ] ; then \
-               echo "#define CONFIG_SCPU"      >>include/config.h ; \
+               echo "#define CONFIG_SCPU"      >>$(obj)include/config.h ; \
                echo "... on SCPU board variant" ; \
        else \
-               >include/config.h ; \
+               >$(obj)include/config.h ; \
        fi
        @$(MKCONFIG) -a pdnb3 arm ixp pdnb3 prodrive
  
  pxa255_idp_config:    unconfig
        @$(MKCONFIG) $(@:_config=) arm pxa pxa255_idp
  
+ trizepsiv_config      :       unconfig
+       @$(MKCONFIG) $(@:_config=) arm pxa trizepsiv
  wepep250_config       :       unconfig
        @$(MKCONFIG) $(@:_config=) arm pxa wepep250
  
@@@ -2370,14 -2552,16 +2555,16 @@@ suzaku_config:       unconfi
        @$(MKCONFIG) -a $(@:_config=) microblaze microblaze suzaku AtmarkTechno
  
  ml401_config: unconfig
-       @ >include/config.h
-       @echo "#define CONFIG_ML401 1" >> include/config.h
-       @./mkconfig -a $(@:_config=) microblaze microblaze ml401 xilinx
+       @mkdir -p $(obj)include
+       @ >$(obj)include/config.h
+       @echo "#define CONFIG_ML401 1" >> $(obj)include/config.h
+       @$(MKCONFIG) -a $(@:_config=) microblaze microblaze ml401 xilinx
  
  xupv2p_config:        unconfig
-       @ >include/config.h
-       @echo "#define CONFIG_XUPV2P 1" >> include/config.h
-       @./mkconfig -a $(@:_config=) microblaze microblaze xupv2p xilinx
+       @mkdir -p $(obj)include
+       @ >$(obj)include/config.h
+       @echo "#define CONFIG_XUPV2P 1" >> $(obj)include/config.h
+       @$(MKCONFIG) -a $(@:_config=) microblaze microblaze xupv2p xilinx
  
  #########################################################################
  ## Blackfin
@@@ -2402,24 -2586,12 +2589,24 @@@ bf561-ezkit_config:  unconfi
  #########################################################################
  
  atstk1002_config      :       unconfig
-       @./mkconfig $(@:_config=) avr32 at32ap atstk1000 atmel at32ap7000
+       @$(MKCONFIG) $(@:_config=) avr32 at32ap atstk1000 atmel at32ap7000
  
  #########################################################################
  #########################################################################
  #########################################################################
  
 +#########################################################################
 +## sh4 (Renesas SuperH)
 +#########################################################################
 +ms7750se_config: unconfig
 +      @ >include/config.h
 +      @echo "#define CONFIG_MS7750SE 1" >> include/config.h
 +      @./mkconfig -a $(@:_config=) sh sh4 ms7750se
 +
 +#########################################################################
 +#########################################################################
 +#########################################################################
 +
  clean:
        find $(OBJTREE) -type f \
                \( -name 'core' -o -name '*.bak' -o -name '*~' \
              $(obj)examples/smc91111_eeprom $(obj)examples/interrupt \
              $(obj)examples/test_burst
        rm -f $(obj)tools/img2srec $(obj)tools/mkimage $(obj)tools/envcrc \
-               $(obj)tools/gen_eth_addr
+               $(obj)tools/gen_eth_addr $(obj)tools/ubsha1
        rm -f $(obj)tools/mpc86x_clk $(obj)tools/ncb
        rm -f $(obj)tools/easylogo/easylogo $(obj)tools/bmp_logo
        rm -f $(obj)tools/gdb/astest $(obj)tools/gdb/gdbcont $(obj)tools/gdb/gdbsend
@@@ -2454,7 -2626,7 +2641,7 @@@ clobber:        clea
        rm -f $(OBJS) $(obj)*.bak $(obj)ctags $(obj)etags $(obj)TAGS $(obj)include/version_autogenerated.h
        rm -fr $(obj)*.*~
        rm -f $(obj)u-boot $(obj)u-boot.map $(obj)u-boot.hex $(ALL)
-       rm -f $(obj)tools/crc32.c $(obj)tools/environment.c $(obj)tools/env/crc32.c
+       rm -f $(obj)tools/crc32.c $(obj)tools/environment.c $(obj)tools/env/crc32.c $(obj)tools/sha1.c
        rm -f $(obj)tools/inca-swap-bytes $(obj)cpu/mpc824x/bedbug_603e.c
        rm -f $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm
        [ ! -d $(OBJTREE)/nand_spl ] || find $(obj)nand_spl -lname "*" -print | xargs rm -f
diff --combined common/cmd_bootm.c
index 8af0589d9a12bc0b92e699bdf9fbb66c59ed9fb6,6ebedfbc8333d38d400d993ffc1675a236a34343..2fa906bae6010efde3c082a5dba3345ef5e0ea71
  
  DECLARE_GLOBAL_DATA_PTR;
  
 /*cmd_boot.c*/
 extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+ /*cmd_boot.c*/
+ extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
  
- #if (CONFIG_COMMANDS & CFG_CMD_DATE) || defined(CONFIG_TIMESTAMP)
+ #if defined(CONFIG_TIMESTAMP) || defined(CONFIG_CMD_DATE)
  #include <rtc.h>
  #endif
  
  #include <hush.h>
  #endif
  
- #ifdef CONFIG_SHOW_BOOT_PROGRESS
- # include <status_led.h>
- # define SHOW_BOOT_PROGRESS(arg)      show_boot_progress(arg)
- #else
- # define SHOW_BOOT_PROGRESS(arg)
- #endif
  #ifdef CFG_INIT_RAM_LOCK
  #include <asm/cache.h>
  #endif
@@@ -89,11 -82,11 +82,11 @@@ int  gunzip (void *, int, unsigned cha
  static void *zalloc(void *, unsigned, unsigned);
  static void zfree(void *, void *, unsigned);
  
- #if (CONFIG_COMMANDS & CFG_CMD_IMI)
+ #if defined(CONFIG_CMD_IMI)
  static int image_info (unsigned long addr);
  #endif
  
- #if (CONFIG_COMMANDS & CFG_CMD_IMLS)
+ #if defined(CONFIG_CMD_IMLS)
  #include <flash.h>
  extern flash_info_t flash_info[]; /* info for FLASH chips */
  static int do_imls (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
@@@ -133,12 -126,12 +126,12 @@@ static void fixup_silent_linux (void)
  #endif
  static boot_os_Fcn do_bootm_netbsd;
  static boot_os_Fcn do_bootm_rtems;
- #if (CONFIG_COMMANDS & CFG_CMD_ELF)
+ #if defined(CONFIG_CMD_ELF)
  static boot_os_Fcn do_bootm_vxworks;
  static boot_os_Fcn do_bootm_qnxelf;
  int do_bootvx ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[] );
  int do_bootelf (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[] );
- #endif /* CFG_CMD_ELF */
+ #endif
  #if defined(CONFIG_ARTOS) && defined(CONFIG_PPC)
  static boot_os_Fcn do_bootm_artos;
  #endif
@@@ -176,7 -169,7 +169,7 @@@ int do_bootm (cmd_tbl_t *cmdtp, int fla
                addr = simple_strtoul(argv[1], NULL, 16);
        }
  
-       SHOW_BOOT_PROGRESS (1);
+       show_boot_progress (1);
        printf ("## Booting image at %08lx ...\n", addr);
  
        /* Copy header so we can blank CRC field for re-calculation */
  #endif        /* __I386__ */
            {
                puts ("Bad Magic Number\n");
-               SHOW_BOOT_PROGRESS (-1);
+               show_boot_progress (-1);
                return 1;
            }
        }
-       SHOW_BOOT_PROGRESS (2);
+       show_boot_progress (2);
  
        data = (ulong)&header;
        len  = sizeof(image_header_t);
  
        if (crc32 (0, (uchar *)data, len) != checksum) {
                puts ("Bad Header Checksum\n");
-               SHOW_BOOT_PROGRESS (-2);
+               show_boot_progress (-2);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (3);
+       show_boot_progress (3);
  
  #ifdef CONFIG_HAS_DATAFLASH
        if (addr_dataflash(addr)){
                puts ("   Verifying Checksum ... ");
                if (crc32 (0, (uchar *)data, len) != ntohl(hdr->ih_dcrc)) {
                        printf ("Bad Data CRC\n");
-                       SHOW_BOOT_PROGRESS (-3);
+                       show_boot_progress (-3);
                        return 1;
                }
                puts ("OK\n");
        }
-       SHOW_BOOT_PROGRESS (4);
+       show_boot_progress (4);
  
        len_ptr = (ulong *)data;
  
        if (hdr->ih_arch != IH_CPU_NIOS2)
  #elif defined(__PPC__)
        if (hdr->ih_arch != IH_CPU_PPC)
 +#elif defined(__sh__)
 +      if (hdr->ih_arch != IH_CPU_SH)
  #else
  # error Unknown CPU type
  #endif
        {
                printf ("Unsupported Architecture 0x%x\n", hdr->ih_arch);
-               SHOW_BOOT_PROGRESS (-4);
+               show_boot_progress (-4);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (5);
+       show_boot_progress (5);
  
        switch (hdr->ih_type) {
        case IH_TYPE_STANDALONE:
                        data += 4;
                break;
        default: printf ("Wrong Image Type for %s command\n", cmdtp->name);
-               SHOW_BOOT_PROGRESS (-5);
+               show_boot_progress (-5);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (6);
+       show_boot_progress (6);
  
        /*
         * We have reached the point of no return: we are going to
                if (gunzip ((void *)ntohl(hdr->ih_load), unc_len,
                            (uchar *)data, &len) != 0) {
                        puts ("GUNZIP ERROR - must RESET board to recover\n");
-                       SHOW_BOOT_PROGRESS (-6);
+                       show_boot_progress (-6);
                        do_reset (cmdtp, flag, argc, argv);
                }
                break;
                                                CFG_MALLOC_LEN < (4096 * 1024), 0);
                if (i != BZ_OK) {
                        printf ("BUNZIP2 ERROR %d - must RESET board to recover\n", i);
-                       SHOW_BOOT_PROGRESS (-6);
-                       udelay(100000);
+                       show_boot_progress (-6);
                        do_reset (cmdtp, flag, argc, argv);
                }
                break;
                if (iflag)
                        enable_interrupts();
                printf ("Unimplemented compression type %d\n", hdr->ih_comp);
-               SHOW_BOOT_PROGRESS (-7);
+               show_boot_progress (-7);
                return 1;
        }
        puts ("OK\n");
-       SHOW_BOOT_PROGRESS (7);
+       show_boot_progress (7);
  
        switch (hdr->ih_type) {
        case IH_TYPE_STANDALONE:
                if (iflag)
                        enable_interrupts();
                printf ("Can't boot image type %d\n", hdr->ih_type);
-               SHOW_BOOT_PROGRESS (-8);
+               show_boot_progress (-8);
                return 1;
        }
-       SHOW_BOOT_PROGRESS (8);
+       show_boot_progress (8);
  
        switch (hdr->ih_os) {
        default:                        /* handled by (original) Linux case */
                             addr, len_ptr, verify);
            break;
  
- #if (CONFIG_COMMANDS & CFG_CMD_ELF)
+ #if defined(CONFIG_CMD_ELF)
        case IH_OS_VXWORKS:
            do_bootm_vxworks (cmdtp, flag, argc, argv,
                              addr, len_ptr, verify);
            do_bootm_qnxelf (cmdtp, flag, argc, argv,
                              addr, len_ptr, verify);
            break;
- #endif /* CFG_CMD_ELF */
+ #endif
  #ifdef CONFIG_ARTOS
        case IH_OS_ARTOS:
            do_bootm_artos  (cmdtp, flag, argc, argv,
  #endif
        }
  
-       SHOW_BOOT_PROGRESS (-9);
+       show_boot_progress (-9);
  #ifdef DEBUG
        puts ("\n## Control returned to monitor - resetting...\n");
        do_reset (cmdtp, flag, argc, argv);
@@@ -639,7 -629,7 +631,7 @@@ do_bootm_linux (cmd_tbl_t *cmdtp, int f
  #endif
        if (argc >= 3) {
                debug ("Not skipping initrd\n");
-               SHOW_BOOT_PROGRESS (9);
+               show_boot_progress (9);
  
                addr = simple_strtoul(argv[2], NULL, 16);
  
  
                if (ntohl(hdr->ih_magic)  != IH_MAGIC) {
                        puts ("Bad Magic Number\n");
-                       SHOW_BOOT_PROGRESS (-10);
+                       show_boot_progress (-10);
                        do_reset (cmdtp, flag, argc, argv);
                }
  
  
                if (crc32 (0, (uchar *)data, len) != checksum) {
                        puts ("Bad Header Checksum\n");
-                       SHOW_BOOT_PROGRESS (-11);
+                       show_boot_progress (-11);
                        do_reset (cmdtp, flag, argc, argv);
                }
  
-               SHOW_BOOT_PROGRESS (10);
+               show_boot_progress (10);
  
                print_image_hdr (hdr);
  
  
                        if (csum != ntohl(hdr->ih_dcrc)) {
                                puts ("Bad Data CRC\n");
-                               SHOW_BOOT_PROGRESS (-12);
+                               show_boot_progress (-12);
                                do_reset (cmdtp, flag, argc, argv);
                        }
                        puts ("OK\n");
                }
  
-               SHOW_BOOT_PROGRESS (11);
+               show_boot_progress (11);
  
                if ((hdr->ih_os   != IH_OS_LINUX)       ||
                    (hdr->ih_arch != IH_CPU_PPC)        ||
                    (hdr->ih_type != IH_TYPE_RAMDISK)   ) {
                        puts ("No Linux PPC Ramdisk Image\n");
-                       SHOW_BOOT_PROGRESS (-13);
+                       show_boot_progress (-13);
                        do_reset (cmdtp, flag, argc, argv);
                }
  
                u_long tail    = ntohl(len_ptr[0]) % 4;
                int i;
  
-               SHOW_BOOT_PROGRESS (13);
+               show_boot_progress (13);
  
                /* skip kernel length and terminator */
                data = (ulong)(&len_ptr[2]);
                /*
                 * no initrd image
                 */
-               SHOW_BOOT_PROGRESS (14);
+               show_boot_progress (14);
  
                len = data = 0;
        }
        if(argc > 3) {
                of_flat_tree = (char *) simple_strtoul(argv[3], NULL, 16);
                hdr = (image_header_t *)of_flat_tree;
- #if defined(CONFIG_OF_LIBFDT)
-               if (fdt_check_header(of_flat_tree) == 0) {
+ #if defined(CONFIG_OF_FLAT_TREE)
+               if (*((ulong *)(of_flat_tree + sizeof(image_header_t))) != OF_DT_HEADER) {
  #else
-               if (*(ulong *)of_flat_tree == OF_DT_HEADER) {
+               if (fdt_check_header(of_flat_tree + sizeof(image_header_t)) != 0) {
  #endif
  #ifndef CFG_NO_FLASH
                        if (addr2info((ulong)of_flat_tree) != NULL)
                                of_data = (ulong)of_flat_tree;
  #endif
                } else if (ntohl(hdr->ih_magic) == IH_MAGIC) {
-                       printf("## Flat Device Tree Image at %08lX\n", hdr);
+                       printf("## Flat Device Tree at %08lX\n", hdr);
                        print_image_hdr(hdr);
  
                        if ((ntohl(hdr->ih_load) <  ((unsigned long)hdr + ntohl(hdr->ih_size) + sizeof(hdr))) &&
                           ((ntohl(hdr->ih_load) + ntohl(hdr->ih_size)) > (unsigned long)hdr)) {
-                               printf ("ERROR: Load address overwrites Flat Device Tree uImage\n");
-                               return;
+                               puts ("ERROR: fdt overwritten - "
+                                       "must RESET the board to recover.\n");
+                               do_reset (cmdtp, flag, argc, argv);
                        }
  
-                       printf("   Verifying Checksum ... ");
+                       puts ("   Verifying Checksum ... ");
                        memmove (&header, (char *)hdr, sizeof(image_header_t));
                        checksum = ntohl(header.ih_hcrc);
                        header.ih_hcrc = 0;
  
                        if(checksum != crc32(0, (uchar *)&header, sizeof(image_header_t))) {
-                               printf("ERROR: Flat Device Tree header checksum is invalid\n");
-                               return;
+                               puts ("ERROR: fdt header checksum invalid - "
+                                       "must RESET the board to recover.\n");
+                               do_reset (cmdtp, flag, argc, argv);
                        }
  
                        checksum = ntohl(hdr->ih_dcrc);
                        addr = (ulong)((uchar *)(hdr) + sizeof(image_header_t));
  
                        if(checksum != crc32(0, (uchar *)addr, ntohl(hdr->ih_size))) {
-                               printf("ERROR: Flat Device Tree checksum is invalid\n");
-                               return;
+                               puts ("ERROR: fdt checksum invalid - "
+                                       "must RESET the board to recover.\n");
+                               do_reset (cmdtp, flag, argc, argv);
                        }
-                       printf("OK\n");
+                       puts ("OK\n");
  
                        if (ntohl(hdr->ih_type) != IH_TYPE_FLATDT) {
-                               printf ("ERROR: uImage not Flat Device Tree type\n");
-                               return;
+                               puts ("ERROR: uImage is not a fdt - "
+                                       "must RESET the board to recover.\n");
+                               do_reset (cmdtp, flag, argc, argv);
                        }
                        if (ntohl(hdr->ih_comp) != IH_COMP_NONE) {
-                               printf("ERROR: uImage is not uncompressed\n");
-                               return;
+                               puts ("ERROR: uImage is compressed - "
+                                       "must RESET the board to recover.\n");
+                               do_reset (cmdtp, flag, argc, argv);
                        }
- #if defined(CONFIG_OF_LIBFDT)
-                       if (fdt_check_header(of_flat_tree + sizeof(image_header_t)) == 0) {
- #else
+ #if defined(CONFIG_OF_FLAT_TREE)
                        if (*((ulong *)(of_flat_tree + sizeof(image_header_t))) != OF_DT_HEADER) {
+ #else
+                       if (fdt_check_header(of_flat_tree + sizeof(image_header_t)) != 0) {
  #endif
-                               printf ("ERROR: uImage data is not a flat device tree\n");
-                               return;
+                               puts ("ERROR: uImage data is not a fdt - "
+                                       "must RESET the board to recover.\n");
+                               do_reset (cmdtp, flag, argc, argv);
                        }
  
                        memmove((void *)ntohl(hdr->ih_load),
                                ntohl(hdr->ih_size));
                        of_flat_tree = (char *)ntohl(hdr->ih_load);
                } else {
-                       printf ("Did not find a flat flat device tree at address %08lX\n", of_flat_tree);
-                       return;
+                       puts ("Did not find a flat Flat Device Tree.\n"
+                               "Must RESET the board to recover.\n");
+                       do_reset (cmdtp, flag, argc, argv);
                }
-               printf ("   Booting using flat device tree at 0x%x\n",
+               printf ("   Booting using the fdt at 0x%x\n",
                                of_flat_tree);
        } else if ((hdr->ih_type==IH_TYPE_MULTI) && (len_ptr[1]) && (len_ptr[2])) {
                u_long tail    = ntohl(len_ptr[0]) % 4;
                int i;
  
                /* skip kernel length, initrd length, and terminator */
-               of_data = (ulong)(&len_ptr[3]);
+               of_flat_tree = (char *)(&len_ptr[3]);
                /* skip any additional image length fields */
                for (i=2; len_ptr[i]; ++i)
-                       of_data += 4;
+                       of_flat_tree += 4;
                /* add kernel length, and align */
-               of_data += ntohl(len_ptr[0]);
+               of_flat_tree += ntohl(len_ptr[0]);
                if (tail) {
-                       of_data += 4 - tail;
+                       of_flat_tree += 4 - tail;
                }
  
                /* add initrd length, and align */
                tail = ntohl(len_ptr[1]) % 4;
-               of_data += ntohl(len_ptr[1]);
+               of_flat_tree += ntohl(len_ptr[1]);
                if (tail) {
-                       of_data += 4 - tail;
+                       of_flat_tree += 4 - tail;
                }
  
- #if defined(CONFIG_OF_LIBFDT)
-               if (fdt_check_header((void *)of_data) != 0) {
+ #ifndef CFG_NO_FLASH
+               /* move the blob if it is in flash (set of_data to !null) */
+               if (addr2info ((ulong)of_flat_tree) != NULL)
+                       of_data = (ulong)of_flat_tree;
+ #endif
+ #if defined(CONFIG_OF_FLAT_TREE)
+               if (*((ulong *)(of_flat_tree)) != OF_DT_HEADER) {
  #else
-               if (((struct boot_param_header *)of_data)->magic != OF_DT_HEADER) {
+               if (fdt_check_header (of_flat_tree) != 0) {
  #endif
-                       printf ("ERROR: image is not a flat device tree\n");
-                       return;
+                       puts ("ERROR: image is not a fdt - "
+                               "must RESET the board to recover.\n");
+                       do_reset (cmdtp, flag, argc, argv);
                }
  
- #if defined(CONFIG_OF_LIBFDT)
-               if (be32_to_cpu(fdt_totalsize(of_data)) !=  ntohl(len_ptr[2])) {
+ #if defined(CONFIG_OF_FLAT_TREE)
+               if (((struct boot_param_header *)of_flat_tree)->totalsize !=
+                       ntohl (len_ptr[2])) {
  #else
-               if (((struct boot_param_header *)of_data)->totalsize != ntohl(len_ptr[2])) {
+               if (be32_to_cpu (fdt_totalsize (of_flat_tree)) !=
+                       ntohl(len_ptr[2])) {
  #endif
-                       printf ("ERROR: flat device tree size does not agree with image\n");
-                       return;
+                       puts ("ERROR: fdt size != image size - "
+                               "must RESET the board to recover.\n");
+                       do_reset (cmdtp, flag, argc, argv);
                }
        }
  #endif
                                initrd_start = nsp;
                }
  
-               SHOW_BOOT_PROGRESS (12);
+               show_boot_progress (12);
  
                debug ("## initrd at 0x%08lX ... 0x%08lX (len=%ld=0x%lX)\n",
                        data, data + len - 1, len, len);
                initrd_end = 0;
        }
  
-       debug ("## Transferring control to Linux (at address %08lx) ...\n",
-               (ulong)kernel);
-       SHOW_BOOT_PROGRESS (15);
+ #if defined(CONFIG_OF_LIBFDT)
  
- #if defined(CFG_INIT_RAM_LOCK) && !defined(CONFIG_E500)
-       unlock_ram_in_cache();
+ #ifdef CFG_BOOTMAPSZ
+       /*
+        * The blob must be within CFG_BOOTMAPSZ,
+        * so we flag it to be copied if it is not.
+        */
+       if (of_flat_tree >= (char *)CFG_BOOTMAPSZ)
+               of_data = (ulong)of_flat_tree;
  #endif
  
- #if defined(CONFIG_OF_LIBFDT)
        /* move of_flat_tree if needed */
        if (of_data) {
                int err;
                ulong of_start, of_len;
  
                of_len = be32_to_cpu(fdt_totalsize(of_data));
-               /* position on a 4K boundary before the initrd/kbd */
-               if (initrd_start)
-                       of_start = initrd_start - of_len;
-               else
-                       of_start  = (ulong)kbd - of_len;
+               /* position on a 4K boundary before the kbd */
+               of_start  = (ulong)kbd - of_len;
                of_start &= ~(4096 - 1);        /* align on page */
                debug ("## device tree at 0x%08lX ... 0x%08lX (len=%ld=0x%lX)\n",
                        of_data, of_data + of_len - 1, of_len, of_len);
                of_flat_tree = (char *)of_start;
                printf ("   Loading Device Tree to %08lx, end %08lx ... ",
                        of_start, of_start + of_len - 1);
-               err = fdt_open_into((void *)of_start, (void *)of_data, of_len);
+               err = fdt_open_into((void *)of_data, (void *)of_start, of_len);
                if (err != 0) {
-                       printf ("libfdt: %s " __FILE__ " %d\n", fdt_strerror(err), __LINE__);
+                       puts ("ERROR: fdt move failed - "
+                               "must RESET the board to recover.\n");
+                       do_reset (cmdtp, flag, argc, argv);
                }
-               /*
-                * Add the chosen node if it doesn't exist, add the env and bd_t
-                * if the user wants it (the logic is in the subroutines).
-                */
+               puts ("OK\n");
+       }
+       /*
+        * Add the chosen node if it doesn't exist, add the env and bd_t
+        * if the user wants it (the logic is in the subroutines).
+        */
+       if (of_flat_tree) {
                if (fdt_chosen(of_flat_tree, initrd_start, initrd_end, 0) < 0) {
-                               printf("Failed creating the /chosen node (0x%08X), aborting.\n", of_flat_tree);
-                               return;
+                       puts ("ERROR: /chosen node create failed - "
+                               "must RESET the board to recover.\n");
+                       do_reset (cmdtp, flag, argc, argv);
                }
  #ifdef CONFIG_OF_HAS_UBOOT_ENV
                if (fdt_env(of_flat_tree) < 0) {
-                               printf("Failed creating the /u-boot-env node, aborting.\n");
-                               return;
+                       puts ("ERROR: /u-boot-env node create failed - "
+                               "must RESET the board to recover.\n");
+                       do_reset (cmdtp, flag, argc, argv);
                }
  #endif
  #ifdef CONFIG_OF_HAS_BD_T
                if (fdt_bd_t(of_flat_tree) < 0) {
-                               printf("Failed creating the /bd_t node, aborting.\n");
-                               return;
+                       puts ("ERROR: /bd_t node create failed - "
+                               "must RESET the board to recover.\n");
+                       do_reset (cmdtp, flag, argc, argv);
                }
  #endif
-       }
+ #ifdef CONFIG_OF_BOARD_SETUP
+               /* Call the board-specific fixup routine */
+               ft_board_setup(of_flat_tree, gd->bd);
  #endif
+       }
+ #endif /* CONFIG_OF_LIBFDT */
  #if defined(CONFIG_OF_FLAT_TREE)
+ #ifdef CFG_BOOTMAPSZ
+       /*
+        * The blob must be within CFG_BOOTMAPSZ,
+        * so we flag it to be copied if it is not.
+        */
+       if (of_flat_tree >= (char *)CFG_BOOTMAPSZ)
+               of_data = (ulong)of_flat_tree;
+ #endif
        /* move of_flat_tree if needed */
        if (of_data) {
                ulong of_start, of_len;
                of_len = ((struct boot_param_header *)of_data)->totalsize;
                /* provide extra 8k pad */
-               if (initrd_start)
-                       of_start = initrd_start - of_len - 8192;
-               else
-                       of_start  = (ulong)kbd - of_len - 8192;
+               of_start  = (ulong)kbd - of_len - 8192;
                of_start &= ~(4096 - 1);        /* align on page */
                debug ("## device tree at 0x%08lX ... 0x%08lX (len=%ld=0x%lX)\n",
                        of_data, of_data + of_len - 1, of_len, of_len);
                printf ("   Loading Device Tree to %08lx, end %08lx ... ",
                        of_start, of_start + of_len - 1);
                memmove ((void *)of_start, (void *)of_data, of_len);
+               puts ("OK\n");
        }
+       /*
+        * Create the /chosen node and modify the blob with board specific
+        * values as needed.
+        */
+       ft_setup(of_flat_tree, kbd, initrd_start, initrd_end);
+       /* ft_dump_blob(of_flat_tree); */
+ #endif
+       debug ("## Transferring control to Linux (at address %08lx) ...\n",
+               (ulong)kernel);
+       show_boot_progress (15);
+ #if defined(CFG_INIT_RAM_LOCK) && !defined(CONFIG_E500)
+       unlock_ram_in_cache();
  #endif
  
+ #if defined(CONFIG_OF_FLAT_TREE) || defined(CONFIG_OF_LIBFDT)
+       if (of_flat_tree) {     /* device tree; boot new style */
+               /*
+                * Linux Kernel Parameters (passing device tree):
+                *   r3: pointer to the fdt, followed by the board info data
+                *   r4: physical pointer to the kernel itself
+                *   r5: NULL
+                *   r6: NULL
+                *   r7: NULL
+                */
+               (*kernel) ((bd_t *)of_flat_tree, (ulong)kernel, 0, 0, 0);
+               /* does not return */
+       }
+ #endif
        /*
         * Linux Kernel Parameters (passing board info data):
         *   r3: ptr to board info data
         *   r6: Start of command line string
         *   r7: End   of command line string
         */
- #if defined(CONFIG_OF_FLAT_TREE) || defined(CONFIG_OF_LIBFDT)
-       if (!of_flat_tree)      /* no device tree; boot old style */
- #endif
-               (*kernel) (kbd, initrd_start, initrd_end, cmd_start, cmd_end);
-               /* does not return */
- #if defined(CONFIG_OF_FLAT_TREE) || defined(CONFIG_OF_LIBFDT)
-       /*
-        * Linux Kernel Parameters (passing device tree):
-        *   r3: ptr to OF flat tree, followed by the board info data
-        *   r4: physical pointer to the kernel itself
-        *   r5: NULL
-        *   r6: NULL
-        *   r7: NULL
-        */
- #if defined(CONFIG_OF_FLAT_TREE)
-       ft_setup(of_flat_tree, kbd, initrd_start, initrd_end);
-       /* ft_dump_blob(of_flat_tree); */
- #endif
- #if defined(CONFIG_OF_LIBFDT)
-       if (fdt_chosen(of_flat_tree, initrd_start, initrd_end, 0) < 0) {
-               printf("Failed creating the /chosen node (0x%08X), aborting.\n", of_flat_tree);
-               return;
-       }
- #ifdef CONFIG_OF_HAS_UBOOT_ENV
-       if (fdt_env(of_flat_tree) < 0) {
-               printf("Failed creating the /u-boot-env node, aborting.\n");
-               return;
-       }
- #endif
- #ifdef CONFIG_OF_HAS_BD_T
-       if (fdt_bd_t(of_flat_tree) < 0) {
-               printf("Failed creating the /bd_t node, aborting.\n");
-               return;
-       }
- #endif
- #endif /* if defined(CONFIG_OF_LIBFDT) */
-       (*kernel) ((bd_t *)of_flat_tree, (ulong)kernel, 0, 0, 0);
- #endif
+       (*kernel) (kbd, initrd_start, initrd_end, cmd_start, cmd_end);
+       /* does not return */
  }
  #endif /* CONFIG_PPC */
  
@@@ -1117,7 -1134,7 +1136,7 @@@ do_bootm_netbsd (cmd_tbl_t *cmdtp, int 
        printf ("## Transferring control to NetBSD stage-2 loader (at address %08lx) ...\n",
                (ulong)loader);
  
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
  
        /*
         * NetBSD Stage-2 Loader Parameters:
@@@ -1221,7 -1238,7 +1240,7 @@@ do_bootm_artos (cmd_tbl_t *cmdtp, int f
  #endif
  
  
- #if (CONFIG_COMMANDS & CFG_CMD_BOOTD)
+ #if defined(CONFIG_CMD_BOOTD)
  int do_bootd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
  {
        int rcode = 0;
@@@ -1249,7 -1266,7 +1268,7 @@@ U_BOOT_CMD
  
  #endif
  
- #if (CONFIG_COMMANDS & CFG_CMD_IMI)
+ #if defined(CONFIG_CMD_IMI)
  int do_iminfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
  {
        int     arg;
@@@ -1317,9 -1334,9 +1336,9 @@@ U_BOOT_CMD
        "      image contents (magic number, header and payload checksums)\n"
  );
  
- #endif        /* CFG_CMD_IMI */
+ #endif
  
- #if (CONFIG_COMMANDS & CFG_CMD_IMLS)
+ #if defined(CONFIG_CMD_IMLS)
  /*-----------------------------------------------------------------------
   * List all images found in flash.
   */
@@@ -1375,23 -1392,23 +1394,23 @@@ U_BOOT_CMD
        "    - Prints information about all images found at sector\n"
        "      boundaries in flash.\n"
  );
- #endif        /* CFG_CMD_IMLS */
+ #endif
  
  void
  print_image_hdr (image_header_t *hdr)
  {
- #if (CONFIG_COMMANDS & CFG_CMD_DATE) || defined(CONFIG_TIMESTAMP)
+ #if defined(CONFIG_TIMESTAMP) || defined(CONFIG_CMD_DATE)
        time_t timestamp = (time_t)ntohl(hdr->ih_time);
        struct rtc_time tm;
  #endif
  
        printf ("   Image Name:   %.*s\n", IH_NMLEN, hdr->ih_name);
- #if (CONFIG_COMMANDS & CFG_CMD_DATE) || defined(CONFIG_TIMESTAMP)
+ #if defined(CONFIG_TIMESTAMP) || defined(CONFIG_CMD_DATE)
        to_tm (timestamp, &tm);
        printf ("   Created:      %4d-%02d-%02d  %2d:%02d:%02d UTC\n",
                tm.tm_year, tm.tm_mon, tm.tm_mday,
                tm.tm_hour, tm.tm_min, tm.tm_sec);
- #endif        /* CFG_CMD_DATE, CONFIG_TIMESTAMP */
+ #endif
        puts ("   Image Type:   "); print_type(hdr);
        printf ("\n   Data Size:    %d Bytes = ", ntohl(hdr->ih_size));
        print_size (ntohl(hdr->ih_size), "\n");
@@@ -1580,7 -1597,7 +1599,7 @@@ do_bootm_rtems (cmd_tbl_t *cmdtp, int f
        printf ("## Transferring control to RTEMS (at address %08lx) ...\n",
                (ulong)entry_point);
  
-       SHOW_BOOT_PROGRESS (15);
+       show_boot_progress (15);
  
        /*
         * RTEMS Parameters:
        (*entry_point ) ( gd->bd );
  }
  
- #if (CONFIG_COMMANDS & CFG_CMD_ELF)
+ #if defined(CONFIG_CMD_ELF)
  static void
  do_bootm_vxworks (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],
                  ulong addr, ulong *len_ptr, int verify)
@@@ -1616,7 -1633,7 +1635,7 @@@ do_bootm_qnxelf (cmd_tbl_t *cmdtp, int 
        local_args[1] = str;    /* and provide it via the arguments */
        do_bootelf(cmdtp, 0, 2, local_args);
  }
- #endif /* CFG_CMD_ELF */
+ #endif
  
  #ifdef CONFIG_LYNXKDI
  static void
diff --combined drivers/Makefile
index a3a9986cf4e78cbb897a77cd54de5c824a0ad593,6bf05ccad19696164b1f3f0a66b7812f39be659f..fe32a740983e4492e25b20580e53f5064bf59638
mode 100644,100755..100755
@@@ -27,11 -27,11 +27,11 @@@ include $(TOPDIR)/config.m
  
  LIB   = $(obj)libdrivers.a
  
- COBJS = 3c589.o 5701rls.o ali512x.o atmel_usart.o \
+ COBJS = 3c589.o 5701rls.o ali512x.o at45.o ata_piix.o atmel_usart.o \
          bcm570x.o bcm570x_autoneg.o cfb_console.o cfi_flash.o \
          cs8900.o ct69000.o dataflash.o dc2114x.o dm9000x.o \
-         e1000.o eepro100.o \
-         i8042.o inca-ip_sw.o keyboard.o \
+         e1000.o eepro100.o enc28j60.o \
+         i8042.o inca-ip_sw.o isp116x-hcd.o keyboard.o \
          lan91c96.o macb.o \
          natsemi.o ne2000.o netarm_eth.o netconsole.o \
          ns16550.o ns8382x.o ns87308.o ns7520_eth.o omap1510_i2c.o \
          rtl8019.o rtl8139.o rtl8169.o \
          s3c4510b_eth.o s3c4510b_uart.o \
          sed13806.o sed156x.o \
 -        serial.o serial_max3100.o \
 +        serial.o serial_max3100.o serial_sh.o \
          serial_pl010.o serial_pl011.o serial_xuartlite.o \
-         sl811_usb.o sm501.o smc91111.o smiLynxEM.o \
+         sil680.o sl811_usb.o sm501.o smc91111.o smiLynxEM.o \
          status_led.o sym53c8xx.o systemace.o ahci.o \
          ti_pci1410a.o tigon3.o tsec.o \
          tsi108_eth.o tsi108_i2c.o tsi108_pci.o \
-         usbdcore.o usbdcore_ep0.o usbdcore_omap1510.o usbtty.o \
+         usb_ohci.o \
+         usbdcore.o usbdcore_ep0.o usbdcore_mpc8xx.o usbdcore_omap1510.o \
+         usbtty.o \
          videomodes.o w83c553f.o \
          ks8695eth.o \
          pxa_pcmcia.o mpc8xx_pcmcia.o tqm8xx_pcmcia.o  \
          rpx_pcmcia.o \
-         fsl_i2c.o
+         fsl_i2c.o fsl_pci_init.o ati_radeon_fb.o
  
  SRCS  := $(COBJS:.o=.c)
  OBJS  := $(addprefix $(obj),$(COBJS))