Merge git://www.denx.de/git/u-boot
[platform/kernel/u-boot.git] / Makefile
index 34f219d..980aac2 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -22,8 +22,8 @@
 #
 
 VERSION = 1
-PATCHLEVEL = 1
-SUBLEVEL = 6
+PATCHLEVEL = 2
+SUBLEVEL = 0
 EXTRAVERSION =
 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
 VERSION_FILE = $(obj)include/version_autogenerated.h
@@ -93,7 +93,7 @@ MKCONFIG      := $(SRCTREE)/mkconfig
 export MKCONFIG
 
 ifneq ($(OBJTREE),$(SRCTREE))
-REMOTE_BUILD   := 1
+REMOTE_BUILD   := 1
 export REMOTE_BUILD
 endif
 
@@ -118,7 +118,7 @@ include $(OBJTREE)/include/config.mk
 export ARCH CPU BOARD VENDOR SOC
 
 ifndef CROSS_COMPILE
-ifeq ($(HOSTARCH),ppc)
+ifeq ($(HOSTARCH),$(ARCH))
 CROSS_COMPILE =
 else
 ifeq ($(ARCH),ppc)
@@ -128,12 +128,8 @@ ifeq ($(ARCH),arm)
 CROSS_COMPILE = arm-linux-
 endif
 ifeq ($(ARCH),i386)
-ifeq ($(HOSTARCH),i386)
-CROSS_COMPILE =
-else
 CROSS_COMPILE = i386-linux-
 endif
-endif
 ifeq ($(ARCH),mips)
 CROSS_COMPILE = mips_4KC-
 endif
@@ -147,13 +143,13 @@ ifeq ($(ARCH),m68k)
 CROSS_COMPILE = m68k-elf-
 endif
 ifeq ($(ARCH),microblaze)
-CROSS_COMPILE = mb-
+CROSS_COMPILE = microblaze-uclinux-
 endif
 ifeq ($(ARCH),blackfin)
-CROSS_COMPILE = bfin-elf-
+CROSS_COMPILE = bfin-uclinux-
 endif
 ifeq ($(ARCH),avr32)
-CROSS_COMPILE = avr32-
+CROSS_COMPILE = avr32-linux-
 endif
 endif
 endif
@@ -174,18 +170,20 @@ endif
 ifeq ($(CPU),ppc4xx)
 OBJS += cpu/$(CPU)/resetvec.o
 endif
-ifeq ($(CPU),mpc83xx)
-OBJS += cpu/$(CPU)/resetvec.o
-endif
 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)/cplbhdlr.o  cpu/$(CPU)/cplbmgr.o    cpu/$(CPU)/flush.o
+OBJS += cpu/$(CPU)/flush.o     cpu/$(CPU)/init_sdram.o
+endif
+ifeq ($(CPU),bf537)
+OBJS += cpu/$(CPU)/start1.o    cpu/$(CPU)/interrupt.o  cpu/$(CPU)/cache.o
+OBJS += cpu/$(CPU)/flush.o     cpu/$(CPU)/init_sdram.o
+endif
+ifeq ($(CPU),bf561)
+OBJS += cpu/$(CPU)/start1.o    cpu/$(CPU)/interrupt.o  cpu/$(CPU)/cache.o
+OBJS += cpu/$(CPU)/flush.o     cpu/$(CPU)/init_sdram.o
 endif
 
 OBJS := $(addprefix $(obj),$(OBJS))
@@ -196,20 +194,37 @@ LIBS += cpu/$(CPU)/lib$(CPU).a
 ifdef SOC
 LIBS += cpu/$(CPU)/$(SOC)/lib$(SOC).a
 endif
+ifeq ($(CPU),ixp)
+LIBS += cpu/ixp/npe/libnpe.a
+endif
 LIBS += lib_$(ARCH)/lib$(ARCH).a
-LIBS += fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a \
-       fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a
+LIBS += fs/cramfs/libcramfs.a fs/ext2/libext2fs.a fs/fat/libfat.a \
+       fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a \
+       fs/romfs/libromfs.a
 LIBS += net/libnet.a
 LIBS += disk/libdisk.a
 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/libnetdrv.a
