signGP: dont add Config header for all devices
authorNishanth Menon <nm@ti.com>
Wed, 26 Jan 2011 14:04:32 +0000 (19:34 +0530)
committerAnand Gadiyar <gadiyar@ti.com>
Wed, 26 Jan 2011 14:04:32 +0000 (19:34 +0530)
Configuration Header is not needed for OMAP3, but needed
on Panda. To allow co-existance, introduce CONFIG_HEADER
to enable it when doing make ift

Tested on: Beagle XM rev A, Pandaboard rev EA1.

Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Makefile
mkconfig
scripts/signGP.c

index 2b94d3a..fd85142 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -155,7 +155,7 @@ all:                $(ALL)
 ift:   $(ALL) $(obj)x-load.bin.ift
 
 $(obj)x-load.bin.ift: $(obj)signGP $(obj)System.map $(obj)x-load.bin
-       $(obj)./signGP $(obj)x-load.bin $(TEXT_BASE)
+       $(obj)./signGP $(obj)x-load.bin $(TEXT_BASE) $(CONFIG_HEADER)
        cp $(obj)x-load.bin.ift $(obj)MLO
  
 $(obj)x-load.bin:      $(obj)x-load
@@ -234,7 +234,7 @@ igep0020_config :    unconfig
 ## OMAP4 (ARM-CortexA9) Systems
 #########################################################################
 omap4430panda_config :    unconfig
-       @./mkconfig $(@:_config=) arm omap4 omap4430panda
+       @./mkconfig $(@:_config=) arm omap4 omap4430panda 1
 
 #########################################################################
 
index 54c5268..b3cc90d 100755 (executable)
--- a/mkconfig
+++ b/mkconfig
@@ -46,7 +46,7 @@ echo "ARCH  = $2" >  config.mk
 echo "CPU   = $3" >> config.mk
 echo "BOARD = $4" >> config.mk
 
-[ "$5" ] && echo "VENDOR = $5" >> config.mk
+[ "$5" ] && echo "CONFIG_HEADER = $5" >> config.mk
 
 #
 # Create board specific header file
index 963a937..ae3ddb8 100644 (file)
@@ -243,18 +243,22 @@ int main(int argc, char *argv[])
        FILE    *ifile, *ofile;
        unsigned long   loadaddr, len;
        struct stat     sinfo;
+       int ch_add = 0;
 
 
        /* Default to x-load.bin and 0x40200800. */
        strcpy(ifname, "x-load.bin");
        loadaddr = 0x40200800;
 
-       if ((argc == 2) || (argc == 3))
+       if ((argc == 2) || (argc == 3) || (argc == 4))
                strcpy(ifname, argv[1]);
 
-       if (argc == 3)
+       if ((argc == 3) || (argc == 4))
                loadaddr = strtoul(argv[2], NULL, 16);
 
+       if (argc == 4)
+               ch_add = strtoul(argv[3], NULL, 16);
+
        /* Form the output file name. */
        strcpy(ofname, ifname);
        strcat(ofname, ".ift");
@@ -285,7 +289,9 @@ int main(int argc, char *argv[])
                fwrite(&ch, 1, 1, ofile);
 #endif
 
-       fwrite(&config_header, 1, 512, ofile);
+       if (ch_add)
+               fwrite(&config_header, 1, 512, ofile);
+
        fwrite(&len, 1, 4, ofile);
        fwrite(&loadaddr, 1, 4, ofile);
        for (i = 0; i < len; i++) {