Merge commit '3deca9d'
[oweals/u-boot.git] / Makefile
index 201ad0e77896407b27dcbc4ee4be4968b32b7761..bfd4132c1527d35a5f66cf27c5be183d0fc43738 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
 #
-# (C) Copyright 2000-2006
+# (C) Copyright 2000-2007
 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 #
 # See file CREDITS for list of people who contributed to this
@@ -22,7 +22,7 @@
 #
 
 VERSION = 1
-PATCHLEVEL = 2
+PATCHLEVEL = 3
 SUBLEVEL = 0
 EXTRAVERSION =
 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
@@ -190,6 +190,8 @@ endif
 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
@@ -203,21 +205,30 @@ LIBS += fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs
        fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.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/block/libblock.a
+LIBS += drivers/hwmon/libhwmon.a
+LIBS += drivers/i2c/libi2c.a
+LIBS += drivers/input/libinput.a
+LIBS += drivers/misc/libmisc.a
+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/net/libnet.a
+LIBS += drivers/net/sk98lin/libsk98lin.a
+LIBS += drivers/pci/libpci.a
+LIBS += drivers/pcmcia/libpcmcia.a
 ifeq ($(CPU),mpc83xx)
 LIBS += drivers/qe/qe.a
 endif
 ifeq ($(CPU),mpc85xx)
 LIBS += drivers/qe/qe.a
 endif
+LIBS += drivers/rtc/librtc.a
 LIBS += drivers/serial/libserial.a
-LIBS += drivers/sk98lin/libsk98lin.a
+LIBS += drivers/usb/libusb.a
+LIBS += drivers/video/libvideo.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)
@@ -317,28 +328,68 @@ updater:
 env:
                $(MAKE) -C tools/env all || exit 1
 
-depend dep:
+depend dep:    version
                for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir _depend ; done
 
+TAG_SUBDIRS += include
+TAG_SUBDIRS += lib_generic board/$(BOARDDIR)
+TAG_SUBDIRS += cpu/$(CPU)
+TAG_SUBDIRS += lib_$(ARCH)
+TAG_SUBDIRS += fs/cramfs
+TAG_SUBDIRS += fs/fat
+TAG_SUBDIRS += fs/fdos
+TAG_SUBDIRS += fs/jffs2
+TAG_SUBDIRS += net
+TAG_SUBDIRS += disk
+TAG_SUBDIRS += common
+TAG_SUBDIRS += drivers/bios_emulator
+TAG_SUBDIRS += drivers/block
+TAG_SUBDIRS += drivers/hwmon
+TAG_SUBDIRS += drivers/i2c
+TAG_SUBDIRS += drivers/input
+TAG_SUBDIRS += drivers/misc
+TAG_SUBDIRS += drivers/mtd
+TAG_SUBDIRS += drivers/mtd/nand
+TAG_SUBDIRS += drivers/mtd/nand_legacy
+TAG_SUBDIRS += drivers/mtd/onenand
+TAG_SUBDIRS += drivers/net
+TAG_SUBDIRS += drivers/net/sk98lin
+TAG_SUBDIRS += drivers/pci
+TAG_SUBDIRS += drivers/pcmcia
+TAG_SUBDIRS += drivers/qe
+TAG_SUBDIRS += drivers/rtc
+TAG_SUBDIRS += drivers/serial
+TAG_SUBDIRS += drivers/usb
+TAG_SUBDIRS += drivers/video
+
 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 \