+ifeq ($(CPU),mpc83xx)
+LIBS += drivers/qe/qe.a
+endif
 LIBS += drivers/sk98lin/libsk98lin.a
-LIBS += post/libpost.a post/cpu/libcpu.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 \
+       "post/board/$(BOARDDIR)/libpost$(BOARD).a"; fi)
 LIBS += common/libcommon.a
-LIBS += $(BOARDLIBS)
+LIBS += libfdt/libfdt.a
 
 LIBS := $(addprefix $(obj),$(LIBS))
 .PHONY : $(LIBS)
@@ -220,9 +235,8 @@ PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -
 # The "tools" are needed early, so put this first
 # Don't include stuff already done in $(LIBS)
 SUBDIRS        = tools \
-         examples \
-         post \
-         post/cpu
+         examples
+
 .PHONY : $(SUBDIRS)
 
 ifeq ($(CONFIG_NAND_U_BOOT),y)
@@ -236,7 +250,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)
 
@@ -256,6 +270,9 @@ $(obj)u-boot.img:   $(obj)u-boot.bin
                        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 $< > $@
 
@@ -302,14 +319,14 @@ depend dep:
 tags ctags:
                ctags -w -o $(OBJTREE)/ctags `find $(SUBDIRS) include \
                                lib_generic board/$(BOARDDIR) cpu/$(CPU) lib_$(ARCH) \
-                               fs/cramfs fs/fat fs/fdos fs/jffs2 \
+                               fs/cramfs fs/fat fs/fdos fs/jffs2 fs/romfs\
                                net disk rtc dtt drivers drivers/sk98lin common \
                        \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)`
 
 etags:
                etags -a -o $(OBJTREE)/etags `find $(SUBDIRS) include \
                                lib_generic board/$(BOARDDIR) cpu/$(CPU) lib_$(ARCH) \
-                               fs/cramfs fs/fat fs/fdos fs/jffs2 \
+                               fs/cramfs fs/fat fs/fdos fs/jffs2 fs/romfs\
                                net disk rtc dtt drivers drivers/sk98lin common \
                        \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)`
 
@@ -378,8 +395,8 @@ Lite5200_LOWBOOT08_config           \
 icecube_5200_config                    \
 icecube_5200_LOWBOOT_config            \
 icecube_5200_LOWBOOT08_config          \
-icecube_5200_DDR_config                \
-icecube_5200_DDR_LOWBOOT_config        \
+icecube_5200_DDR_config                        \
+icecube_5200_DDR_LOWBOOT_config                \
 icecube_5200_DDR_LOWBOOT08_config      \
 icecube_5100_config:                   unconfig
        @mkdir -p $(obj)include
@@ -411,13 +428,17 @@ icecube_5100_config:                      unconfig
                }
        @$(MKCONFIG) -a IceCube ppc mpc5xxx icecube
 
