]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - Makefile
bootm: Reduce the unnecessary memmove
[karo-tx-uboot.git] / Makefile
index 5007c8ee7fc1fd7f7b470cb64046d90cb33db48a..5ac2980296690bef0cd71e055b7b6fa5b761e84f 100644 (file)
--- a/Makefile
+++ b/Makefile
 # MA 02111-1307 USA
 #
 
-VERSION = 1
-PATCHLEVEL = 3
-SUBLEVEL = 4
+VERSION = 2009
+PATCHLEVEL = 01
+SUBLEVEL =
 EXTRAVERSION =
+ifneq "$(SUBLEVEL)" ""
 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
+else
+U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL)$(EXTRAVERSION)
+endif
+TIMESTAMP_FILE = $(obj)include/timestamp_autogenerated.h
 VERSION_FILE = $(obj)include/version_autogenerated.h
 
 HOSTARCH := $(shell uname -m | \
@@ -40,7 +45,12 @@ HOSTARCH := $(shell uname -m | \
 HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \
            sed -e 's/\(cygwin\).*/cygwin/')
 
-export HOSTARCH HOSTOS
+# Set shell to bash if possible, otherwise fall back to sh
+SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
+       else if [ -x /bin/bash ]; then echo /bin/bash; \
+       else echo sh; fi; fi)
+
+export HOSTARCH HOSTOS SHELL
 
 # Deal with colliding definitions from tcsh etc.
 VENDOR=
@@ -187,7 +197,7 @@ include $(TOPDIR)/config.mk
 OBJS  = cpu/$(CPU)/start.o
 ifeq ($(CPU),i386)
 OBJS += cpu/$(CPU)/start16.o
-OBJS += cpu/$(CPU)/reset.o
+OBJS += cpu/$(CPU)/resetvec.o
 endif
 ifeq ($(CPU),ppc4xx)
 OBJS += cpu/$(CPU)/resetvec.o
@@ -199,6 +209,7 @@ endif
 OBJS := $(addprefix $(obj),$(OBJS))
 
 LIBS  = lib_generic/libgeneric.a
+LIBS += lib_generic/lzma/liblzma.a
 LIBS += $(shell if [ -f board/$(VENDOR)/common/Makefile ]; then echo \
        "board/$(VENDOR)/common/lib$(VENDOR).a"; fi)
 LIBS += cpu/$(CPU)/lib$(CPU).a
@@ -216,6 +227,8 @@ LIBS += disk/libdisk.a
 LIBS += drivers/bios_emulator/libatibiosemu.a
 LIBS += drivers/block/libblock.a
 LIBS += drivers/dma/libdma.a
+LIBS += drivers/fpga/libfpga.a
+LIBS += drivers/gpio/libgpio.a
 LIBS += drivers/hwmon/libhwmon.a
 LIBS += drivers/i2c/libi2c.a
 LIBS += drivers/input/libinput.a
@@ -225,8 +238,10 @@ LIBS += drivers/mtd/libmtd.a
 LIBS += drivers/mtd/nand/libnand.a
 LIBS += drivers/mtd/nand_legacy/libnand_legacy.a
 LIBS += drivers/mtd/onenand/libonenand.a
+LIBS += drivers/mtd/ubi/libubi.a
 LIBS += drivers/mtd/spi/libspi_flash.a
 LIBS += drivers/net/libnet.a
+LIBS += drivers/net/phy/libphy.a
 LIBS += drivers/net/sk98lin/libsk98lin.a
 LIBS += drivers/pci/libpci.a
 LIBS += drivers/pcmcia/libpcmcia.a
@@ -236,6 +251,12 @@ LIBS += drivers/qe/qe.a
 endif
 ifeq ($(CPU),mpc85xx)
 LIBS += drivers/qe/qe.a
+LIBS += cpu/mpc8xxx/ddr/libddr.a
+TAG_SUBDIRS += cpu/mpc8xxx
+endif
+ifeq ($(CPU),mpc86xx)
+LIBS += cpu/mpc8xxx/ddr/libddr.a
+TAG_SUBDIRS += cpu/mpc8xxx
 endif
 LIBS += drivers/rtc/librtc.a
 LIBS += drivers/serial/libserial.a
@@ -247,7 +268,7 @@ LIBS += api/libapi.a
 LIBS += post/libpost.a
 
 LIBS := $(addprefix $(obj),$(LIBS))
-.PHONY : $(LIBS) $(VERSION_FILE)
+.PHONY : $(LIBS) $(TIMESTAMP_FILE) $(VERSION_FILE)
 
 LIBBOARD = board/$(BOARDDIR)/lib$(BOARD).a
 LIBBOARD := $(addprefix $(obj),$(LIBBOARD))
@@ -290,13 +311,13 @@ $(obj)u-boot.hex: $(obj)u-boot
                $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@
 
 $(obj)u-boot.srec:     $(obj)u-boot
-               $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@
+               $(OBJCOPY) -O srec $< $@
 
 $(obj)u-boot.bin:      $(obj)u-boot
                $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
 
 $(obj)u-boot.ldr:      $(obj)u-boot
-               $(LDR) -T $(CONFIG_BFIN_CPU) -f -c $@ $< $(LDR_FLAGS)
+               $(LDR) -T $(CONFIG_BFIN_CPU) -c $@ $< $(LDR_FLAGS)
 
 $(obj)u-boot.ldr.hex:  $(obj)u-boot.ldr
                $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@ -I binary
@@ -327,7 +348,7 @@ $(obj)u-boot:               depend $(SUBDIRS) $(OBJS) $(LIBBOARD) $(LIBS) $(LDSCRIPT)
 $(OBJS):       depend $(obj)include/autoconf.mk
                $(MAKE) -C cpu/$(CPU) $(if $(REMOTE_BUILD),$@,$(notdir $@))
 
-$(LIBS):       depend $(obj)include/autoconf.mk
+$(LIBS):       depend $(obj)include/autoconf.mk $(SUBDIRS)
                $(MAKE) -C $(dir $(subst $(obj),,$@))
 
 $(LIBBOARD):   depend $(LIBS) $(obj)include/autoconf.mk
@@ -339,13 +360,13 @@ $(SUBDIRS):       depend $(obj)include/autoconf.mk
 $(LDSCRIPT):   depend $(obj)include/autoconf.mk
                $(MAKE) -C $(dir $@) $(notdir $@)
 
-$(NAND_SPL):   $(VERSION_FILE) $(obj)include/autoconf.mk
+$(NAND_SPL):   $(TIMESTAMP_FILE) $(VERSION_FILE) $(obj)include/autoconf.mk
                $(MAKE) -C nand_spl/board/$(BOARDDIR) all
 
 $(U_BOOT_NAND):        $(NAND_SPL) $(obj)u-boot.bin $(obj)include/autoconf.mk
                cat $(obj)nand_spl/u-boot-spl-16k.bin $(obj)u-boot.bin > $(obj)u-boot-nand.bin
 
-$(ONENAND_IPL):        $(VERSION_FILE) $(obj)include/autoconf.mk
+$(ONENAND_IPL):        $(TIMESTAMP_FILE) $(VERSION_FILE) $(obj)include/autoconf.mk
                $(MAKE) -C onenand_ipl/board/$(BOARDDIR) all
 
 $(U_BOOT_ONENAND):     $(ONENAND_IPL) $(obj)u-boot.bin $(obj)include/autoconf.mk