-                               net disk rtc dtt drivers drivers/sk98lin common \
-                       \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)`
+               ctags -w -o $(OBJTREE)/ctags `find $(SUBDIRS) $(TAG_SUBDIRS) \
+                                               -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 \
-                               net disk rtc dtt drivers drivers/sk98lin common \
-                       \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)`
+               etags -a -o $(OBJTREE)/etags `find $(SUBDIRS) $(TAG_SUBDIRS) \
+                                               -name '*.[ch]' -print`
 
 $(obj)System.map:      $(obj)u-boot
                @$(NM) $< | \
                grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
                sort > $(obj)System.map
 
+#
+# Auto-generate the autoconf.mk file (which is included by all makefiles)
+#
+# This target actually generates 2 files; autoconf.mk and autoconf.mk.dep.
+# the dep file is only include in this top level makefile to determine when
+# to regenerate the autoconf.mk file.
+$(OBJTREE)/include/autoconf.mk: $(obj)include/config.h
+       @echo Generating include/autoconf.mk
+       @# Generate the dependancies
+       @$(CC) -M $(HOST_CFLAGS) $(CPPFLAGS) -MQ $@ include/common.h > $@.dep
+       @# Extract the config macros
+       @$(CPP) $(CFLAGS) -dM include/common.h | sed -n -f tools/scripts/define2mk.sed >> $@
+
+sinclude $(OBJTREE)/include/autoconf.mk.dep
+
 #########################################################################
 else
 all $(obj)u-boot.hex $(obj)u-boot.srec $(obj)u-boot.bin \
@@ -358,7 +409,8 @@ CHANGELOG:
 
 unconfig:
        @rm -f $(obj)include/config.h $(obj)include/config.mk \
-               $(obj)board/*/config.tmp $(obj)board/*/*/config.tmp
+               $(obj)board/*/config.tmp $(obj)board/*/*/config.tmp \
+               $(obj)include/autoconf.mk $(obj)include/autoconf.mk.dep
 
 #========================================================================
 # PowerPC
@@ -390,7 +442,7 @@ BC3450_config:      unconfig
 cpci5200_config:  unconfig
        @$(MKCONFIG) -a cpci5200  ppc mpc5xxx cpci5200 esd
 
-hmi1001_config:         unconfig
+hmi1001_config:        unconfig
        @$(MKCONFIG) hmi1001 ppc mpc5xxx hmi1001
 
 Lite5200_config                                \
@@ -432,7 +484,7 @@ icecube_5100_config:                        unconfig
                }
        @$(MKCONFIG) -a IceCube ppc mpc5xxx icecube
 
-jupiter_config:         unconfig
+jupiter_config:        unconfig
        @$(MKCONFIG) jupiter ppc mpc5xxx jupiter
 
 v38b_config: unconfig
@@ -637,9 +689,9 @@ TQM5200_STK100_config:      unconfig
                { echo "TEXT_BASE = 0xFFF00000" >$(obj)board/tqm5200/config.tmp ; \
                }
        @$(MKCONFIG) -n $@ -a TQM5200 ppc mpc5xxx tqm5200
-uc101_config:         unconfig
+uc101_config:          unconfig
        @$(MKCONFIG) uc101 ppc mpc5xxx uc101
-motionpro_config:         unconfig
+motionpro_config:      unconfig
        @$(MKCONFIG) motionpro ppc mpc5xxx motionpro
 
 
@@ -927,7 +979,7 @@ RPXlite_DW_NVRAM_config             \
 RPXlite_DW_NVRAM_64_config      \
 RPXlite_DW_NVRAM_LCD_config    \
 RPXlite_DW_NVRAM_64_LCD_config  \
-RPXlite_DW_config:         unconfig
+RPXlite_DW_config:     unconfig
        @mkdir -p $(obj)include
        @ >$(obj)include/config.h
        @[ -z "$(findstring _64,$@)" ] || \
@@ -1639,6 +1691,25 @@ ZPC1900_config: unconfig
 ## 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
 
@@ -1710,13 +1781,17 @@ M54455EVB_i66_config :  unconfig
        esac; \
        >include/config.h ; \
        if [ "$${FLASH}" == "INTEL" ] ; then \
-               echo "#undef CFG_ATMEL_BOOT" >> include/config.h ; \
+               echo "#undef CFG_ATMEL_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 ; \
                echo "... with INTEL boot..." ; \
        else \
-               echo "#define CFG_ATMEL_BOOT"   >> include/config.h ; \
+               echo "#define CFG_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 ; \
                echo "... with ATMEL boot..." ; \
        fi; \
-       echo "#define CFG_INPUT_CLKSRC $${FREQ}"        >>include/config.h ; \
+       echo "#define CFG_INPUT_CLKSRC $${FREQ}" >> $(obj)include/config.h ; \
        echo "... with $${FREQ}Hz input clock"
        @$(MKCONFIG) -a M54455EVB m68k mcf5445x m54455evb freescale
 
@@ -1736,7 +1811,7 @@ MPC8313ERDB_66_config: unconfig
                echo -n "...66M..." ; \
                echo "#define CFG_66MHZ" >>$(obj)include/config.h ; \
        fi ;
-       @$(MKCONFIG) -a MPC8313ERDB ppc mpc83xx mpc8313erdb
+       @$(MKCONFIG) -a MPC8313ERDB ppc mpc83xx mpc8313erdb freescale
 
 MPC8323ERDB_config:    unconfig
        @$(MKCONFIG) -a MPC8323ERDB ppc mpc83xx mpc8323erdb freescale
@@ -1744,7 +1819,8 @@ MPC8323ERDB_config:       unconfig
 MPC832XEMDS_config \
 MPC832XEMDS_HOST_33_config \
 MPC832XEMDS_HOST_66_config \
-MPC832XEMDS_SLAVE_config:      unconfig
+MPC832XEMDS_SLAVE_config \
+MPC832XEMDS_ATM_config:        unconfig
        @mkdir -p $(obj)include
        @echo "" >$(obj)include/config.h ; \
        if [ "$(findstring _HOST_,$@)" ] ; then \
@@ -1759,34 +1835,42 @@ MPC832XEMDS_SLAVE_config:       unconfig
        if [ "$(findstring _33_,$@)" ] ; then \
                echo -n "...33M ..." ; \
                echo "#define PCI_33M" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _66_,$@)" ] ; then \
                echo -n "...66M..." ; \
                echo "#define PCI_66M" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _ATM_,$@)" ] ; then \
+               echo -n "...ATM..." ; \
+               echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PQ_MDS_PIB_ATM     1" >>$(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
+MPC8360EMDS_SLAVE_config \
+MPC8360EMDS_ATM_config: unconfig
        @mkdir -p $(obj)include
        @echo "" >$(obj)include/config.h ; \
        if [ "$(findstring _HOST_,$@)" ] ; then \
@@ -1801,12 +1885,19 @@ MPC8360EMDS_SLAVE_config:       unconfig
        if [ "$(findstring _33_,$@)" ] ; then \
                echo -n "...33M ..." ; \
                echo "#define PCI_33M" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \
        fi ; \
        if [ "$(findstring _66_,$@)" ] ; then \
                echo -n "...66M..." ; \
                echo "#define PCI_66M" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \
+       fi ; \
+       if [ "$(findstring _ATM_,$@)" ] ; then \
+               echo -n "...ATM..." ; \
+               echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \
+               echo "#define CONFIG_PQ_MDS_PIB_ATM     1" >>$(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
@@ -1940,7 +2031,7 @@ TQM8560_config:           unconfig
        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
 
 #########################################################################
@@ -1963,13 +2054,13 @@ AmigaOneG3SE_config:    unconfig
 BAB7xx_config: unconfig
        @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx bab7xx eltec
 
-CPCI750_config:        unconfig
+CPCI750_config:        unconfig
        @$(MKCONFIG) CPCI750 ppc 74xx_7xx cpci750 esd
 
-DB64360_config:  unconfig
+DB64360_config:        unconfig
        @$(MKCONFIG) DB64360 ppc 74xx_7xx db64360 Marvell
 
-DB64460_config:  unconfig
+DB64460_config:        unconfig
        @$(MKCONFIG) DB64460 ppc 74xx_7xx db64460 Marvell
 
 ELPPC_config: unconfig
@@ -2313,6 +2404,9 @@ scpu_config:    unconfig
 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