+jupiter_config:         unconfig
+       @$(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
 
 lite5200b_config       \
+lite5200b_PM_config    \
 lite5200b_LOWBOOT_config:      unconfig
        @mkdir -p $(obj)include
        @mkdir -p $(obj)board/icecube
@@ -426,6 +447,10 @@ lite5200b_LOWBOOT_config:  unconfig
        @ echo "... DDR memory revision"
        @ echo "#define CONFIG_MPC5200"         >>$(obj)include/config.h
        @ echo "#define CONFIG_LITE5200B"       >>$(obj)include/config.h
+       @[ -z "$(findstring _PM_,$@)" ] || \
+               { echo "#define CONFIG_LITE5200B_PM"    >>$(obj)include/config.h ; \
+                 echo "... with power management (low-power mode) support" ; \
+               }
        @[ -z "$(findstring LOWBOOT_,$@)" ] || \
                { echo "TEXT_BASE = 0xFF000000" >$(obj)board/icecube/config.tmp ; \
                  echo "... with LOWBOOT configuration" ; \
@@ -458,7 +483,7 @@ prs200_highboot_DDR_config: unconfig
        @[ -n "$(findstring _SDRAM,$@)" ] || \
                { if [ -n "$(findstring mcc200,$@)" ]; \
                  then \
-                       echo "... with DDR" ; \
+                       echo "... with DDR" ; \
                  else \
                        if [ -n "$(findstring _DDR,$@)" ];\
                        then \
@@ -482,6 +507,9 @@ prs200_highboot_DDR_config: unconfig
                }
        @$(MKCONFIG) -n $@ -a mcc200 ppc mpc5xxx mcc200
 
+mecp5200_config:  unconfig
+       @$(MKCONFIG) -a mecp5200  ppc mpc5xxx mecp5200 esd
+
 o2dnt_config:
        @$(MKCONFIG) o2dnt ppc mpc5xxx o2dnt
 
@@ -507,6 +535,9 @@ PM520_ROMBOOT_DDR_config:   unconfig
 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
 
@@ -557,6 +588,7 @@ Total5200_Rev2_lowboot_config:      unconfig
        @$(MKCONFIG) -a Total5200 ppc mpc5xxx total5200
 
 cam5200_config \
+cam5200_niosflash_config \
 fo300_config \
 MiniFAP_config \
 TQM5200S_config \
@@ -574,6 +606,10 @@ TQM5200_STK100_config:     unconfig
                  echo "#define CONFIG_TQM5200_B"       >>$(obj)include/config.h ; \
                  echo "... TQM5200S on Cam5200" ; \
                }
+       @[ -z "$(findstring niosflash,$@)" ] || \
+               { echo "#define CONFIG_CAM5200_NIOSFLASH"       >>$(obj)include/config.h ; \
+                 echo "... with NIOS flash driver" ; \
+               }
        @[ -z "$(findstring fo300,$@)" ] || \
                { echo "#define CONFIG_FO300"   >>$(obj)include/config.h ; \
                  echo "... TQM5200 on FO300" ; \
@@ -597,6 +633,18 @@ TQM5200_STK100_config:     unconfig
                { echo "TEXT_BASE = 0xFFF00000" >$(obj)board/tqm5200/config.tmp ; \
                }
        @$(MKCONFIG) -n $@ -a TQM5200 ppc mpc5xxx tqm5200
+uc101_config:         unconfig
+       @$(MKCONFIG) uc101 ppc mpc5xxx uc101
+motionpro_config:         unconfig
+       @$(MKCONFIG) motionpro ppc mpc5xxx motionpro
+
+
+#########################################################################
+## MPC512x Systems
+#########################################################################
+ads5121_config: unconfig
+       @$(MKCONFIG) ads5121 ppc mpc512x ads5121
+
 
 #########################################################################
 ## MPC8xx Systems
@@ -865,9 +913,9 @@ RPXClassic_config:  unconfig
 RPXlite_config:                unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc8xx RPXlite
 
-RPXlite_DW_64_config           \
-RPXlite_DW_LCD_config          \
-RPXlite_DW_64_LCD_config       \
+RPXlite_DW_64_config           \
+RPXlite_DW_LCD_config          \
+RPXlite_DW_64_LCD_config       \
 RPXlite_DW_NVRAM_config                \
 RPXlite_DW_NVRAM_64_config      \
 RPXlite_DW_NVRAM_LCD_config    \
@@ -880,12 +928,12 @@ RPXlite_DW_config:         unconfig
                  echo "... with 64MHz system clock ..."; \
                }
        @[ -z "$(findstring _LCD,$@)" ] || \
-               { echo "#define CONFIG_LCD"             >>$(obj)include/config.h ; \
+               { echo "#define CONFIG_LCD"             >>$(obj)include/config.h ; \
                  echo "#define CONFIG_NEC_NL6448BC20"  >>$(obj)include/config.h ; \
                  echo "... with LCD display ..."; \
                }
        @[ -z "$(findstring _NVRAM,$@)" ] || \
-               { echo "#define  CFG_ENV_IS_IN_NVRAM"   >>$(obj)include/config.h ; \
+               { echo "#define  CFG_ENV_IS_IN_NVRAM"   >>$(obj)include/config.h ; \
                  echo "... with ENV in NVRAM ..."; \
                }
        @$(MKCONFIG) -a RPXlite_DW ppc mpc8xx RPXlite_dw
@@ -981,9 +1029,23 @@ wtk_config:       unconfig
 #########################################################################
 xtract_4xx = $(subst _25,,$(subst _33,,$(subst _BA,,$(subst _ME,,$(subst _HI,,$(subst _config,,$1))))))
 
+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
+
 AP1000_config:unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx ap1000 amirix
 
@@ -999,6 +1061,14 @@ ASH405_config:    unconfig
 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
 
@@ -1079,9 +1149,15 @@ JSE_config:      unconfig
 KAREF_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx karef sandburst
 
+katmai_config: unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx katmai amcc
+
 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
 
@@ -1156,43 +1232,32 @@ PPChameleonEVB_HI_33_config:    unconfig
                }
        @$(MKCONFIG) -a $(call xtract_4xx,$@) ppc ppc4xx PPChameleonEVB dave
 
-rainier_config:        unconfig
-       @mkdir -p $(obj)include
-       @echo "#define CONFIG_RAINIER" > $(obj)include/config.h
-       @echo "Configuring for rainier board as subset of sequoia..."
-       @$(MKCONFIG) -a sequoia ppc ppc4xx sequoia amcc
-
-rainier_nand_config:   unconfig
-       @mkdir -p $(obj)include
-       @mkdir -p $(obj)nand_spl
-       @mkdir -p $(obj)board/amcc/sequoia
-       @echo "#define CONFIG_RAINIER" > $(obj)include/config.h
-       @echo "Configuring for rainier board as subset of sequoia..."
-       @echo "#define CONFIG_NAND_U_BOOT" >> $(obj)include/config.h
-       @echo "Compile NAND boot image for sequoia"
-       @$(MKCONFIG) -a sequoia ppc ppc4xx sequoia amcc
-       @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/sequoia/config.tmp
-       @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
-
 sbc405_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx sbc405
 
-sequoia_config:        unconfig
-       @$(MKCONFIG) $(@:_config=) ppc ppc4xx sequoia amcc
-
-sequoia_nand_config:   unconfig
+sequoia_config \
+rainier_config: unconfig
        @mkdir -p $(obj)include
-       @mkdir -p $(obj)nand_spl
-       @mkdir -p $(obj)board/amcc/sequoia
+       @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \
+               tr '[:lower:]' '[:upper:]')" >$(obj)include/config.h
+       @$(MKCONFIG) -n $@ -a sequoia ppc ppc4xx sequoia amcc
+
+sequoia_nand_config \
+rainier_nand_config: unconfig
+       @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 "Compile NAND boot image for sequoia"
-       @$(MKCONFIG) -a sequoia ppc ppc4xx sequoia amcc
+       @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \
+               tr '[:lower:]' '[:upper:]')" >> $(obj)include/config.h
+       @$(MKCONFIG) -n $@ -a sequoia ppc ppc4xx sequoia amcc
        @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/sequoia/config.tmp
        @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
 