@@ -354,10 +375,13 @@ $(U_BOOT_ONENAND):        $(ONENAND_IPL) $(obj)u-boot.bin $(obj)include/autoconf.mk
 
 $(VERSION_FILE):
                @( printf '#define U_BOOT_VERSION "U-Boot %s%s"\n' "$(U_BOOT_VERSION)" \
-                '$(shell $(CONFIG_SHELL) $(TOPDIR)/tools/setlocalversion $(TOPDIR))' \
-                ) > $@.tmp
+                '$(shell $(TOPDIR)/tools/setlocalversion $(TOPDIR))' ) > $@.tmp
                @cmp -s $@ $@.tmp && rm -f $@.tmp || mv -f $@.tmp $@
 
+$(TIMESTAMP_FILE):
+               @date +'#define U_BOOT_DATE "%b %d %C%y"' > $@
+               @date +'#define U_BOOT_TIME "%T"' >> $@
+
 gdbtools:
                $(MAKE) -C tools/gdb all || exit 1
 
@@ -367,7 +391,7 @@ updater:
 env:
                $(MAKE) -C tools/env all MTD_VERSION=${MTD_VERSION} || exit 1
 
-depend dep:    $(VERSION_FILE)
+depend dep:    $(TIMESTAMP_FILE) $(VERSION_FILE)
                for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir _depend ; done
 
 TAG_SUBDIRS += include
@@ -384,6 +408,7 @@ TAG_SUBDIRS += disk
 TAG_SUBDIRS += common
 TAG_SUBDIRS += drivers/bios_emulator
 TAG_SUBDIRS += drivers/block
+TAG_SUBDIRS += drivers/gpio
 TAG_SUBDIRS += drivers/hwmon
 TAG_SUBDIRS += drivers/i2c
 TAG_SUBDIRS += drivers/input
@@ -440,7 +465,8 @@ $(obj)include/autoconf.mk: $(obj)include/config.h
        set -e ; \
        : Extract the config macros ; \
        $(CPP) $(CFLAGS) -DDO_DEPS_ONLY -dM include/common.h | \
-               sed -n -f tools/scripts/define2mk.sed > $@
+               sed -n -f tools/scripts/define2mk.sed > $@.tmp && \
+       mv $@.tmp $@
 
 sinclude $(obj)include/autoconf.mk.dep
 
@@ -448,7 +474,7 @@ sinclude $(obj)include/autoconf.mk.dep
 else   # !config.mk
 all $(obj)u-boot.hex $(obj)u-boot.srec $(obj)u-boot.bin \
 $(obj)u-boot.img $(obj)u-boot.dis $(obj)u-boot \
-$(SUBDIRS) $(VERSION_FILE) gdbtools updater env depend \
+$(SUBDIRS) $(TIMESTAMP_FILE) $(VERSION_FILE) gdbtools updater env depend \
 dep tags ctags etags cscope $(obj)System.map:
        @echo "System not configured - see README" >&2
        @ exit 1
@@ -622,6 +648,9 @@ mecp5200_config:  unconfig
 motionpro_config:      unconfig
        @$(MKCONFIG) motionpro ppc mpc5xxx motionpro
 
+mucmc52_config:                unconfig
+       @$(MKCONFIG) mucmc52 ppc mpc5xxx mucmc52
+
 munices_config:        unconfig
        @$(MKCONFIG) munices ppc mpc5xxx munices
 
@@ -909,14 +938,11 @@ MBX860T_config:   unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc8xx mbx8xx
 
 mgsuvd_config:         unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc8xx mgsuvd
+       @$(MKCONFIG) $(@:_config=) ppc mpc8xx mgsuvd keymile
 
 MHPC_config:           unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc8xx mhpc eltec
 
-MVS1_config :          unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc8xx mvs1
-
 xtract_NETVIA = $(subst _V2,,$(subst _config,,$1))
 
 NETVIA_V2_config \
@@ -1054,7 +1080,7 @@ RPXlite_DW_config:        unconfig
                  $(XECHO) "... with LCD display ..."; \
                }
        @[ -z "$(findstring _NVRAM,$@)" ] || \
-               { echo "#define  CFG_ENV_IS_IN_NVRAM"   >>$(obj)include/config.h ; \
+               { echo "#define  CONFIG_ENV_IS_IN_NVRAM"        >>$(obj)include/config.h ; \
                  $(XECHO) "... with ENV in NVRAM ..."; \
                }
        @$(MKCONFIG) -a RPXlite_DW ppc mpc8xx RPXlite_dw
@@ -1196,7 +1222,8 @@ bubinga_config:   unconfig
 CANBT_config:  unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx canbt esd
 
-# Canyonlands & Glacier use different U-Boot images
+# Arches, Canyonlands & Glacier use different U-Boot images
+arches_config \
 canyonlands_config \
 glacier_config:        unconfig
        @mkdir -p $(obj)include
@@ -1237,12 +1264,12 @@ CMS700_config:  unconfig
 CPCI2DP_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx cpci2dp esd
 
-CPCI405_config \
-CPCI4052_config        \
+CPCI405_config         \
+CPCI4052_config                \
 CPCI405DT_config       \
 CPCI405AB_config:      unconfig
+       @mkdir -p $(obj)board/esd/cpci405
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx cpci405 esd
-       @echo "BOARD_REVISION = $(@:_config=)"  >> $(obj)include/config.mk
 
 CPCIISER4_config:      unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx cpciiser4 esd
@@ -1277,9 +1304,30 @@ ERIC_config:     unconfig
 EXBITGEN_config:       unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx exbitgen
 
+fx12mm_flash_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc405-generic
+       @mkdir -p $(obj)include $(obj)board/avnet/fx12mm
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc405-generic/u-boot-rom.lds"\
+               > $(obj)board/avnet/fx12mm/config.tmp
+       @echo "TEXT_BASE := 0xFFCB0000" \
+               >> $(obj)board/avnet/fx12mm/config.tmp
+       @$(MKCONFIG) fx12mm ppc ppc4xx fx12mm avnet
+
+fx12mm_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc405-generic
+       @mkdir -p $(obj)include $(obj)board/avnet/fx12mm
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc405-generic/u-boot-ram.lds"\
+               > $(obj)board/avnet/fx12mm/config.tmp
+       @echo "TEXT_BASE := 0x03000000" \
+               >> $(obj)board/avnet/fx12mm/config.tmp
+       @$(MKCONFIG) fx12mm ppc ppc4xx fx12mm avnet
+
 G2000_config:  unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx g2000
 
+gdppc440etx_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx gdppc440etx gdsys
+
 hcu4_config:   unconfig
        @mkdir -p $(obj)board/netstal/common
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx hcu4 netstal
@@ -1351,16 +1399,26 @@ ML2_config:     unconfig
 ml300_config:  unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx ml300 xilinx
 
-ml507_flash_config:    unconfig
+ml507_flash_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc440-generic
        @mkdir -p $(obj)include $(obj)board/xilinx/ml507
-       @cp $(obj)board/xilinx/ml507/u-boot-rom.lds  $(obj)board/xilinx/ml507/u-boot.lds
-       @echo "TEXT_BASE = 0xFE360000" > $(obj)board/xilinx/ml507/config.tmp
-       @$(MKCONFIG) $(@:_flash_config=) ppc ppc4xx ml507 xilinx
-
-ml507_config:  unconfig
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc440-generic/u-boot-rom.lds"\
+               > $(obj)board/xilinx/ml507/config.tmp
+       @echo "TEXT_BASE := 0xFE360000" \
+               >> $(obj)board/xilinx/ml507/config.tmp
+       @$(MKCONFIG) ml507 ppc ppc4xx ml507 xilinx
+
+ml507_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc440-generic
        @mkdir -p $(obj)include $(obj)board/xilinx/ml507
-       @cp $(obj)board/xilinx/ml507/u-boot-ram.lds  $(obj)board/xilinx/ml507/u-boot.lds
-       @$(MKCONFIG) $(@:_config=) ppc ppc4xx ml507 xilinx
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc440-generic/u-boot-ram.lds"\
+               > $(obj)board/xilinx/ml507/config.tmp
+       @echo "TEXT_BASE := 0x04000000"  \
+               >> $(obj)board/xilinx/ml507/config.tmp
+       @$(MKCONFIG) ml507 ppc ppc4xx ml507 xilinx
+
+neo_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) ppc ppc4xx neo gdsys
 
 ocotea_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx ocotea amcc
