]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - ipc/ipcdev.git/blobdiff - ipc-bios.bld
GatePersonN: Update stack variable to match usage
[ipc/ipcdev.git] / ipc-bios.bld
index 80fd6c8311e8851a37d2e069bfd007381217a2dc..afaecda5264fc228b18f1c427d284be1e42a204b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011-2014, Texas Instruments Incorporated
+ * Copyright (c) 2011-2018 Texas Instruments Incorporated - http://www.ti.com
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -67,7 +67,7 @@ var Build = xdc.useModule('xdc.bld.BuildEnvironment');
 var Pkg = xdc.useModule('xdc.bld.PackageContents');
 
 /* Common ccopts suffix used for all C6x targets */
-var c6xOpts = " -mi10 -mo -pdr -pden -pds=238 -pds=880 -pds1110 -g ";
+var c6xOpts = " -mi10 -mo -pdr -pden -pds=238 -pds=880 -pds1110 -g --mem_model:const=data --mem_model:data=far ";
 
 /*
  * -mi10 => maximum cycles that interrupts may be disabled is 10
@@ -76,21 +76,18 @@ var c6xOpts = " -mi10 -mo -pdr -pden -pds=238 -pds=880 -pds1110 -g ";
  * -pden => show remark ids
  * -pds=238 => ignore "controlling expression is constant"
  * -pds=880 => ignore "unused parameter"
+ * --mem_model:const=data => Const objects are placed according to the
+ * --mem_model:data option
+ * --mem_model:data=far => Data accesses default to far
  */
 
 var ccOpts = {
-    "ti.targets.C28_large"            : " -mo -g ",
-    "ti.targets.C28_float"            : " -mo -g ",
-
     "ti.targets.C64P"                 : c6xOpts,
-    "ti.targets.C64P_big_endian"      : c6xOpts,
     "ti.targets.C674"                 : c6xOpts,
 
     "ti.targets.elf.C64P"             : c6xOpts,
-    "ti.targets.elf.C64P_big_endian"  : c6xOpts,
     "ti.targets.elf.C64T"             : c6xOpts,
     "ti.targets.elf.C66"              : c6xOpts,
-    "ti.targets.elf.C66_big_endian"   : c6xOpts,
     "ti.targets.elf.C674"             : c6xOpts,
 
     "ti.targets.arm.elf.Arm9"         : " -ms -g ",
@@ -99,17 +96,21 @@ var ccOpts = {
     "ti.targets.arm.elf.M3"           : " --embed_inline_assembly -ms -pds=71",
     "ti.targets.arm.elf.M4"           : " -ms -g ",
     "ti.targets.arm.elf.M4F"          : " -ms -g ",
+    "ti.targets.arm.elf.R5F"          : " -ms -g ",
 
     "ti.targets.arp32.elf.ARP32"      : " -g ",
     "ti.targets.arp32.elf.ARP32_far"  : " -g ",
 
     "gnu.targets.arm.A8F"             : " -g ",
-    "gnu.targets.arm.A15F"            : " -g "
+    "gnu.targets.arm.A15F"            : " -g ",
+    "gnu.targets.arm.A53F"            : " -g "
 };
 
 var lnkOpts = {
     "ti.targets.elf.C66"              : " --cinit_compression=off",
     "ti.targets.arm.elf.M4"           : " --retain=.resource_table" +
+                                        " --cinit_compression=off",
+    "ti.targets.arm.elf.R5F"          : " --retain=.resource_table" +
                                         " --cinit_compression=off"
 };
 
@@ -155,7 +156,8 @@ for (arg = 0; arg < arguments.length; arg++) {
         continue;
     }
 
-//    print("Building '" + targetName + "' using '" + rootDir + "' ...");
+//    print("Building for platform:" + platform + " targetName:" + targetName
+//            + " rootDir: " + rootDir + " smpEnabled:" + smpEnabled + "...");
 
     var target = xdc.useModule(targetName);
     target.rootDir = rootDir;
@@ -190,6 +192,10 @@ for (arg = 0; arg < arguments.length; arg++) {
 
     if (targetName.match(/elf\.C66$/)) {
         switch (platform) {
+            case '66AK2G':
+                target.platforms.$add("ti.platforms.evmTCI66AK2G02:core0");
+                break;
+
             case '66AK2E':
                 target.platforms.$add("ti.platforms.evmC66AK2E:core0");
                 break;
@@ -206,6 +212,10 @@ for (arg = 0; arg < arguments.length; arg++) {
                 target.platforms.$add("ti.platforms.evmTCI6638K2K:core0");
                 break;
 
+            case 'C6678':
+                target.platforms.$add("ti.platforms.evm6678");
+                break;
+
             case 'DRA7XX':
                 target.platforms.$add("ti.platforms.evmDRA7XX:dsp1");
                 target.platforms.$add("ti.platforms.evmDRA7XX:dsp2");
@@ -220,7 +230,7 @@ for (arg = 0; arg < arguments.length; arg++) {
                 break;
 
             default:
-                print("Unknown platform, skipping " + platform);
+                print("Unknown C66x platform, skipping " + platform);
                 break;
         }
     }
@@ -251,7 +261,20 @@ for (arg = 0; arg < arguments.length; arg++) {
                 break;
 
             default:
-                print("Unknown platform, skipping " + platform);
+                print("Unknown M4 platform, skipping " + platform);
+                break;
+        }
+    }
+
+    if (targetName.match(/elf\.R5F$/)) {
+        switch (platform) {
+            case 'AM65XX':
+                target.platforms.$add("ti.platforms.cortexR:AM65X:false:R5F0");
+                target.platforms.$add("ti.platforms.cortexR:AM65X:false:R5F1");
+                break;
+
+            default:
+                print("Unknown R5F platform, skipping " + platform);
                 break;
         }
     }
@@ -266,6 +289,10 @@ if (smpEnabled) {
                 xdc.module("ti.targets.arm.elf.M3").profiles["debug"];
         xdc.module("ti.targets.arm.elf.M4").profiles["smp"] =
                 xdc.module("ti.targets.arm.elf.M4").profiles["debug"];
+        xdc.module("gnu.targets.arm.A15F").profiles["smp"] =
+                xdc.module("gnu.targets.arm.A15F").profiles["debug"];
+        xdc.module("gnu.targets.arm.A53F").profiles["smp"] =
+                xdc.module("gnu.targets.arm.A53F").profiles["debug"];
     }
 }