-sycamore_config:       unconfig
-       @echo "Configuring for sycamore board as subset of walnut..."
-       @$(MKCONFIG) -a walnut ppc ppc4xx walnut amcc
+sc3_config:unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx sc3
+
+taishan_config:        unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx taishan amcc
 
 VOH405_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx voh405 esd
@@ -1207,8 +1272,10 @@ W7OLMC_config    \
 W7OLMG_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx w7o
 
-walnut_config: unconfig
-       @$(MKCONFIG) $(@:_config=) ppc ppc4xx walnut amcc
+# Walnut & Sycamore images are identical (recognized via PVR)
+walnut_config \
+sycamore_config: unconfig
+       @$(MKCONFIG) -n $@ -a walnut ppc ppc4xx walnut amcc
 
 WUH405_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx wuh405 esd
@@ -1216,11 +1283,12 @@ WUH405_config:  unconfig
 XPEDITE1K_config:      unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx xpedite1k
 
-yosemite_config:       unconfig
-       @$(MKCONFIG) $(@:_config=) ppc ppc4xx yosemite amcc
-
-yellowstone_config:    unconfig
-       @$(MKCONFIG) $(@:_config=) ppc ppc4xx yellowstone amcc
+yosemite_config \
+yellowstone_config: unconfig
+       @mkdir -p $(obj)include
+       @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \
+               tr '[:lower:]' '[:upper:]')" >$(obj)include/config.h
+       @$(MKCONFIG) -n $@ -a yosemite ppc ppc4xx yosemite amcc
 
 yucca_config:  unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx yucca amcc