@@ -1456,6 +1514,24 @@ taihu_config:    unconfig
 taishan_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx taishan amcc
 
+v5fx30teval_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc440-generic
+       @mkdir -p $(obj)include $(obj)board/avnet/v5fx30teval
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc440-generic/u-boot-ram.lds"\
+               > $(obj)board/avnet/v5fx30teval/config.tmp
+       @echo "TEXT_BASE := 0x03000000" \
+               >> $(obj)board/avnet/v5fx30teval/config.tmp
+       @$(MKCONFIG) v5fx30teval ppc ppc4xx v5fx30teval avnet
+
+v5fx30teval_flash_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc440-generic
+       @mkdir -p $(obj)include $(obj)board/avnet/v5fx30teval
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc440-generic/u-boot-rom.lds"\
+               > $(obj)board/avnet/v5fx30teval/config.tmp
+       @echo "TEXT_BASE := 0xFF1C0000" \
+               >> $(obj)board/avnet/v5fx30teval/config.tmp
+       @$(MKCONFIG) v5fx30teval ppc ppc4xx v5fx30teval avnet
+
 VOH405_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx voh405 esd
 
@@ -1474,6 +1550,38 @@ sycamore_config: unconfig
 WUH405_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx wuh405 esd
 
+xilinx-ppc405-generic_flash_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc405-generic
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc405-generic/u-boot-rom.lds"\
+               > $(obj)board/xilinx/ppc405-generic/config.tmp
+       @echo "TEXT_BASE := 0xFE360000" \
+               >> $(obj)board/xilinx/ppc405-generic/config.tmp
+       @$(MKCONFIG) xilinx-ppc405-generic ppc ppc4xx ppc405-generic xilinx
+
+xilinx-ppc405-generic_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc405-generic
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc405-generic/u-boot-ram.lds"\
+               > $(obj)board/xilinx/ppc405-generic/config.tmp
+       @echo "TEXT_BASE := 0x04000000" \
+               >> $(obj)board/xilinx/ppc405-generic/config.tmp
+       @$(MKCONFIG) xilinx-ppc405-generic ppc ppc4xx ppc405-generic xilinx
+
+xilinx-ppc440-generic_flash_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc440-generic
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc440-generic/u-boot-rom.lds"\
+               > $(obj)board/xilinx/ppc440-generic/config.tmp
+       @echo "TEXT_BASE := 0xFE360000" \
+               >> $(obj)board/xilinx/ppc440-generic/config.tmp
+       @$(MKCONFIG) xilinx-ppc440-generic ppc ppc4xx ppc440-generic xilinx
+
+xilinx-ppc440-generic_config: unconfig
+       @mkdir -p $(obj)include $(obj)board/xilinx/ppc440-generic
+       @echo "LDSCRIPT:=$(SRCTREE)/board/xilinx/ppc440-generic/u-boot-ram.lds"\
+               > $(obj)board/xilinx/ppc440-generic/config.tmp
+       @echo "TEXT_BASE := 0x04000000" \
+               >> $(obj)board/xilinx/ppc440-generic/config.tmp
+       @$(MKCONFIG) xilinx-ppc440-generic ppc ppc4xx ppc440-generic xilinx
+
 XPEDITE1K_config:      unconfig
        @$(MKCONFIG) $(@:_config=) ppc ppc4xx xpedite1k
 
@@ -1647,12 +1755,12 @@ ISPAN_config            \
 ISPAN_REVB_config:     unconfig
        @mkdir -p $(obj)include
        @if [ "$(findstring _REVB_,$@)" ] ; then \
-               echo "#define CFG_REV_B" > $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_REV_B" > $(obj)include/config.h ; \
        fi
        @$(MKCONFIG) -a ISPAN ppc mpc8260 ispan
 
 mgcoge_config  :       unconfig
-       @$(MKCONFIG) mgcoge ppc mpc8260 mgcoge
+       @$(MKCONFIG) mgcoge ppc mpc8260 mgcoge keymile
 
 MPC8260ADS_config      \
 MPC8260ADS_lowboot_config      \
