]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - keystone-rtos/ibl.git/blobdiff - src/make/Makefile
Top level Makefile Change
[keystone-rtos/ibl.git] / src / make / Makefile
index 6432efdce7c053b55ec0099fd67cd61fd62901df..664bea2055b7dc01effba17841bec5e91b1a37c3 100644 (file)
@@ -57,6 +57,7 @@
 #*                     [SPI=no]                                                        /* Disables SPI */
 #*                     [I2C=no]                                                        /* Disables I2C */
 #*                     [EMIF=no]                                                       /* Disables EMIF */
+#*                     [MULTI_BOOT=no]                                         /* Disables Multi-boot feature */
 #*                     [SPI_MODE=<0,1,2,3>]                            /* Selects the SPI operating mode */
 #*                     [SPI_ADDR_WIDTH=<16,24>]                        /* Selects the SPI address width */
 #*                     [SPI_NPIN=<4,5>]                                        /* Selects the number of pins on the interface */
@@ -87,7 +88,7 @@ EVMS_C6X= evm_c6455 evm_c6472 evm_c6474
 # speeds the initial boot time. Note that boot table cannot be excluded
 # because it is required for the two stage I2C load process
 
-CEXCLUDES=
+CEXCLUDES ?=
 
 ifeq ($(ETH),no)
  CEXCLUDES+= ETH
@@ -178,6 +179,10 @@ ifeq ($(EMIF),no)
 
 endif
 
+ifeq ($(MULTI_BOOT),no)
+  CEXCLUDES+= MULTI_BOOT
+endif
+
 # The endian of the build. The default target builds a single ROM image with both endians present
 ifeq ($(ENDIAN),big)
  ENDIAN_MODE=big
@@ -265,31 +270,45 @@ $(IBLS_C6X):
 # Configurations for individual evms
 # The c6455 EVM has a 128k eeprom (64k at 0x50, 64k at 0x51), so both endians are built with full functionality
 evm_c6455:
-       make -f makestg1 ARCH=c64x TARGET=c6455 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=$(I2C_MAP_ADDR) COMPACT_I2C=no ENDIAN_MODE=both CEXCLUDES= c6455
+       make -f makestg1 ARCH=c64x TARGET=c6455 I2C_BUS_ADDR=0x50 \
+    I2C_MAP_ADDR=$(I2C_MAP_ADDR) COMPACT_I2C=no ENDIAN_MODE=both CEXCLUDES='ELF COFF BIS NAND_GPIO MULTI_BOOT' c6455
 
 # The c6472 EVM has a 128k eeprom (64k at 0x50, 64k at 0x51), so both endians are built with full functionality
 evm_c6472:
-       make -f makestg1 ARCH=c64x TARGET=c6472 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=$(I2C_MAP_ADDR) COMPACT_I2C=no ENDIAN_MODE=both CEXCLUDES= c6472
+       make -f makestg1 ARCH=c64x TARGET=c6472 I2C_BUS_ADDR=0x50 \
+    I2C_MAP_ADDR=$(I2C_MAP_ADDR) COMPACT_I2C=no ENDIAN_MODE=both CEXCLUDES='ELF BIS MULTI_BOOT NAND_GPIO' c6472
 
 # The 6474 EVM has a 32k eeprom. A stripped down version is build with only one endian.
 evm_c6474:
-       make -f makestg1 ARCH=c64x TARGET=c6474 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 COMPACT_I2C=yes ENDIAN_MODE=little CEXCLUDES='ELF NAND_GPIO BIS' I2C_SIZE_BYTES=0x8000 c6474
+       make -f makestg1 ARCH=c64x TARGET=c6474 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 \
+    COMPACT_I2C=yes ENDIAN_MODE=little CEXCLUDES='ELF NAND_GPIO COFF BIS MULTI_BOOT' I2C_SIZE_BYTES=0x8000 c6474
        cp ibl_c6474/i2crom.dat ibl_c6474/i2crom_0x50_c6474_le.dat
-       make -f makestg1 ARCH=c64x TARGET=c6474 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 COMPACT_I2C=yes ENDIAN_MODE=big CEXCLUDES='ELF NAND_GPIO BIS' I2C_SIZE_BYTES=0x8000 c6474
+       cp ibl_c6474/i2crom.bin ibl_c6474/i2crom_0x50_c6474_le.bin
+       make -f makestg1 ARCH=c64x TARGET=c6474 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 \
+    COMPACT_I2C=yes ENDIAN_MODE=big CEXCLUDES='ELF NAND_GPIO COFF BIS MULTI_BOOT' I2C_SIZE_BYTES=0x8000 c6474
        cp ibl_c6474/i2crom.dat ibl_c6474/i2crom_0x50_c6474_be.dat
+       cp ibl_c6474/i2crom.bin ibl_c6474/i2crom_0x50_c6474_be.bin
 
 evm_c6474l:
-       make -f makestg1 ARCH=c64x TARGET=c6474 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 COMPACT_I2C=yes ENDIAN_MODE=little CEXCLUDES='ELF NAND_GPIO BIS' c6474
+       make -f makestg1 ARCH=c64x TARGET=c6474 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 \
+    COMPACT_I2C=yes ENDIAN_MODE=little CEXCLUDES='ELF NAND_GPIO COFF BIS MULTI_BOOT' I2C_SIZE_BYTES=0x8000 c6474
        cp ibl_c6474/i2crom.dat ibl_c6474/i2crom_0x50_c6474l_le.dat