@@ -1352,7 +1420,7 @@ ep8260_config:    unconfig
        @$(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
@@ -1569,6 +1637,9 @@ EB+MCF-EV123_internal_config :    unconfig
        @echo "TEXT_BASE = 0xF0000000"|tee $(obj)board/BuS/EB+MCF-EV123/textbase.mk
        @$(MKCONFIG) EB+MCF-EV123 m68k mcf52x2 EB+MCF-EV123 BuS
 
+idmr_config :                  unconfig
+       @$(MKCONFIG) $(@:_config=) m68k mcf52x2 idmr
+
 M5271EVB_config :              unconfig
        @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5271evb
 
@@ -1588,14 +1659,93 @@ r5200_config :          unconfig
 ## MPC83xx Systems
 #########################################################################
 
-MPC8349ADS_config:     unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc83xx mpc8349ads
+MPC8313ERDB_33_config \
+MPC8313ERDB_66_config: unconfig
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
+       if [ "$(findstring _33_,$@)" ] ; then \
+               echo "...33M ..." ; \
+               echo "#define CFG_33MHZ" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _66_,$@)" ] ; then \
+               echo "...66M..." ; \
+               echo "#define CFG_66MHZ" >>$(obj)include/config.h ; \
+       fi ;
+       @$(MKCONFIG) -a MPC8313ERDB ppc mpc83xx mpc8313erdb
+
+MPC832XEMDS_config \
+MPC832XEMDS_HOST_33_config \
+MPC832XEMDS_HOST_66_config \
+MPC832XEMDS_SLAVE_config:      unconfig
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
+       if [ "$(findstring _HOST_,$@)" ] ; then \
+               echo "... PCI HOST " ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _SLAVE_,$@)" ] ; then \
+               echo "...PCI SLAVE 66M"  ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PCISLAVE" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _33_,$@)" ] ; then \
+               echo "...33M ..." ; \
+               echo "#define PCI_33M" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _66_,$@)" ] ; then \
+               echo "...66M..." ; \
+               echo "#define PCI_66M" >>$(obj)include/config.h ; \
+       fi ;
+       @$(MKCONFIG) -a MPC832XEMDS ppc mpc83xx mpc832xemds
+
+MPC8349EMDS_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) ppc mpc83xx mpc8349emds
+
+MPC8349ITX_config \
+MPC8349ITX_LOWBOOT_config \
+MPC8349ITXGP_config:   unconfig
+       @mkdir -p $(obj)include
+       @mkdir -p $(obj)board/mpc8349itx
+       @echo "#define CONFIG_$(subst _LOWBOOT,,$(@:_config=))" >> $(obj)include/config.h
+       @if [ "$(findstring GP,$@)" ] ; then \
+               echo "TEXT_BASE = 0xFE000000" >$(obj)board/mpc8349itx/config.tmp ; \
+       fi
+       @if [ "$(findstring LOWBOOT,$@)" ] ; then \
+               echo "TEXT_BASE = 0xFE000000" >$(obj)board/mpc8349itx/config.tmp ; \
+       fi
+       @$(MKCONFIG) -a -n $(@:_config=) MPC8349ITX ppc mpc83xx mpc8349itx
+
+MPC8360EMDS_config \
+MPC8360EMDS_HOST_33_config \
+MPC8360EMDS_HOST_66_config \
+MPC8360EMDS_SLAVE_config:      unconfig
+       @mkdir -p $(obj)include
+       @echo "" >$(obj)include/config.h ; \
+       if [ "$(findstring _HOST_,$@)" ] ; then \
+               echo "... PCI HOST " ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _SLAVE_,$@)" ] ; then \
+               echo "...PCI SLAVE 66M"  ; \
+               echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PCISLAVE" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _33_,$@)" ] ; then \
+               echo "...33M ..." ; \
+               echo "#define PCI_33M" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _66_,$@)" ] ; then \
+               echo "...66M..." ; \
+               echo "#define PCI_66M" >>$(obj)include/config.h ; \
+       fi ;
+       @$(MKCONFIG) -a MPC8360EMDS ppc mpc83xx mpc8360emds
+
+sbc8349_config:                unconfig
+       @$(MKCONFIG) $(@:_config=) ppc mpc83xx sbc8349
 
 TQM834x_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc83xx tqm834x
 