@@ -1674,8 +1782,8 @@ PQ2FADS-ZU_66MHz_lowboot_config   \
        @mkdir -p $(obj)include
        @mkdir -p $(obj)board/freescale/mpc8260ads
        $(if $(findstring PQ2FADS,$@), \
-       @echo "#define CONFIG_ADSTYPE CFG_PQ2FADS" > $(obj)include/config.h, \
-       @echo "#define CONFIG_ADSTYPE CFG_"$(subst MPC,,$(word 1,$(subst _, ,$@))) > $(obj)include/config.h)
+       @echo "#define CONFIG_ADSTYPE CONFIG_SYS_PQ2FADS" > $(obj)include/config.h, \
+       @echo "#define CONFIG_ADSTYPE CONFIG_SYS_"$(subst MPC,,$(word 1,$(subst _, ,$@))) > $(obj)include/config.h)
        $(if $(findstring MHz,$@), \
        @echo "#define CONFIG_8260_CLKIN" $(subst MHz,,$(word 2,$(subst _, ,$@)))"000000" >> $(obj)include/config.h, \
        $(if $(findstring VR,$@), \
@@ -1689,6 +1797,15 @@ PQ2FADS-ZU_66MHz_lowboot_config  \
 MPC8266ADS_config:     unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc8260 mpc8266ads freescale
 
+muas3001_dev_config \
+muas3001_config        :       unconfig
+       @mkdir -p $(obj)include
+       @mkdir -p $(obj)board/muas3001
+       @if [ "$(findstring dev,$@)" ] ; then \
+               echo "#define CONFIG_MUAS_DEV_BOARD" > $(obj)include/config.h ; \
+       fi
+       @$(MKCONFIG) -a muas3001 ppc mpc8260 muas3001
+
 # PM825/PM826 default configuration:  small (= 8 MB) Flash / boot from 64-bit flash
 PM825_config   \
 PM825_ROMBOOT_config   \
@@ -1829,7 +1946,27 @@ ZPC1900_config: unconfig
 ## Coldfire
 #########################################################################
 
-M52277EVB_config:      unconfig
+M52277EVB_config \
+M52277EVB_spansion_config \
+M52277EVB_stmicro_config :     unconfig
+       @case "$@" in \
+       M52277EVB_config)               FLASH=SPANSION;; \
+       M52277EVB_spansion_config)      FLASH=SPANSION;; \
+       M52277EVB_stmicro_config)       FLASH=STMICRO;; \
+       esac; \
+       if [ "$${FLASH}" = "SPANSION" ] ; then \
+               echo "#define CONFIG_SYS_SPANSION_BOOT" >> $(obj)include/config.h ; \
+               echo "TEXT_BASE = 0x00000000" > $(obj)board/freescale/m52277evb/config.tmp ; \
+               cp $(obj)board/freescale/m52277evb/u-boot.spa $(obj)board/freescale/m52277evb/u-boot.lds ; \
+               $(XECHO) "... with SPANSION boot..." ; \
+       fi; \
+       if [ "$${FLASH}" = "STMICRO" ] ; then \
+               echo "#define CONFIG_CF_SBF"    >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_STMICRO_BOOT"  >> $(obj)include/config.h ; \
+               echo "TEXT_BASE = 0x43E00000" > $(obj)board/freescale/m52277evb/config.tmp ; \
+               cp $(obj)board/freescale/m52277evb/u-boot.stm $(obj)board/freescale/m52277evb/u-boot.lds ; \
+               $(XECHO) "... with ST Micro boot..." ; \
+       fi
        @$(MKCONFIG) -a M52277EVB m68k mcf5227x m52277evb freescale
 
 M5235EVB_config \
@@ -1889,6 +2026,9 @@ M5275EVB_config :         unconfig
 M5282EVB_config :              unconfig
        @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5282evb freescale
 
+M53017EVB_config :             unconfig
+       @$(MKCONFIG) $(@:_config=) m68k mcf532x m53017evb freescale
+
 M5329AFEE_config \
 M5329BFEE_config :     unconfig
        @case "$@" in \
@@ -1918,19 +2058,19 @@ M54451EVB_stmicro_config :      unconfig
        M54451EVB_stmicro_config)       FLASH=STMICRO;; \
        esac; \
        if [ "$${FLASH}" = "SPANSION" ] ; then \
-               echo "#define CFG_SPANSION_BOOT"        >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_SPANSION_BOOT" >> $(obj)include/config.h ; \
                echo "TEXT_BASE = 0x00000000" > $(obj)board/freescale/m54451evb/config.tmp ; \
                cp $(obj)board/freescale/m54451evb/u-boot.spa $(obj)board/freescale/m54451evb/u-boot.lds ; \
                $(XECHO) "... with SPANSION boot..." ; \
        fi; \
        if [ "$${FLASH}" = "STMICRO" ] ; then \
                echo "#define CONFIG_CF_SBF"    >> $(obj)include/config.h ; \
-               echo "#define CFG_STMICRO_BOOT" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_STMICRO_BOOT"  >> $(obj)include/config.h ; \
                echo "TEXT_BASE = 0x47E00000" > $(obj)board/freescale/m54451evb/config.tmp ; \
                cp $(obj)board/freescale/m54451evb/u-boot.stm $(obj)board/freescale/m54451evb/u-boot.lds ; \
                $(XECHO) "... with ST Micro boot..." ; \
        fi; \
-       echo "#define CFG_INPUT_CLKSRC 24000000" >> $(obj)include/config.h ;
+       echo "#define CONFIG_SYS_INPUT_CLKSRC 24000000" >> $(obj)include/config.h ;
        @$(MKCONFIG) -a M54451EVB m68k mcf5445x m54451evb freescale
 
 M54455EVB_config \
@@ -1952,25 +2092,25 @@ M54455EVB_stm33_config :        unconfig
        M54455EVB_stm33_config)         FLASH=STMICRO; FREQ=33333333;; \
        esac; \
        if [ "$${FLASH}" = "INTEL" ] ; then \
-               echo "#define CFG_INTEL_BOOT" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_INTEL_BOOT" >> $(obj)include/config.h ; \
                echo "TEXT_BASE = 0x00000000" > $(obj)board/freescale/m54455evb/config.tmp ; \
                cp $(obj)board/freescale/m54455evb/u-boot.int $(obj)board/freescale/m54455evb/u-boot.lds ; \
                $(XECHO) "... with INTEL boot..." ; \
        fi; \
        if [ "$${FLASH}" = "ATMEL" ] ; then \
-               echo "#define CFG_ATMEL_BOOT"   >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_ATMEL_BOOT"    >> $(obj)include/config.h ; \
                echo "TEXT_BASE = 0x04000000" > $(obj)board/freescale/m54455evb/config.tmp ; \
                cp $(obj)board/freescale/m54455evb/u-boot.atm $(obj)board/freescale/m54455evb/u-boot.lds ; \
                $(XECHO) "... with ATMEL boot..." ; \
        fi; \
        if [ "$${FLASH}" = "STMICRO" ] ; then \
                echo "#define CONFIG_CF_SBF"    >> $(obj)include/config.h ; \
-               echo "#define CFG_STMICRO_BOOT" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_STMICRO_BOOT"  >> $(obj)include/config.h ; \
                echo "TEXT_BASE = 0x4FE00000" > $(obj)board/freescale/m54455evb/config.tmp ; \
                cp $(obj)board/freescale/m54455evb/u-boot.stm $(obj)board/freescale/m54455evb/u-boot.lds ; \
                $(XECHO) "... with ST Micro boot..." ; \
        fi; \
-       echo "#define CFG_INPUT_CLKSRC $${FREQ}" >> $(obj)include/config.h ; \
+       echo "#define CONFIG_SYS_INPUT_CLKSRC $${FREQ}" >> $(obj)include/config.h ; \
        $(XECHO) "... with $${FREQ}Hz input clock"
        @$(MKCONFIG) -a M54455EVB m68k mcf5445x m54455evb freescale
 
@@ -1990,20 +2130,20 @@ M5475GFE_config :       unconfig
        M5475FFE_config)        BOOT=2;CODE=32;VID=1;USB=1;RAM=64;RAM1=64;; \
        M5475GFE_config)        BOOT=4;CODE=0;VID=0;USB=0;RAM=64;RAM1=0;; \
        esac; \
-       echo "#define CFG_BUSCLK        133333333" > $(obj)include/config.h ; \
-       echo "#define CFG_BOOTSZ        $${BOOT}" >> $(obj)include/config.h ; \
-       echo "#define CFG_DRAMSZ        $${RAM}" >> $(obj)include/config.h ; \
+       echo "#define CONFIG_SYS_BUSCLK 133333333" > $(obj)include/config.h ; \
+       echo "#define CONFIG_SYS_BOOTSZ $${BOOT}" >> $(obj)include/config.h ; \
+       echo "#define CONFIG_SYS_DRAMSZ $${RAM}" >> $(obj)include/config.h ; \
        if [ "$${RAM1}" != "0" ] ; then \