-       make -f makestg1 ARCH=c64x TARGET=c6474 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 COMPACT_I2C=yes ENDIAN_MODE=big CEXCLUDES='ELF NAND_GPIO BIS' c6474
+       cp ibl_c6474/i2crom.bin ibl_c6474/i2crom_0x50_c6474l_le.bin
+       make -f makestg1 ARCH=c64x TARGET=c6474 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 \
+    COMPACT_I2C=yes ENDIAN_MODE=big CEXCLUDES='ELF NAND_GPIO COFF BIS MULTI_BOOT' I2C_SIZE_BYTES=0x8000 c6474
        cp ibl_c6474/i2crom.dat ibl_c6474/i2crom_0x50_c6474l_be.dat
+       cp ibl_c6474/i2crom.bin ibl_c6474/i2crom_0x50_c6474l_be.bin
 
 # The 6457 EVM
 evm_c6457:
-       make -f makestg1 ARCH=c64x TARGET=c6457 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 COMPACT_I2C=yes ENDIAN_MODE=little CEXCLUDES='ELF NAND_GPIO BIS' c6457
+       make -f makestg1 ARCH=c64x TARGET=c6457 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 \
+    COMPACT_I2C=yes ENDIAN_MODE=little CEXCLUDES='ELF NAND_GPIO COFF BIS MULTI_BOOT' c6457
        cp ibl_c6457/i2crom.dat ibl_c6457/i2crom_0x50_c6457_le.dat
-       make -f makestg1 ARCH=c64x TARGET=c6457 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 COMPACT_I2C=yes ENDIAN_MODE=big CEXCLUDES='ELF NAND_GPIO BIS' c6457
+       cp ibl_c6457/i2crom.bin ibl_c6457/i2crom_0x50_c6457_le.bin
+       make -f makestg1 ARCH=c64x TARGET=c6457 I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=0x200 \
+    COMPACT_I2C=yes ENDIAN_MODE=big CEXCLUDES='ELF NAND_GPIO COFF BIS MULTI_BOOT' c6457
        cp ibl_c6457/i2crom.dat ibl_c6457/i2crom_0x50_c6457_be.dat
+       cp ibl_c6457/i2crom.bin ibl_c6457/i2crom_0x50_c6457_be.bin
 
 # The 6608 EVM
 EVM_6608_SPI_DEFS= SPI_MODE=1 SPI_ADDR_WIDTH=24 SPI_NPIN=5 SPI_CSEL=2 SPI_C2TDEL=1 SPI_CLKDIV=8 SPI_ROM=1
@@ -304,7 +323,8 @@ evm_c667x_spi:
        make -f makestg1 ARCH=c64x TARGET=c661x I2C=no I2C_BUS_ADDR=0x51 I2C_MAP_ADDR=0x500 ENDIAN_MODE=little CEXCLUDES=I2C SPI_DEFS='$(EVM_667x_SPI_DEFS)' c661x
 
 evm_c667x_i2c:
-       make -f makestg1 I2C_BUS_ADDR=$(I2C_BUS_ADDR) I2C_MAP_ADDR=$(I2C_MAP_ADDR) ENDIAN_MODE=$(ENDIAN) ARCH=c64x TARGET=c661x SPI=no SPI_DEFS='$(EVM_667x_SPI_DEFS)' c661x
+       make -f makestg1 I2C_BUS_ADDR=$(I2C_BUS_ADDR) I2C_MAP_ADDR=$(I2C_MAP_ADDR) \
+ENDIAN_MODE=$(ENDIAN) ARCH=c64x TARGET=c661x SPI=no SPI_DEFS='$(EVM_667x_SPI_DEFS)' CEXCLUDES='$(CEXCLUDES)' c661x
 
 test_c661x:
        make -f makestg1 ARCH=c64x TARGET=c661x ENDIAN_MODE=both CEXCLUDES='NOR_SPI' SPI_DEFS='SPI_ROM=1 SPI_MODE=3 SPI_ADDR_WIDTH=24 SPI_NPIN=5 SPI_CSEL=2 SPI_C2TDEL=8 SPI_CLKDIV=0x20' I2C_BUS_ADDR=0x50 I2C_MAP_ADDR=$(I2C_MAP_ADDR) COMPACT_I2C=no c661x
@@ -372,11 +392,6 @@ clean:
        make -C ../util/i2cConfig      clean    ARCH=c64x TARGET=c6474
        make -C ../util/i2cConfig      clean    ARCH=c64x TARGET=c6457
        make -C ../util/i2cConfig      clean    ARCH=c64x TARGET=c661x
-       make -C ../util/nandwriter     clean    ARCH=c64x TARGET=c6455
-       make -C ../util/nandwriter     clean    ARCH=c64x TARGET=c6472
-       make -C ../util/nandwriter     clean    ARCH=c64x TARGET=c6474
-       make -C ../util/nandwriter     clean    ARCH=c64x TARGET=c6457
-       make -C ../util/nandwriter     clean    ARCH=c64x TARGET=c661x
        make -C ../util/romparse       clean
        make -C ../test/test1              clean
        make -C ../test/test2              clean
@@ -384,13 +399,7 @@ clean:
        find ../ -name *.dc | xargs rm -f
        find ../ -name *.oa | xargs rm -f
        find ../ -name *.da | xargs rm -f
-
-
-
-
-
-
-
-
+       find ../ -name *.tmp | xargs rm -f
+       find ../ -name cdefdep | xargs rm -f