-MPC8349EMDS_config:    unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc83xx mpc8349emds
 
 #########################################################################
 ## MPC85xx Systems
@@ -1612,10 +1762,10 @@ MPC8540EVAL_66_slave_config:      unconfig
        @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 ; \
@@ -1631,12 +1781,18 @@ MPC8560ADS_config:      unconfig
 MPC8541CDS_config:     unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8541cds cds
 
+MPC8544DS_config:      unconfig
+       @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8544ds freescale
+
 MPC8548CDS_config:     unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8548cds cds
 
 MPC8555CDS_config:     unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8555cds cds
 
+MPC8568MDS_config:     unconfig
+       @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8568mds
+
 PM854_config:  unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx pm854
 
@@ -1672,6 +1828,17 @@ sbc8560_66_config:      unconfig
 stxgp3_config:         unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx stxgp3
 
+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         \
 TQM8555_config         \
@@ -1692,7 +1859,7 @@ TQM8560_config:           unconfig
 #########################################################################
 
 MPC8641HPCN_config:    unconfig
-       @./mkconfig $(@:_config=) ppc mpc86xx mpc8641hpcn
+       @$(MKCONFIG) $(@:_config=) ppc mpc86xx mpc8641hpcn
 
 
 #########################################################################
@@ -1721,9 +1888,22 @@ EVB64260_config  \
 EVB64260_750CX_config: unconfig
        @$(MKCONFIG) EVB64260 ppc 74xx_7xx evb64260
 
+mpc7448hpc2_config:  unconfig
+       @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx mpc7448hpc2
+
 P3G4_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx evb64260
 
+p3m750_config  \
+p3m7448_config:                unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring 750_,$@)" ] ; then \
+               echo "#define CONFIG_P3M750" >>$(obj)include/config.h ; \
+       else \
+               echo "#define CONFIG_P3M7448" >>$(obj)include/config.h ; \
+       fi
+       @$(MKCONFIG) -a p3mx ppc 74xx_7xx p3mx prodrive
+
 PCIPPC2_config \
 PCIPPC6_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx pcippc2
@@ -1787,7 +1967,7 @@ ap966_config              \
 ap922_config           \
 ap922_XA10_config      \
 ap7_config             \
-ap720t_config                  \
+ap720t_config          \
 ap920t_config          \
 ap926ejs_config                \
 ap946es_config: unconfig
@@ -1846,13 +2026,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
@@ -1944,7 +2124,7 @@ cm4008_config     :       unconfig
 cm41xx_config  :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm920t cm41xx NULL ks8695
 
-gth2_config            :       unconfig
+gth2_config            :       unconfig
        @mkdir -p $(obj)include
        @ >$(obj)include/config.h
        @echo "#define CONFIG_GTH2 1" >>$(obj)include/config.h
@@ -1976,6 +2156,12 @@ modnet50_config :        unconfig
 evb4510_config :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm720t evb4510
 
+lpc2292sodimm_config:  unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm720t lpc2292sodimm NULL lpc2292
+
+SMN42_config   :       unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm720t SMN42 siemens lpc2292
+
 #########################################################################
 ## XScale Systems
 #########################################################################
@@ -2013,8 +2199,16 @@ pleb2_config     :       unconfig
 logodl_config  :       unconfig
        @$(MKCONFIG) $(@:_config=) arm pxa logodl
 
-pdnb3_config   :       unconfig
-       @$(MKCONFIG) $(@:_config=) arm ixp pdnb3 prodrive
+pdnb3_config \
+scpu_config:    unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring scpu_,$@)" ] ; then \
+               echo "#define CONFIG_SCPU"      >>$(obj)include/config.h ; \
+               echo "... on SCPU board variant" ; \
+       else \
+               >$(obj)include/config.h ; \
+       fi
+       @$(MKCONFIG) -a pdnb3 arm ixp pdnb3 prodrive
 
 pxa255_idp_config:     unconfig
        @$(MKCONFIG) $(@:_config=) arm pxa pxa255_idp