-               echo "#define CFG_DRAMSZ1       $${RAM1}" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_DRAMSZ1        $${RAM1}" >> $(obj)include/config.h ; \
        fi; \
        if [ "$${CODE}" != "0" ] ; then \
-               echo "#define CFG_NOR1SZ        $${CODE}" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_NOR1SZ $${CODE}" >> $(obj)include/config.h ; \
        fi; \
        if [ "$${VID}" == "1" ] ; then \
-               echo "#define CFG_VIDEO" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_VIDEO" >> $(obj)include/config.h ; \
        fi; \
        if [ "$${USB}" == "1" ] ; then \
-               echo "#define CFG_USBCTRL" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_USBCTRL" >> $(obj)include/config.h ; \
        fi
        @$(MKCONFIG) -a M5475EVB m68k mcf547x_8x m547xevb freescale
 
@@ -2025,20 +2165,20 @@ M5485HFE_config :       unconfig
        M5485GFE_config)        BOOT=4;CODE=0;VID=0;USB=0;RAM=64;RAM1=0;; \
        M5485HFE_config)        BOOT=2;CODE=16;VID=1;USB=0;RAM=64;RAM1=0;; \
        esac; \
-       echo "#define CFG_BUSCLK        100000000" > $(obj)include/config.h ; \
-       echo "#define CFG_BOOTSZ        $${BOOT}" >> $(obj)include/config.h ; \
-       echo "#define CFG_DRAMSZ        $${RAM}" >> $(obj)include/config.h ; \
+       echo "#define CONFIG_SYS_BUSCLK 100000000" > $(obj)include/config.h ; \
+       echo "#define CONFIG_SYS_BOOTSZ $${BOOT}" >> $(obj)include/config.h ; \
+       echo "#define CONFIG_SYS_DRAMSZ $${RAM}" >> $(obj)include/config.h ; \
        if [ "$${RAM1}" != "0" ] ; then \
-               echo "#define CFG_DRAMSZ1       $${RAM1}" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_DRAMSZ1        $${RAM1}" >> $(obj)include/config.h ; \
        fi; \
        if [ "$${CODE}" != "0" ] ; then \
-               echo "#define CFG_NOR1SZ        $${CODE}" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_NOR1SZ $${CODE}" >> $(obj)include/config.h ; \
        fi; \
        if [ "$${VID}" == "1" ] ; then \
-               echo "#define CFG_VIDEO" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_VIDEO" >> $(obj)include/config.h ; \
        fi; \
        if [ "$${USB}" == "1" ] ; then \
-               echo "#define CFG_USBCTRL" >> $(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_USBCTRL" >> $(obj)include/config.h ; \
        fi
        @$(MKCONFIG) -a M5485EVB m68k mcf547x_8x m548xevb freescale
 
@@ -2049,6 +2189,9 @@ TASREG_config :           unconfig
 ## MPC83xx Systems
 #########################################################################
 
+kmeter1_config: unconfig
+       @$(MKCONFIG) kmeter1 ppc mpc83xx kmeter1 keymile
+
 MPC8313ERDB_33_config \
 MPC8313ERDB_66_config \
 MPC8313ERDB_NAND_33_config \
@@ -2057,18 +2200,21 @@ MPC8313ERDB_NAND_66_config: unconfig
        @mkdir -p $(obj)board/freescale/mpc8313erdb
        @if [ "$(findstring _33_,$@)" ] ; then \
                $(XECHO) -n "...33M ..." ; \
-               echo "#define CFG_33MHZ" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_33MHZ" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _66_,$@)" ] ; then \
                $(XECHO) -n "...66M..." ; \
-               echo "#define CFG_66MHZ" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_SYS_66MHZ" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _NAND_,$@)" ] ; then \
                $(XECHO) -n "...NAND..." ; \
-               echo "TEXT_BASE = 0x00100000" > $(obj)/board/freescale/mpc8313erdb/config.tmp ; \
+               echo "TEXT_BASE = 0x00100000" > $(obj)board/freescale/mpc8313erdb/config.tmp ; \
                echo "#define CONFIG_NAND_U_BOOT" >>$(obj)include/config.h ; \
        fi ;
        @$(MKCONFIG) -a MPC8313ERDB ppc mpc83xx mpc8313erdb freescale
+       @if [ "$(findstring _NAND_,$@)" ] ; then \
+               echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk ; \
+       fi ;
 
 MPC8315ERDB_config: unconfig
        @$(MKCONFIG) -a MPC8315ERDB ppc mpc83xx mpc8315erdb freescale
@@ -2180,11 +2326,26 @@ MPC837XERDB_config:     unconfig
        @$(MKCONFIG) -a MPC837XERDB ppc mpc83xx mpc837xerdb freescale
 
 MVBLM7_config: unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc83xx mvblm7
+       @$(MKCONFIG) $(@:_config=) ppc mpc83xx mvblm7 matrix_vision
 
 sbc8349_config:                unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc83xx sbc8349
 
+SIMPC8313_LP_config \
+SIMPC8313_SP_config: unconfig
+       @mkdir -p $(obj)include
+       @mkdir -p $(obj)board/sheldon/simpc8313
+       @if [ "$(findstring _LP_,$@)" ] ; then \
+               $(XECHO) -n "...Large Page NAND..." ; \
+               echo "#define CONFIG_NAND_LP" >> $(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _SP_,$@)" ] ; then \
+               $(XECHO) -n "...Small Page NAND..." ; \
+               echo "#define CONFIG_NAND_SP" >> $(obj)include/config.h ; \
+       fi ;
+       @$(MKCONFIG) -a SIMPC8313 ppc mpc83xx simpc8313 sheldon
+       @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
+
 TQM834x_config:        unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc83xx tqm834x tqc
 
@@ -2196,6 +2357,9 @@ TQM834x_config:   unconfig
 ATUM8548_config:       unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx atum8548
 
+MPC8536DS_config:       unconfig
+       @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8536ds freescale
+
 MPC8540ADS_config:     unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8540ads freescale
 
@@ -2255,6 +2419,15 @@ MPC8555CDS_config:       unconfig
 MPC8568MDS_config:     unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8568mds freescale
 
+MPC8572DS_36BIT_config \
+MPC8572DS_config:       unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _36BIT_,$@)" ] ; then \
+               echo "#define CONFIG_PHYS_64BIT" >>$(obj)include/config.h ; \
+               $(XECHO) "... enabling 36-bit physical addressing." ; \
+       fi
+       @$(MKCONFIG) -a MPC8572DS ppc mpc85xx mpc8572ds freescale
+
 PM854_config:  unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc85xx pm854
 
@@ -2306,16 +2479,26 @@ stxssa_4M_config:       unconfig
 TQM8540_config         \
 TQM8541_config         \
 TQM8548_config         \
+TQM8548_AG_config      \
+TQM8548_BE_config      \
 TQM8555_config         \
 TQM8560_config:                unconfig
        @mkdir -p $(obj)include
-       @CTYPE=$(subst TQM,,$(@:_config=)); \
-       $(XECHO) "... TQM"$${CTYPE}; \
+       @BTYPE=$(@:_config=); \
+       CTYPE=$(subst TQM,,$(subst _AG,,$(subst _BE,,$(@:_config=)))); \
+       $(XECHO) "... "$${BTYPE}" (MPC"$${CTYPE}")"; \
        echo "#define CONFIG_MPC$${CTYPE}">>$(obj)include/config.h; \
-       echo "#define CONFIG_TQM$${CTYPE}">>$(obj)include/config.h; \
+       echo "#define CONFIG_$${BTYPE}">>$(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 CONFIG_BOARDNAME \"$${BTYPE}\"">>$(obj)include/config.h;
        @$(MKCONFIG) -a TQM85xx ppc mpc85xx tqm85xx tqc
+       @echo "CONFIG_$(@:_config=) = y">>$(obj)include/config.mk;
+
+XPEDITE5200_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) ppc mpc85xx xpedite5200 xes
+
+XPEDITE5370_config:    unconfig
+       @$(MKCONFIG) $(@:_config=) ppc mpc85xx xpedite5370 xes
 
 #########################################################################
 ## MPC86xx Systems
@@ -2324,8 +2507,14 @@ TQM8560_config:          unconfig
 MPC8610HPCD_config:    unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc86xx mpc8610hpcd freescale
 
+MPC8641HPCN_36BIT_config \
 MPC8641HPCN_config:    unconfig
-       @$(MKCONFIG) $(@:_config=) ppc mpc86xx mpc8641hpcn freescale
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _36BIT_,$@)" ] ; then \
+               echo "#define CONFIG_PHYS_64BIT" >>$(obj)include/config.h ; \
+               $(XECHO) "... enabling 36-bit physical addressing." ; \
+       fi
+       @$(MKCONFIG) -a MPC8641HPCN ppc mpc86xx mpc8641hpcn freescale
 
 sbc8641d_config:       unconfig
        @$(MKCONFIG) $(@:_config=) ppc mpc86xx sbc8641d
@@ -2415,15 +2604,6 @@ shannon_config   :       unconfig
 at91rm9200dk_config    :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm920t at91rm9200dk atmel at91rm9200
 
-at91sam9261ek_config   :       unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9261ek atmel at91
-
-at91sam9263ek_config   :       unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9263ek atmel at91
-
-at91sam9rlek_config    :       unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9rlek atmel at91
-
 cmc_pu2_config :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm920t cmc_pu2 NULL at91rm9200
 
@@ -2443,11 +2623,90 @@ mp2usb_config   :       unconfig
 ## Atmel ARM926EJ-S Systems
 #########################################################################
 
+afeb9260_config:       unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm926ejs afeb9260 NULL at91
+
 at91cap9adk_config     :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm926ejs at91cap9adk atmel at91
 
+at91sam9260ek_nandflash_config \
+at91sam9260ek_dataflash_cs0_config \
+at91sam9260ek_dataflash_cs1_config \
 at91sam9260ek_config   :       unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9260ek atmel at91
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _nandflash,$@)" ] ; then \
+               echo "#define CONFIG_SYS_USE_NANDFLASH 1"       >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in NAND FLASH" ; \
+       elif [ "$(findstring dataflash_cs0,$@)" ] ; then \
+               echo "#define CONFIG_SYS_USE_DATAFLASH_CS0 1"   >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in SPI DATAFLASH CS0" ; \
+       else \
+               echo "#define CONFIG_SYS_USE_DATAFLASH_CS1 1"   >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in SPI DATAFLASH CS1" ; \
+       fi;
+       @$(MKCONFIG) -a at91sam9260ek arm arm926ejs at91sam9260ek atmel at91
+
+at91sam9xeek_nandflash_config \
+at91sam9xeek_dataflash_cs0_config \
+at91sam9xeek_dataflash_cs1_config \
+at91sam9xeek_config    :       unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _nandflash,$@)" ] ; then \
+               echo "#define CONFIG_SYS_USE_NANDFLASH 1"       >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in NAND FLASH" ; \
+       elif [ "$(findstring dataflash_cs0,$@)" ] ; then \
+               echo "#define CONFIG_SYS_USE_DATAFLASH_CS0 1"   >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in SPI DATAFLASH CS0" ; \
+       else \
+               echo "#define CONFIG_SYS_USE_DATAFLASH_CS1 1"   >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in SPI DATAFLASH CS1" ; \
+       fi;
+       @$(MKCONFIG) -n at91sam9xeek -a at91sam9260ek arm arm926ejs at91sam9260ek atmel at91sam9
+
+at91sam9261ek_nandflash_config \
+at91sam9261ek_dataflash_cs0_config \
+at91sam9261ek_dataflash_cs3_config \
+at91sam9261ek_config   :       unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _nandflash,$@)" ] ; then \
+               echo "#define CONFIG_SYS_USE_NANDFLASH 1"       >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in NAND FLASH" ; \
+       elif [ "$(findstring dataflash_cs3,$@)" ] ; then \
+               echo "#define CONFIG_SYS_USE_DATAFLASH_CS3 1"   >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in SPI DATAFLASH CS3" ; \
+       else \
+               echo "#define CONFIG_SYS_USE_DATAFLASH_CS0 1"   >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in SPI DATAFLASH CS0" ; \
+       fi;
+       @$(MKCONFIG) -a at91sam9261ek arm arm926ejs at91sam9261ek atmel at91
+
+at91sam9263ek_nandflash_config \
+at91sam9263ek_dataflash_config \
+at91sam9263ek_dataflash_cs0_config \
+at91sam9263ek_config   :       unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _nandflash,$@)" ] ; then \
+               echo "#define CONFIG_SYS_USE_NANDFLASH 1"       >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in NAND FLASH" ; \
+       else \
+               echo "#define CONFIG_SYS_USE_DATAFLASH 1"       >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in SPI DATAFLASH CS0" ; \
+       fi;
+       @$(MKCONFIG) -a at91sam9263ek arm arm926ejs at91sam9263ek atmel at91
+
+at91sam9rlek_nandflash_config \
+at91sam9rlek_dataflash_config \
+at91sam9rlek_dataflash_cs0_config \
+at91sam9rlek_config    :       unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _nandflash,$@)" ] ; then \
+               echo "#define CONFIG_SYS_USE_NANDFLASH 1"       >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in NAND FLASH" ; \
+       else \
+               echo "#define CONFIG_SYS_USE_DATAFLASH 1"       >>$(obj)include/config.h ; \
+               $(XECHO) "... with environment variable in SPI DATAFLASH CS0" ; \
+       fi;
+       @$(MKCONFIG) -a at91sam9rlek arm arm926ejs at91sam9rlek atmel at91
 
 ########################################################################
 ## ARM Integrator boards - see doc/README-integrator for more info.
@@ -2461,7 +2720,7 @@ ap720t_config             \
 ap920t_config          \
 ap926ejs_config                \
 ap946es_config: unconfig
-       @board/integratorap/split_by_variant.sh $@
+       @board/armltd/integratorap/split_by_variant.sh $@
 
 integratorcp_config    \
 cp_config              \
@@ -2473,10 +2732,10 @@ cp966_config            \
 cp922_config           \
 cp922_XA10_config      \
 cp1026_config: unconfig
-       @board/integratorcp/split_by_variant.sh $@
+       @board/armltd/integratorcp/split_by_variant.sh $@
 
 davinci_dvevm_config : unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm926ejs dv-evm davinci davinci