@@ -2090,19 +2284,19 @@ tb0229_config: unconfig
 #########################################################################
 ## MIPS32 AU1X00
 #########################################################################
-dbau1000_config                :       unconfig
+dbau1000_config                :       unconfig
        @mkdir -p $(obj)include
        @ >$(obj)include/config.h
        @echo "#define CONFIG_DBAU1000 1" >>$(obj)include/config.h
        @$(MKCONFIG) -a dbau1x00 mips mips dbau1x00
 
-dbau1100_config                :       unconfig
+dbau1100_config                :       unconfig
        @mkdir -p $(obj)include
        @ >$(obj)include/config.h
        @echo "#define CONFIG_DBAU1100 1" >>$(obj)include/config.h
        @$(MKCONFIG) -a dbau1x00 mips mips dbau1x00
 
-dbau1500_config                :       unconfig
+dbau1500_config                :       unconfig
        @mkdir -p $(obj)include
        @ >$(obj)include/config.h
        @echo "#define CONFIG_DBAU1500 1" >>$(obj)include/config.h
@@ -2120,7 +2314,7 @@ dbau1550_el_config        :       unconfig
        @echo "#define CONFIG_DBAU1550 1" >>$(obj)include/config.h
        @$(MKCONFIG) -a dbau1x00 mips mips dbau1x00
 
-pb1000_config          :       unconfig
+pb1000_config          :       unconfig
        @mkdir -p $(obj)include
        @ >$(obj)include/config.h
        @echo "#define CONFIG_PB1000 1" >>$(obj)include/config.h
@@ -2233,17 +2427,32 @@ suzaku_config:  unconfig
        @echo "#define CONFIG_SUZAKU 1" >> $(obj)include/config.h
        @$(MKCONFIG) -a $(@:_config=) microblaze microblaze suzaku AtmarkTechno
 
+ml401_config:  unconfig
+       @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
+       @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
 #########################################################################
-ezkit533_config        :       unconfig
-       @$(MKCONFIG) $(@:_config=) blackfin bf533 ezkit533
+bf533-ezkit_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) blackfin bf533 bf533-ezkit
+
+bf533-stamp_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) blackfin bf533 bf533-stamp
 
-stamp_config   :       unconfig
-       @$(MKCONFIG) $(@:_config=) blackfin bf53stamp
+bf537-stamp_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) blackfin bf537 bf537-stamp
 
-dspstamp_config        :       unconfig
-       @$(MKCONFIG) $(@:_config=) blackfin bf533 dsp_stamp
+bf561-ezkit_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) blackfin bf561 bf561-ezkit
 
 #========================================================================
 # AVR32
@@ -2253,7 +2462,7 @@ dspstamp_config   :       unconfig
 #########################################################################
 
 atstk1002_config       :       unconfig
-       @./mkconfig $(@:_config=) avr32 at32ap atstk1000 atmel at32ap7000
+       @$(MKCONFIG) $(@:_config=) avr32 at32ap atstk1000 atmel at32ap7000
 
 #########################################################################
 #########################################################################
@@ -2270,7 +2479,7 @@ clean:
              $(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
@@ -2280,6 +2489,8 @@ clean:
        rm -f $(obj)board/netstar/*.srec $(obj)board/netstar/*.bin
        rm -f $(obj)board/trab/trab_fkt $(obj)board/voiceblue/eeprom
        rm -f $(obj)board/integratorap/u-boot.lds $(obj)board/integratorcp/u-boot.lds
+       rm -f $(obj)board/bf533-ezkit/u-boot.lds $(obj)board/bf533-stamp/u-boot.lds
+       rm -f $(obj)board/bf537-stamp/u-boot.lds $(obj)board/bf561-ezkit/u-boot.lds
        rm -f $(obj)include/bmp_logo.h
        rm -f $(obj)nand_spl/u-boot-spl $(obj)nand_spl/u-boot-spl.map
 
@@ -2291,7 +2502,7 @@ clobber:  clean
        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