+       @$(MKCONFIG) $(@:_config=) arm arm926ejs dvevm davinci davinci
 
 davinci_schmoogie_config :     unconfig
        @$(MKCONFIG) $(@:_config=) arm arm926ejs schmoogie davinci davinci
@@ -2500,6 +2759,18 @@ mx1fs2_config    :       unconfig
 netstar_config:                unconfig
        @$(MKCONFIG) $(@:_config=) arm arm925t netstar
 
+nmdk8815_config \
+nmdk8815_onenand_config:       unconfig
+       @mkdir -p $(obj)include
+       @ > $(obj)include/config.h
+       @if [ "$(findstring _onenand, $@)" ] ; then \
+               echo "#define CONFIG_BOOT_ONENAND" >> $(obj)include/config.h; \
+               $(XECHO) "... configured for OneNand Flash"; \
+       else \
+               $(XECHO) "... configured for Nand Flash"; \
+       fi
+       @$(MKCONFIG) -a nmdk8815 arm arm926ejs nmdk8815 st nomadik
+
 omap1510inn_config :   unconfig
        @$(MKCONFIG) $(@:_config=) arm arm925t omap1510inn
 
@@ -2551,13 +2822,22 @@ scb9328_config  :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm920t scb9328 NULL imx
 
 smdk2400_config        :       unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm920t smdk2400 NULL s3c24x0
+       @$(MKCONFIG) $(@:_config=) arm arm920t smdk2400 samsung s3c24x0
 
 smdk2410_config        :       unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0
+       @$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 samsung s3c24x0
 
-SX1_config :           unconfig
-       @$(MKCONFIG) $(@:_config=) arm arm925t sx1
+SX1_stdout_serial_config \
+SX1_config:            unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _stdout_serial_, $@)" ] ; then \
+               echo "#undef CONFIG_STDOUT_USBTTY" >> $(obj)include/config.h ; \
+               $(XECHO) "... configured for stdout serial"; \
+       else \
+               echo "#define CONFIG_STDOUT_USBTTY" >> $(obj)include/config.h ; \
+               $(XECHO) "... configured for stdout usbtty"; \
+       fi;
+       @$(MKCONFIG) SX1 arm arm925t sx1
 
 # TRAB default configuration:  8 MB Flash, 32 MB RAM
 xtract_trab = $(subst _bigram,,$(subst _bigflash,,$(subst _old,,$(subst _config,,$1))))
@@ -2603,7 +2883,7 @@ cm41xx_config     :       unconfig
 versatile_config       \
 versatileab_config     \
 versatilepb_config :   unconfig
-       @board/versatile/split_by_variant.sh $@
+       @board/armltd/versatile/split_by_variant.sh $@
 
 voiceblue_config:      unconfig
        @$(MKCONFIG) $(@:_config=) arm arm925t voiceblue
@@ -2640,6 +2920,25 @@ lpc2292sodimm_config:    unconfig
 SMN42_config   :       unconfig
        @$(MKCONFIG) $(@:_config=) arm arm720t SMN42 siemens lpc2292
 
+#########################################################################
+## ARM CORTEX Systems
+#########################################################################
+
+omap3_beagle_config :  unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm_cortexa8 beagle omap3 omap3
+
+omap3_overo_config :   unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm_cortexa8 overo omap3 omap3
+
+omap3_evm_config :     unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm_cortexa8 evm omap3 omap3
+
+omap3_pandora_config : unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm_cortexa8 pandora omap3 omap3
+
+omap3_zoom1_config :   unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm_cortexa8 zoom1 omap3 omap3
+
 #########################################################################
 ## XScale Systems
 #########################################################################
@@ -2739,20 +3038,44 @@ mx31ads_config          : unconfig
 omap2420h4_config      : unconfig
        @$(MKCONFIG) $(@:_config=) arm arm1136 omap2420h4 NULL omap24xx
 
+qong_config            : unconfig
+       @$(MKCONFIG) $(@:_config=) arm arm1136 qong davedenx mx31
+
+
+#########################################################################
+## ARM1176 Systems
+#########################################################################
+smdk6400_noUSB_config  \
+smdk6400_config        :       unconfig
+       @mkdir -p $(obj)include $(obj)board/samsung/smdk6400
+       @mkdir -p $(obj)nand_spl/board/samsung/smdk6400
+       @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
+       @if [ -z "$(findstring smdk6400_noUSB_config,$@)" ]; then                       \
+               echo "RAM_TEXT = 0x57e00000" >> $(obj)board/samsung/smdk6400/config.tmp;\
+               $(MKCONFIG) $(@:_config=) arm arm1176 smdk6400 samsung s3c64xx;         \
+       else                                                                            \
+               echo "RAM_TEXT = 0xc7e00000" >> $(obj)board/samsung/smdk6400/config.tmp;\
+               $(MKCONFIG) $(@:_noUSB_config=) arm arm1176 smdk6400 samsung s3c64xx;   \
+       fi
+       @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
+
 #========================================================================
 # i386
 #========================================================================
 #########################################################################
 ## AMD SC520 CDP
 #########################################################################
+eNET_config    :       unconfig
+       @$(MKCONFIG) $(@:_config=) i386 i386 eNET NULL sc520
+
 sc520_cdp_config       :       unconfig
-       @$(MKCONFIG) $(@:_config=) i386 i386 sc520_cdp
+       @$(MKCONFIG) $(@:_config=) i386 i386 sc520_cdp NULL sc520
 
 sc520_spunk_config     :       unconfig
-       @$(MKCONFIG) $(@:_config=) i386 i386 sc520_spunk
+       @$(MKCONFIG) $(@:_config=) i386 i386 sc520_spunk NULL sc520
 
 sc520_spunk_rel_config :       unconfig
-       @$(MKCONFIG) $(@:_config=) i386 i386 sc520_spunk
+       @$(MKCONFIG) $(@:_config=) i386 i386 sc520_spunk NULL sc520
 
 #========================================================================
 # MIPS
@@ -2785,6 +3108,41 @@ incaip_config: unconfig
 tb0229_config: unconfig
        @$(MKCONFIG) $(@:_config=) mips mips tb0229
 
+vct_premium_config             \
+vct_premium_small_config       \
+vct_premium_onenand_config     \
+vct_premium_onenand_small_config \
+vct_platinum_config            \
+vct_platinum_small_config      \
+vct_platinum_onenand_config    \
+vct_platinum_onenand_small_config \
+vct_platinumavc_config         \
+vct_platinumavc_small_config   \
+vct_platinumavc_onenand_config \
+vct_platinumavc_onenand_small_config: unconfig
+       @mkdir -p $(obj)include
+       @if [ "$(findstring _premium,$@)" ] ; then \
+               echo "#define CONFIG_VCT_PREMIUM" > $(obj)include/config.h ; \
+               $(XECHO) "... on Premium board variant" ; \
+       fi
+       @if [ "$(findstring _platinum_,$@)" ] ; then \
+               echo "#define CONFIG_VCT_PLATINUM" > $(obj)include/config.h ; \
+               $(XECHO) "... on Platinum board variant" ; \
+       fi
+       @if [ "$(findstring _platinumavc,$@)" ] ; then \
+               echo "#define CONFIG_VCT_PLATINUMAVC" > $(obj)include/config.h ; \
+               $(XECHO) "... on PlatinumAVC board variant" ; \
+       fi
+       @if [ "$(findstring _onenand,$@)" ] ; then \
+               echo "#define CONFIG_VCT_ONENAND" >> $(obj)include/config.h ; \
+               $(XECHO) "... on OneNAND board variant" ; \
+       fi
+       @if [ "$(findstring _small,$@)" ] ; then \
+               echo "#define CONFIG_VCT_SMALL_IMAGE" >> $(obj)include/config.h ; \
+               $(XECHO) "... stripped down image variant" ; \
+       fi
+       @$(MKCONFIG) -a vct mips mips vct micronas
+
 #########################################################################
 ## MIPS32 AU1X00
 #########################################################################
@@ -2925,21 +3283,15 @@ PCI5441_config : unconfig
 ## Microblaze
 #========================================================================
 
-ml401_config:  unconfig
+microblaze-generic_config:     unconfig
        @mkdir -p $(obj)include
-       @echo "#define CONFIG_ML401 1" > $(obj)include/config.h
-       @$(MKCONFIG) -a $(@:_config=) microblaze microblaze ml401 xilinx
+       @$(MKCONFIG) -a $(@:_config=) microblaze microblaze microblaze-generic xilinx
 
 suzaku_config: unconfig
        @mkdir -p $(obj)include
        @echo "#define CONFIG_SUZAKU 1" > $(obj)include/config.h
        @$(MKCONFIG) -a $(@:_config=) microblaze microblaze suzaku AtmarkTechno
 
-xupv2p_config: unconfig
-       @mkdir -p $(obj)include
-       @echo "#define CONFIG_XUPV2P 1" > $(obj)include/config.h
-       @$(MKCONFIG) -a $(@:_config=) microblaze microblaze xupv2p xilinx
-
 #========================================================================
 # Blackfin
 #========================================================================
@@ -2986,6 +3338,14 @@ mimc200_config           :       unconfig
 # SH3 (SuperH)
 #========================================================================
 
+#########################################################################
+## sh2 (Renesas SuperH)
+#########################################################################
+rsk7203_config: unconfig
+       @mkdir -p $(obj)include
+       @echo "#define CONFIG_RSK7203 1" > $(obj)/include/config.h
+       @$(MKCONFIG) -a $(@:_config=) sh sh2 rsk7203 renesas
+
 #########################################################################
 ## sh3 (Renesas SuperH)
 #########################################################################
@@ -3007,7 +3367,7 @@ ms7720se_config: unconfig
 MigoR_config :       unconfig
        @mkdir -p $(obj)include
        @echo "#define CONFIG_MIGO_R 1" > $(obj)include/config.h
-       @./mkconfig -a $(@:_config=) sh sh4 MigoR
+       @$(MKCONFIG) -a $(@:_config=) sh sh4 MigoR renesas
 
 ms7750se_config: unconfig
        @mkdir -p $(obj)include
@@ -3022,17 +3382,27 @@ ms7722se_config :       unconfig
 r2dplus_config  :   unconfig
        @mkdir -p $(obj)include
        @echo "#define CONFIG_R2DPLUS 1" > $(obj)include/config.h
-       @./mkconfig -a $(@:_config=) sh sh4 r2dplus
+       @$(MKCONFIG) -a $(@:_config=) sh sh4 r2dplus renesas
 
 r7780mp_config: unconfig
        @mkdir -p $(obj)include
        @echo "#define CONFIG_R7780MP 1" > $(obj)include/config.h
-       @./mkconfig -a $(@:_config=) sh sh4 r7780mp
+       @$(MKCONFIG) -a $(@:_config=) sh sh4 r7780mp renesas
 
 sh7763rdp_config  :   unconfig
        @mkdir -p $(obj)include
        @echo "#define CONFIG_SH7763RDP 1" > $(obj)include/config.h
-       @./mkconfig -a $(@:_config=) sh sh4 sh7763rdp
+       @$(MKCONFIG) -a $(@:_config=) sh sh4 sh7763rdp renesas
+
+sh7785lcr_config  :   unconfig
+       @ >include/config.h
+       @echo "#define CONFIG_SH7785LCR 1" >> include/config.h
+       @$(MKCONFIG) -a $(@:_config=) sh sh4 sh7785lcr renesas
+
+ap325rxa_config  :   unconfig
+       @mkdir -p $(obj)include
+       @echo "#define CONFIG_AP325RXA 1" > $(obj)include/config.h
+       @$(MKCONFIG) -a $(@:_config=) sh sh4 ap325rxa renesas
 
 #========================================================================
 # SPARC
@@ -3093,7 +3463,7 @@ clean:
        @rm -f $(obj)include/bmp_logo.h
        @rm -f $(obj)nand_spl/{u-boot-spl,u-boot-spl.map,System.map}
        @rm -f $(obj)onenand_ipl/onenand-{ipl,ipl.bin,ipl-2k.bin,ipl-4k.bin,ipl.map}
-       @rm -f $(obj)api_examples/demo $(VERSION_FILE)
+       @rm -f $(obj)api_examples/demo $(TIMESTAMP_FILE) $(VERSION_FILE)
        @find $(OBJTREE) -type f \
                \( -name 'core' -o -name '*.bak' -o -name '*~' \
                -o -name '*.o'  -o -name '*.a'  \) -print \
@@ -3107,14 +3477,14 @@ clobber:        clean
        @rm -f $(OBJS) $(obj)*.bak $(obj)ctags $(obj)etags $(obj)TAGS \
                $(obj)cscope.* $(obj)*.*~
        @rm -f $(obj)u-boot $(obj)u-boot.map $(obj)u-boot.hex $(ALL)
-       @rm -f $(obj)tools/{crc32.c,environment.c,env/crc32.c,md5.c,sha1.c,inca-swap-bytes}
+       @rm -f $(obj)tools/{crc32.c,env_embedded.c,env/crc32.c,md5.c,sha1.c,inca-swap-bytes}
        @rm -f $(obj)tools/{image.c,fdt.c,fdt_ro.c,fdt_rw.c,fdt_strerror.c,zlib.h}
        @rm -f $(obj)tools/{fdt_wip.c,libfdt_internal.h}
        @rm -f $(obj)cpu/mpc824x/bedbug_603e.c
        @rm -f $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm
-       @[ ! -d $(obj)nand_spl ] || find $(obj)nand_spl -lname "*" -print | xargs rm -f
-       @[ ! -d $(obj)onenand_ipl ] || find $(obj)onenand_ipl -lname "*" -print | xargs rm -f
-       @[ ! -d $(obj)api_examples ] || find $(obj)api_examples -lname "*" -print | xargs rm -f
+       @[ ! -d $(obj)nand_spl ] || find $(obj)nand_spl -name "*" -type l -print | xargs rm -f
+       @[ ! -d $(obj)onenand_ipl ] || find $(obj)onenand_ipl -name "*" -type l -print | xargs rm -f
+       @[ ! -d $(obj)api_examples ] || find $(obj)api_examples -name "*" -type l -print | xargs rm -f
 
 ifeq ($(OBJTREE),$(SRCTREE))
 mrproper \