Revert "[TI] Resolve linker reenable ci  (#28869)" (#28893)

This reverts commit 8e806c55923fdc587719d8605113d328f091bcd2.

Co-authored-by: Andrei Litvin <andreilitvin@google.com>
diff --git a/.github/workflows/examples-cc13x2x7_26x2x7.yaml b/.github/workflows/examples-cc13x2x7_26x2x7.yaml
index 91f1107..608465b 100644
--- a/.github/workflows/examples-cc13x2x7_26x2x7.yaml
+++ b/.github/workflows/examples-cc13x2x7_26x2x7.yaml
@@ -33,7 +33,10 @@
             BUILD_TYPE: gn_cc26x2x7
 
         runs-on: ubuntu-latest
-        if: github.actor != 'restyled-io[bot]'
+        # This CI is disabled because running out of flash and a solution was not found in time, see https://github.com/project-chip/connectedhomeip/pull/26186
+        # An issue was opened at https://github.com/project-chip/connectedhomeip/issues/26957
+        # TODO : Enable this once we have a way to run without out of flash failure or remove platform if it cannot support the SDK
+        if: github.actor != 'restyled-io[bot]' && false
 
         container:
             image: ghcr.io/project-chip/chip-build-ti:1
@@ -58,10 +61,9 @@
                       ./scripts/build/build_examples.py \
                       --target ti-cc13x2x7_26x2x7-lock-mtd \
                       --target ti-cc13x2x7_26x2x7-pump-mtd \
-                      --target ti-cc13x2x7_26x2x7-lighting-mtd \
+                      --target ti-cc13x2x7_26x2x7-lighting \
                       --target ti-cc13x2x7_26x2x7-pump-controller-mtd \
-                      --target ti-cc13x4_26x4-lighting-ftd \
-                      --target ti-cc13x4_26x4-lighting-mtd \
+                      --target ti-cc13x4_26x4-lighting \
                       --target ti-cc13x4_26x4-lock-ftd \
                       --target ti-cc13x4_26x4-lock-mtd \
                       --target ti-cc13x4_26x4-pump-mtd \
@@ -77,13 +79,13 @@
                     cc13x2_26x2 LP_CC2652R7 lock-mtd \
                     out/artifacts/ti-cc13x2x7_26x2x7-lock-mtd/chip-LP_CC2652R7-lock-example.out \
                     /tmp/bloat_reports/
-            - name: Get Pump MTD size stats
+            - name: Get Pump App size stats
               run: |
                   .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                     cc13x2_26x2 LP_CC2652R7 pump-app \
                     out/artifacts/ti-cc13x2x7_26x2x7-pump-mtd/chip-LP_CC2652R7-pump-example.out \
                     /tmp/bloat_reports/
-            - name: Get Pump Controller MTD size stats
+            - name: Get Pump Controller App size stats
               run: |
                   .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                     cc13x2_26x2 LP_CC2652R7 pump-controller-app \
@@ -107,17 +109,17 @@
                     cc13x4_26x4 LP_EM_CC1354P10_6 pump-app \
                     out/artifacts/ti-cc13x4_26x4-pump-mtd/chip-LP_EM_CC1354P10_6-pump-example.out \
                     /tmp/bloat_reports/
-            - name: Get Pump Controller MTD size stats
+            - name: Get Pump Controller App size stats
               run: |
                   .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                     cc13x4_26x4 LP_EM_CC1354P10_6 pump-controller-app \
                     out/artifacts/ti-cc13x4_26x4-pump-controller-mtd/chip-LP_EM_CC1354P10_6-pump-controller-example.out \
                     /tmp/bloat_reports/
-            - name: Get Lighting FTD size stats
+            - name: Get Lighting App size stats
               run: |
                   .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                     cc13x4_26x4 LP_EM_CC1354P10_6 lighting-app \
-                    out/artifacts/ti-cc13x4_26x4-lighting-mtd/chip-LP_EM_CC1354P10_6-lighting-example.out \
+                    out/artifacts/ti-cc13x4_26x4-lighting/chip-LP_EM_CC1354P10_6-lighting-example.out \
                     /tmp/bloat_reports/
             - name: Uploading Size Reports
               uses: ./.github/actions/upload-size-reports
diff --git a/examples/all-clusters-app/cc13x4_26x4/args.gni b/examples/all-clusters-app/cc13x4_26x4/args.gni
index 5d97a9c..c54b13b 100644
--- a/examples/all-clusters-app/cc13x4_26x4/args.gni
+++ b/examples/all-clusters-app/cc13x4_26x4/args.gni
@@ -30,7 +30,6 @@
 chip_enable_ota_requestor = false
 
 openthread_external_platform = "${chip_root}/third_party/openthread/platforms/cc13x4_26x4:libopenthread-cc13x4_cc26x4"
-chip_openthread_ftd = true
 
 # Disable CHIP Logging
 #chip_progress_logging = false
diff --git a/examples/lighting-app/cc13x2x7_26x2x7/BUILD.gn b/examples/lighting-app/cc13x2x7_26x2x7/BUILD.gn
index 86c9229..aec1e66 100644
--- a/examples/lighting-app/cc13x2x7_26x2x7/BUILD.gn
+++ b/examples/lighting-app/cc13x2x7_26x2x7/BUILD.gn
@@ -34,6 +34,8 @@
 }
 
 ti_sysconfig("sysconfig") {
+  sources = [ "${project_dir}/chip.syscfg" ]
+
   outputs = [
     "ti_radio_config.c",
     "ti_radio_config.h",
@@ -43,17 +45,19 @@
     "ti_ble_config.h",
     "ti_dmm_application_policy.c",
     "ti_dmm_application_policy.h",
-  ]
 
-  if (chip_enable_ota_requestor) {
-    sources = [ "${project_dir}/chip_ota.syscfg" ]
-  } else {
-    sources = [ "${project_dir}/chip.syscfg" ]
-    outputs += [
-      "ti_devices_config.c",
-      "ti_devices_config.h",
-    ]
-  }
+    # disabled until upstream generation is aligned
+    #"tiop_config.h",
+    #"tiop_config.c",
+
+    # not traditional source files
+    #"ti_utils_build_linker.cmd.genlibs",
+    #"syscfg_c.rov.xs",
+    #"ti_utils_runtime_model.gv",
+    #"ti_utils_runtime_Makefile",
+    #"ti_ble_app_config.opt",
+    #"ti_build_config.opt",
+  ]
 
   public_configs = [ ":sdk_dmm_config" ]
 
diff --git a/examples/lighting-app/cc13x2x7_26x2x7/args.gni b/examples/lighting-app/cc13x2x7_26x2x7/args.gni
index 56695a5..9e64039 100644
--- a/examples/lighting-app/cc13x2x7_26x2x7/args.gni
+++ b/examples/lighting-app/cc13x2x7_26x2x7/args.gni
@@ -36,7 +36,7 @@
 chip_progress_logging = false
 
 #chip_detail_logging = false
-chip_automation_logging = false
+#chip_automation_logging = false
 
 # BLE options
 chip_config_network_layer_ble = true
diff --git a/examples/lighting-app/cc13x2x7_26x2x7/chip.syscfg b/examples/lighting-app/cc13x2x7_26x2x7/chip.syscfg
index d190703..995ad22 100644
--- a/examples/lighting-app/cc13x2x7_26x2x7/chip.syscfg
+++ b/examples/lighting-app/cc13x2x7_26x2x7/chip.syscfg
@@ -84,7 +84,8 @@
     CCFG[setting] = ccfgSettings[setting];
 }
 
-CCFG.enableCodeGeneration = true;
+// Disable CCFG generation, this is added by the BIM project
+CCFG.enableCodeGeneration = false;
 
 /* NVS */
 NVS1.$name                      = "CONFIG_NVSINTERNAL";
diff --git a/examples/lighting-app/cc13x2x7_26x2x7/chip_ota.syscfg b/examples/lighting-app/cc13x2x7_26x2x7/chip_ota.syscfg
deleted file mode 100644
index 995ad22..0000000
--- a/examples/lighting-app/cc13x2x7_26x2x7/chip_ota.syscfg
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- *
- *    Copyright (c) 2020 Project CHIP Authors
- *    Copyright (c) 2020 Texas Instruments Incorporated
- *    All rights reserved.
- *
- *    Licensed under the Apache License, Version 2.0 (the "License");
- *    you may not use this file except in compliance with the License.
- *    You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *    Unless required by applicable law or agreed to in writing, software
- *    distributed under the License is distributed on an "AS IS" BASIS,
- *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *    See the License for the specific language governing permissions and
- *    limitations under the License.
- */
-
-
-/* Modules */
-var AESCCM      = scripting.addModule("/ti/drivers/AESCCM");
-var AESECB      = scripting.addModule("/ti/drivers/AESECB");
-var Button      = scripting.addModule("/ti/drivers/apps/Button");
-var LED         = scripting.addModule("/ti/drivers/apps/LED");
-var NVS         = scripting.addModule("/ti/drivers/NVS");
-var RF          = scripting.addModule("/ti/drivers/RF");
-var RFDesign    = scripting.addModule("ti/devices/radioconfig/rfdesign");
-var RFCustom    = scripting.addModule("/ti/devices/radioconfig/custom");
-var TRNG        = scripting.addModule("/ti/drivers/TRNG");
-var SHA2        = scripting.addModule("/ti/drivers/SHA2");
-var UART2       = scripting.addModule("/ti/drivers/UART2");
-var ble         = scripting.addModule("/ti/ble5stack/ble");
-var dmm         = scripting.addModule("/ti/dmm/dmm");
-var AESCTRDRBG  = scripting.addModule("/ti/drivers/AESCTRDRBG");
-var ECDH        = scripting.addModule("/ti/drivers/ECDH");
-
-/* Instances */
-var AESCCM1     = AESCCM.addInstance();
-var AESECB1     = AESECB.addInstance();
-var AESECB2     = AESECB.addInstance();
-var Button1     = Button.addInstance();
-var Button2     = Button.addInstance();
-var NVS1        = NVS.addInstance();
-var NVS2        = NVS.addInstance();
-var SHA21       = SHA2.addInstance();
-var LED1        = LED.addInstance();
-var LED2        = LED.addInstance();
-var TRNG1       = TRNG.addInstance();
-var TRNG2       = TRNG.addInstance();
-var TRNG3       = TRNG.addInstance();
-var UART2      = UART2.addInstance();
-var AESCTRDRBG1 = AESCTRDRBG.addInstance();
-var ECDH1       = ECDH.addInstance();
-
-AESCTRDRBG1.$name              = "CONFIG_AESCTRDRBG_0";
-
-AESCCM1.$name = "CONFIG_AESCCM0";
-
-AESECB1.$name = "CONFIG_AESECB0";
-AESECB2.$name = "CONFIG_AESECB_1";
-
-ECDH1.$name = "CONFIG_ECDH0";
-
-/* Left Button */
-Button1.$name                       = "CONFIG_BTN_LEFT";
-Button1.$hardware                   = system.deviceData.board.components["BTN-1"];
-Button1.gpioPin.$name               = "CONFIG_GPIO_BTN1";
-Button1.gpioPin.pull                = "Pull Up";
-Button1.gpioPin.interruptTrigger    = "Falling Edge";
-
-/* Left Button */
-Button2.$name                       = "CONFIG_BTN_RIGHT";
-Button2.$hardware                   = system.deviceData.board.components["BTN-2"];
-Button2.gpioPin.$name               = "CONFIG_GPIO_BTN2";
-Button2.gpioPin.pull                = "Pull Up";
-Button2.gpioPin.interruptTrigger    = "Falling Edge";
-
-/* ======== CCFG ======== */
-var CCFG  = scripting.addModule("/ti/devices/CCFG");
-const ccfgSettings = system.getScript("/ti/common/lprf_ccfg_settings.js").ccfgSettings;
-for(var setting in ccfgSettings)
-{
-    CCFG[setting] = ccfgSettings[setting];
-}
-
-// Disable CCFG generation, this is added by the BIM project
-CCFG.enableCodeGeneration = false;
-
-/* NVS */
-NVS1.$name                      = "CONFIG_NVSINTERNAL";
-NVS1.internalFlash.regionBase = 0xAA000;
-NVS1.internalFlash.regionSize = 0x4000;
-
-NVS2.$name                                 = "CONFIG_NVSEXTERNAL";
-NVS2.nvsType                               = "External"; // NVS Region Type
-NVS2.$hardware                             = system.deviceData.board.components.MX25R8035F;
-
-/* RF */
-/* if an antenna component exists, assign it to the rf instance */
-if (system.deviceData.board && system.deviceData.board.components.RF) {
-    RF.$hardware = system.deviceData.board.components.RF;
-}
-
-const rfDesignSettings = system.getScript("/ti/common/lprf_rf_design_settings.js").rfDesignSettings;
-for(var setting in rfDesignSettings)
-{
-    RFDesign[setting] = rfDesignSettings[setting];
-}
-
-/* Handling for RF frontend characterization */
-if(RFDesign.rfDesign.match(/LP_CC2652PSIP/))
-{
-    RFCustom.ieee = ["ieee154p10"];
-    var rfCodeExportConfig = RFCustom.radioConfigieee154p10.codeExportConfig
-}
-else
-{
-    RFCustom.ieee = ["ieee154"];
-    var rfCodeExportConfig = RFCustom.radioConfigieee154.codeExportConfig
-}
-
-var cmdList = [
-    "cmdIeeeTx",
-    "cmdIeeeRx",
-    "cmdIeeeCsma",
-    "cmdIeeeEdScan",
-    "cmdIeeeRxAck",
-    "cmdTxTest"
-];
-
-rfCodeExportConfig.useConst     = true;
-rfCodeExportConfig.useMulti     = true;
-rfCodeExportConfig.symGenMethod = "Custom";
-
-const deviceId = system.deviceData.deviceId;
-
-// Add high PA options if present
-if(deviceId.match(/CC(265[12]R|2674R|1352R1|1354R)/))
-{
-    cmdList.push("cmdRadioSetup");
-    rfCodeExportConfig.cmdRadioSetup = "RF_cmdIeeeRadioSetup";
-}
-else if(deviceId.match(/CC(265[12]P|2674P|1352P)/))
-{
-    cmdList.push("cmdRadioSetupPa");
-    rfCodeExportConfig.cmdRadioSetupPa = "RF_cmdIeeeRadioSetup";
-    rfCodeExportConfig.paExport = "combined";
-}
-else if(deviceId.match(/CC(265[34]|1354)P/))
-{
-    cmdList.push("cmdRadioSetupPa");
-    rfCodeExportConfig.cmdRadioSetupPa = "RF_cmdIeeeRadioSetup";
-    // currently not characterized for high PA
-}
-else
-{
-    throw new Error("Could not match platform to any known platform types");
-}
-
-rfCodeExportConfig.cmdList_ieee_15_4 = cmdList;
-
-/* Red LED */
-LED1.$name                      = "CONFIG_LED_RED";
-LED1.$hardware                  = system.deviceData.board.components.LED_RED;
-LED1.gpioPin.$name              = "CONFIG_GPIO_RLED";
-LED1.gpioPin.mode               = "Output";
-LED1.gpioPin.callbackFunction   = "";
-
-/* Green LED */
-LED2.$name                      = "CONFIG_LED_GREEN";
-LED2.$hardware                  = system.deviceData.board.components.LED_GREEN;
-LED2.gpioPin.$name              = "CONFIG_GPIO_GLED";
-LED2.gpioPin.mode               = "Output";
-LED2.gpioPin.callbackFunction   = "";
-
-/* Debug UART  */
-UART2.$hardware     = system.deviceData.board.components.XDS110UART;
-UART2.$name         = "CONFIG_UART2_DEBUG";
-
-/* TRNG */
-TRNG1.$name     = "CONFIG_TRNG_0";
-TRNG2.$name     = "CONFIG_TRNG_THREAD";
-TRNG3.$name     = "CONFIG_TRNG_APP";
-
-/* BLE */
-ble.addressMode                                           = "ADDRMODE_RP_WITH_PUBLIC_ID";
-ble.maxConnNum                                            = 1;
-ble.numOfAdvSets                                          = 1;
-ble.lockProject                                           = true;
-ble.oneLibSizeOpt                                         = true;
-ble.maxPDUSize                                            = 255;
-ble.radioConfig.codeExportConfig.$name                    = "ti_devices_radioconfig_code_export_param2";
-ble.connUpdateParamsPeripheral.$name                      = "ti_ble5stack_general_ble_conn_update_params0";
-ble.connUpdateParamsPeripheral.reqMinConnInt               = 30;
-ble.connUpdateParamsPeripheral.reqMaxConnInt               = 50;
-
-
-ble.advSet1.$name                                         = "ti_ble5stack_broadcaster_advertisement_set0";
-ble.advSet1.advParam1.$name                               = "ti_ble5stack_broadcaster_advertisement_params0";
-
-/* DMM */
-dmm.project                                          = "ti_thread_thermostat_remote_display";
-dmm.stackRoles                                       = ["blePeripheral","threadFTD"];
-dmm.lockStackRoles                                   = true;
-dmm.numApplicationStates                             = 10;
-dmm.applicationState0                                = "ANY";
-dmm.applicationState1                                = "DMMPOLICY_BLE_IDLE";
-dmm.applicationState2                                = "DMMPOLICY_BLE_ADV";
-dmm.applicationState3                                = "DMMPOLICY_BLE_CONNECTING";
-dmm.applicationState4                                = "DMMPOLICY_BLE_HIGH_BANDWIDTH";
-dmm.applicationState5                                = "DMMPOLICY_BLE_CONNECTED";
-dmm.applicationState6                                = "DMMPOLICY_BLE_OAD";
-dmm.applicationState7                                = "DMMPOLICY_THREAD_IDLE";
-dmm.applicationState8                                = "DMMPOLICY_THREAD_LINK_EST";
-dmm.applicationState9                                = "DMMPOLICY_THREAD_DATA";
-dmm.policyArray.create(4);
-dmm.policyArray[0].$name                             = "ti_dmm_policy_dmm_policy0";
-dmm.policyArray[0].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble0";
-dmm.policyArray[0].blePeripheral.applicationStates   = ["applicationState6"];
-dmm.policyArray[0].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread0";
-dmm.policyArray[0].threadFTD.pause                   = "DMMPOLICY_PAUSED";
-dmm.policyArray[1].$name                             = "ti_dmm_policy_dmm_policy1";
-dmm.policyArray[1].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble1";
-dmm.policyArray[1].blePeripheral.applicationStates   = ["applicationState3","applicationState4"];
-dmm.policyArray[1].blePeripheral.weight              = 25;
-dmm.policyArray[1].blePeripheral.appliedActivity     = ["DMMPOLICY_APPLIED_ACTIVITY_BLE_CONNECTION"];
-dmm.policyArray[1].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread1";
-dmm.policyArray[2].$name                             = "ti_dmm_policy_dmm_policy2";
-dmm.policyArray[2].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble2";
-dmm.policyArray[2].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread2";
-dmm.policyArray[2].threadFTD.weight                  = 30;
-dmm.policyArray[2].threadFTD.applicationStates       = ["applicationState8"];
-dmm.policyArray[2].threadFTD.appliedActivity         = ["DMMPOLICY_APPLIED_ACTIVITY_ALL"];
-dmm.policyArray[3].$name                             = "ti_dmm_policy_dmm_policy3";
-dmm.policyArray[3].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble3";
-dmm.policyArray[3].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread3";
-dmm.policyArray[3].threadFTD.weight                  = 1;
diff --git a/examples/lock-app/cc13x2x7_26x2x7/BUILD.gn b/examples/lock-app/cc13x2x7_26x2x7/BUILD.gn
index 1bbb257..0bd2dfe 100644
--- a/examples/lock-app/cc13x2x7_26x2x7/BUILD.gn
+++ b/examples/lock-app/cc13x2x7_26x2x7/BUILD.gn
@@ -34,6 +34,8 @@
 }
 
 ti_sysconfig("sysconfig") {
+  sources = [ "${project_dir}/chip.syscfg" ]
+
   outputs = [
     "ti_radio_config.c",
     "ti_radio_config.h",
@@ -43,17 +45,19 @@
     "ti_ble_config.h",
     "ti_dmm_application_policy.c",
     "ti_dmm_application_policy.h",
-  ]
 
-  if (chip_enable_ota_requestor) {
-    sources = [ "${project_dir}/chip_ota.syscfg" ]
-  } else {
-    sources = [ "${project_dir}/chip.syscfg" ]
-    outputs += [
-      "ti_devices_config.c",
-      "ti_devices_config.h",
-    ]
-  }
+    # disabled until upstream generation is aligned
+    #"tiop_config.h",
+    #"tiop_config.c",
+
+    # not traditional source files
+    #"ti_utils_build_linker.cmd.genlibs",
+    #"syscfg_c.rov.xs",
+    #"ti_utils_runtime_model.gv",
+    #"ti_utils_runtime_Makefile",
+    #"ti_ble_app_config.opt",
+    #"ti_build_config.opt",
+  ]
 
   public_configs = [ ":sdk_dmm_config" ]
 
diff --git a/examples/lock-app/cc13x2x7_26x2x7/args.gni b/examples/lock-app/cc13x2x7_26x2x7/args.gni
index 8c7a4eb..52ad321 100644
--- a/examples/lock-app/cc13x2x7_26x2x7/args.gni
+++ b/examples/lock-app/cc13x2x7_26x2x7/args.gni
@@ -36,7 +36,7 @@
 chip_progress_logging = false
 
 #chip_detail_logging = false
-#chip_automation_logging = false
+chip_automation_logging = false
 
 # BLE options
 chip_config_network_layer_ble = true
diff --git a/examples/lock-app/cc13x2x7_26x2x7/chip.syscfg b/examples/lock-app/cc13x2x7_26x2x7/chip.syscfg
index d190703..995ad22 100644
--- a/examples/lock-app/cc13x2x7_26x2x7/chip.syscfg
+++ b/examples/lock-app/cc13x2x7_26x2x7/chip.syscfg
@@ -84,7 +84,8 @@
     CCFG[setting] = ccfgSettings[setting];
 }
 
-CCFG.enableCodeGeneration = true;
+// Disable CCFG generation, this is added by the BIM project
+CCFG.enableCodeGeneration = false;
 
 /* NVS */
 NVS1.$name                      = "CONFIG_NVSINTERNAL";
diff --git a/examples/lock-app/cc13x2x7_26x2x7/chip_ota.syscfg b/examples/lock-app/cc13x2x7_26x2x7/chip_ota.syscfg
deleted file mode 100644
index 995ad22..0000000
--- a/examples/lock-app/cc13x2x7_26x2x7/chip_ota.syscfg
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- *
- *    Copyright (c) 2020 Project CHIP Authors
- *    Copyright (c) 2020 Texas Instruments Incorporated
- *    All rights reserved.
- *
- *    Licensed under the Apache License, Version 2.0 (the "License");
- *    you may not use this file except in compliance with the License.
- *    You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *    Unless required by applicable law or agreed to in writing, software
- *    distributed under the License is distributed on an "AS IS" BASIS,
- *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *    See the License for the specific language governing permissions and
- *    limitations under the License.
- */
-
-
-/* Modules */
-var AESCCM      = scripting.addModule("/ti/drivers/AESCCM");
-var AESECB      = scripting.addModule("/ti/drivers/AESECB");
-var Button      = scripting.addModule("/ti/drivers/apps/Button");
-var LED         = scripting.addModule("/ti/drivers/apps/LED");
-var NVS         = scripting.addModule("/ti/drivers/NVS");
-var RF          = scripting.addModule("/ti/drivers/RF");
-var RFDesign    = scripting.addModule("ti/devices/radioconfig/rfdesign");
-var RFCustom    = scripting.addModule("/ti/devices/radioconfig/custom");
-var TRNG        = scripting.addModule("/ti/drivers/TRNG");
-var SHA2        = scripting.addModule("/ti/drivers/SHA2");
-var UART2       = scripting.addModule("/ti/drivers/UART2");
-var ble         = scripting.addModule("/ti/ble5stack/ble");
-var dmm         = scripting.addModule("/ti/dmm/dmm");
-var AESCTRDRBG  = scripting.addModule("/ti/drivers/AESCTRDRBG");
-var ECDH        = scripting.addModule("/ti/drivers/ECDH");
-
-/* Instances */
-var AESCCM1     = AESCCM.addInstance();
-var AESECB1     = AESECB.addInstance();
-var AESECB2     = AESECB.addInstance();
-var Button1     = Button.addInstance();
-var Button2     = Button.addInstance();
-var NVS1        = NVS.addInstance();
-var NVS2        = NVS.addInstance();
-var SHA21       = SHA2.addInstance();
-var LED1        = LED.addInstance();
-var LED2        = LED.addInstance();
-var TRNG1       = TRNG.addInstance();
-var TRNG2       = TRNG.addInstance();
-var TRNG3       = TRNG.addInstance();
-var UART2      = UART2.addInstance();
-var AESCTRDRBG1 = AESCTRDRBG.addInstance();
-var ECDH1       = ECDH.addInstance();
-
-AESCTRDRBG1.$name              = "CONFIG_AESCTRDRBG_0";
-
-AESCCM1.$name = "CONFIG_AESCCM0";
-
-AESECB1.$name = "CONFIG_AESECB0";
-AESECB2.$name = "CONFIG_AESECB_1";
-
-ECDH1.$name = "CONFIG_ECDH0";
-
-/* Left Button */
-Button1.$name                       = "CONFIG_BTN_LEFT";
-Button1.$hardware                   = system.deviceData.board.components["BTN-1"];
-Button1.gpioPin.$name               = "CONFIG_GPIO_BTN1";
-Button1.gpioPin.pull                = "Pull Up";
-Button1.gpioPin.interruptTrigger    = "Falling Edge";
-
-/* Left Button */
-Button2.$name                       = "CONFIG_BTN_RIGHT";
-Button2.$hardware                   = system.deviceData.board.components["BTN-2"];
-Button2.gpioPin.$name               = "CONFIG_GPIO_BTN2";
-Button2.gpioPin.pull                = "Pull Up";
-Button2.gpioPin.interruptTrigger    = "Falling Edge";
-
-/* ======== CCFG ======== */
-var CCFG  = scripting.addModule("/ti/devices/CCFG");
-const ccfgSettings = system.getScript("/ti/common/lprf_ccfg_settings.js").ccfgSettings;
-for(var setting in ccfgSettings)
-{
-    CCFG[setting] = ccfgSettings[setting];
-}
-
-// Disable CCFG generation, this is added by the BIM project
-CCFG.enableCodeGeneration = false;
-
-/* NVS */
-NVS1.$name                      = "CONFIG_NVSINTERNAL";
-NVS1.internalFlash.regionBase = 0xAA000;
-NVS1.internalFlash.regionSize = 0x4000;
-
-NVS2.$name                                 = "CONFIG_NVSEXTERNAL";
-NVS2.nvsType                               = "External"; // NVS Region Type
-NVS2.$hardware                             = system.deviceData.board.components.MX25R8035F;
-
-/* RF */
-/* if an antenna component exists, assign it to the rf instance */
-if (system.deviceData.board && system.deviceData.board.components.RF) {
-    RF.$hardware = system.deviceData.board.components.RF;
-}
-
-const rfDesignSettings = system.getScript("/ti/common/lprf_rf_design_settings.js").rfDesignSettings;
-for(var setting in rfDesignSettings)
-{
-    RFDesign[setting] = rfDesignSettings[setting];
-}
-
-/* Handling for RF frontend characterization */
-if(RFDesign.rfDesign.match(/LP_CC2652PSIP/))
-{
-    RFCustom.ieee = ["ieee154p10"];
-    var rfCodeExportConfig = RFCustom.radioConfigieee154p10.codeExportConfig
-}
-else
-{
-    RFCustom.ieee = ["ieee154"];
-    var rfCodeExportConfig = RFCustom.radioConfigieee154.codeExportConfig
-}
-
-var cmdList = [
-    "cmdIeeeTx",
-    "cmdIeeeRx",
-    "cmdIeeeCsma",
-    "cmdIeeeEdScan",
-    "cmdIeeeRxAck",
-    "cmdTxTest"
-];
-
-rfCodeExportConfig.useConst     = true;
-rfCodeExportConfig.useMulti     = true;
-rfCodeExportConfig.symGenMethod = "Custom";
-
-const deviceId = system.deviceData.deviceId;
-
-// Add high PA options if present
-if(deviceId.match(/CC(265[12]R|2674R|1352R1|1354R)/))
-{
-    cmdList.push("cmdRadioSetup");
-    rfCodeExportConfig.cmdRadioSetup = "RF_cmdIeeeRadioSetup";
-}
-else if(deviceId.match(/CC(265[12]P|2674P|1352P)/))
-{
-    cmdList.push("cmdRadioSetupPa");
-    rfCodeExportConfig.cmdRadioSetupPa = "RF_cmdIeeeRadioSetup";
-    rfCodeExportConfig.paExport = "combined";
-}
-else if(deviceId.match(/CC(265[34]|1354)P/))
-{
-    cmdList.push("cmdRadioSetupPa");
-    rfCodeExportConfig.cmdRadioSetupPa = "RF_cmdIeeeRadioSetup";
-    // currently not characterized for high PA
-}
-else
-{
-    throw new Error("Could not match platform to any known platform types");
-}
-
-rfCodeExportConfig.cmdList_ieee_15_4 = cmdList;
-
-/* Red LED */
-LED1.$name                      = "CONFIG_LED_RED";
-LED1.$hardware                  = system.deviceData.board.components.LED_RED;
-LED1.gpioPin.$name              = "CONFIG_GPIO_RLED";
-LED1.gpioPin.mode               = "Output";
-LED1.gpioPin.callbackFunction   = "";
-
-/* Green LED */
-LED2.$name                      = "CONFIG_LED_GREEN";
-LED2.$hardware                  = system.deviceData.board.components.LED_GREEN;
-LED2.gpioPin.$name              = "CONFIG_GPIO_GLED";
-LED2.gpioPin.mode               = "Output";
-LED2.gpioPin.callbackFunction   = "";
-
-/* Debug UART  */
-UART2.$hardware     = system.deviceData.board.components.XDS110UART;
-UART2.$name         = "CONFIG_UART2_DEBUG";
-
-/* TRNG */
-TRNG1.$name     = "CONFIG_TRNG_0";
-TRNG2.$name     = "CONFIG_TRNG_THREAD";
-TRNG3.$name     = "CONFIG_TRNG_APP";
-
-/* BLE */
-ble.addressMode                                           = "ADDRMODE_RP_WITH_PUBLIC_ID";
-ble.maxConnNum                                            = 1;
-ble.numOfAdvSets                                          = 1;
-ble.lockProject                                           = true;
-ble.oneLibSizeOpt                                         = true;
-ble.maxPDUSize                                            = 255;
-ble.radioConfig.codeExportConfig.$name                    = "ti_devices_radioconfig_code_export_param2";
-ble.connUpdateParamsPeripheral.$name                      = "ti_ble5stack_general_ble_conn_update_params0";
-ble.connUpdateParamsPeripheral.reqMinConnInt               = 30;
-ble.connUpdateParamsPeripheral.reqMaxConnInt               = 50;
-
-
-ble.advSet1.$name                                         = "ti_ble5stack_broadcaster_advertisement_set0";
-ble.advSet1.advParam1.$name                               = "ti_ble5stack_broadcaster_advertisement_params0";
-
-/* DMM */
-dmm.project                                          = "ti_thread_thermostat_remote_display";
-dmm.stackRoles                                       = ["blePeripheral","threadFTD"];
-dmm.lockStackRoles                                   = true;
-dmm.numApplicationStates                             = 10;
-dmm.applicationState0                                = "ANY";
-dmm.applicationState1                                = "DMMPOLICY_BLE_IDLE";
-dmm.applicationState2                                = "DMMPOLICY_BLE_ADV";
-dmm.applicationState3                                = "DMMPOLICY_BLE_CONNECTING";
-dmm.applicationState4                                = "DMMPOLICY_BLE_HIGH_BANDWIDTH";
-dmm.applicationState5                                = "DMMPOLICY_BLE_CONNECTED";
-dmm.applicationState6                                = "DMMPOLICY_BLE_OAD";
-dmm.applicationState7                                = "DMMPOLICY_THREAD_IDLE";
-dmm.applicationState8                                = "DMMPOLICY_THREAD_LINK_EST";
-dmm.applicationState9                                = "DMMPOLICY_THREAD_DATA";
-dmm.policyArray.create(4);
-dmm.policyArray[0].$name                             = "ti_dmm_policy_dmm_policy0";
-dmm.policyArray[0].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble0";
-dmm.policyArray[0].blePeripheral.applicationStates   = ["applicationState6"];
-dmm.policyArray[0].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread0";
-dmm.policyArray[0].threadFTD.pause                   = "DMMPOLICY_PAUSED";
-dmm.policyArray[1].$name                             = "ti_dmm_policy_dmm_policy1";
-dmm.policyArray[1].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble1";
-dmm.policyArray[1].blePeripheral.applicationStates   = ["applicationState3","applicationState4"];
-dmm.policyArray[1].blePeripheral.weight              = 25;
-dmm.policyArray[1].blePeripheral.appliedActivity     = ["DMMPOLICY_APPLIED_ACTIVITY_BLE_CONNECTION"];
-dmm.policyArray[1].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread1";
-dmm.policyArray[2].$name                             = "ti_dmm_policy_dmm_policy2";
-dmm.policyArray[2].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble2";
-dmm.policyArray[2].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread2";
-dmm.policyArray[2].threadFTD.weight                  = 30;
-dmm.policyArray[2].threadFTD.applicationStates       = ["applicationState8"];
-dmm.policyArray[2].threadFTD.appliedActivity         = ["DMMPOLICY_APPLIED_ACTIVITY_ALL"];
-dmm.policyArray[3].$name                             = "ti_dmm_policy_dmm_policy3";
-dmm.policyArray[3].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble3";
-dmm.policyArray[3].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread3";
-dmm.policyArray[3].threadFTD.weight                  = 1;
diff --git a/examples/lock-app/cc13x4_26x4/args.gni b/examples/lock-app/cc13x4_26x4/args.gni
index 1d6fca5..c34d0cf 100644
--- a/examples/lock-app/cc13x4_26x4/args.gni
+++ b/examples/lock-app/cc13x4_26x4/args.gni
@@ -29,7 +29,7 @@
 
 chip_enable_ota_requestor = false
 
-chip_openthread_ftd = true
+chip_openthread_ftd = false
 openthread_external_platform = "${chip_root}/third_party/openthread/platforms/cc13x4_26x4:libopenthread-cc13x4_cc26x4"
 
 # Disable CHIP Logging
diff --git a/examples/pump-app/cc13x2x7_26x2x7/BUILD.gn b/examples/pump-app/cc13x2x7_26x2x7/BUILD.gn
index 525133b..5a9aed0 100644
--- a/examples/pump-app/cc13x2x7_26x2x7/BUILD.gn
+++ b/examples/pump-app/cc13x2x7_26x2x7/BUILD.gn
@@ -33,6 +33,8 @@
 }
 
 ti_sysconfig("sysconfig") {
+  sources = [ "${project_dir}/chip.syscfg" ]
+
   outputs = [
     "ti_radio_config.c",
     "ti_radio_config.h",
@@ -42,17 +44,19 @@
     "ti_ble_config.h",
     "ti_dmm_application_policy.c",
     "ti_dmm_application_policy.h",
-  ]
 
-  if (chip_enable_ota_requestor) {
-    sources = [ "${project_dir}/chip_ota.syscfg" ]
-  } else {
-    sources = [ "${project_dir}/chip.syscfg" ]
-    outputs += [
-      "ti_devices_config.c",
-      "ti_devices_config.h",
-    ]
-  }
+    # disabled until upstream generation is aligned
+    #"tiop_config.h",
+    #"tiop_config.c",
+
+    # not traditional source files
+    #"ti_utils_build_linker.cmd.genlibs",
+    #"syscfg_c.rov.xs",
+    #"ti_utils_runtime_model.gv",
+    #"ti_utils_runtime_Makefile",
+    #"ti_ble_app_config.opt",
+    #"ti_build_config.opt",
+  ]
 
   public_configs = [ ":sdk_dmm_config" ]
 
diff --git a/examples/pump-app/cc13x2x7_26x2x7/chip.syscfg b/examples/pump-app/cc13x2x7_26x2x7/chip.syscfg
index d190703..995ad22 100644
--- a/examples/pump-app/cc13x2x7_26x2x7/chip.syscfg
+++ b/examples/pump-app/cc13x2x7_26x2x7/chip.syscfg
@@ -84,7 +84,8 @@
     CCFG[setting] = ccfgSettings[setting];
 }
 
-CCFG.enableCodeGeneration = true;
+// Disable CCFG generation, this is added by the BIM project
+CCFG.enableCodeGeneration = false;
 
 /* NVS */
 NVS1.$name                      = "CONFIG_NVSINTERNAL";
diff --git a/examples/pump-app/cc13x2x7_26x2x7/chip_ota.syscfg b/examples/pump-app/cc13x2x7_26x2x7/chip_ota.syscfg
deleted file mode 100644
index 995ad22..0000000
--- a/examples/pump-app/cc13x2x7_26x2x7/chip_ota.syscfg
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- *
- *    Copyright (c) 2020 Project CHIP Authors
- *    Copyright (c) 2020 Texas Instruments Incorporated
- *    All rights reserved.
- *
- *    Licensed under the Apache License, Version 2.0 (the "License");
- *    you may not use this file except in compliance with the License.
- *    You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *    Unless required by applicable law or agreed to in writing, software
- *    distributed under the License is distributed on an "AS IS" BASIS,
- *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *    See the License for the specific language governing permissions and
- *    limitations under the License.
- */
-
-
-/* Modules */
-var AESCCM      = scripting.addModule("/ti/drivers/AESCCM");
-var AESECB      = scripting.addModule("/ti/drivers/AESECB");
-var Button      = scripting.addModule("/ti/drivers/apps/Button");
-var LED         = scripting.addModule("/ti/drivers/apps/LED");
-var NVS         = scripting.addModule("/ti/drivers/NVS");
-var RF          = scripting.addModule("/ti/drivers/RF");
-var RFDesign    = scripting.addModule("ti/devices/radioconfig/rfdesign");
-var RFCustom    = scripting.addModule("/ti/devices/radioconfig/custom");
-var TRNG        = scripting.addModule("/ti/drivers/TRNG");
-var SHA2        = scripting.addModule("/ti/drivers/SHA2");
-var UART2       = scripting.addModule("/ti/drivers/UART2");
-var ble         = scripting.addModule("/ti/ble5stack/ble");
-var dmm         = scripting.addModule("/ti/dmm/dmm");
-var AESCTRDRBG  = scripting.addModule("/ti/drivers/AESCTRDRBG");
-var ECDH        = scripting.addModule("/ti/drivers/ECDH");
-
-/* Instances */
-var AESCCM1     = AESCCM.addInstance();
-var AESECB1     = AESECB.addInstance();
-var AESECB2     = AESECB.addInstance();
-var Button1     = Button.addInstance();
-var Button2     = Button.addInstance();
-var NVS1        = NVS.addInstance();
-var NVS2        = NVS.addInstance();
-var SHA21       = SHA2.addInstance();
-var LED1        = LED.addInstance();
-var LED2        = LED.addInstance();
-var TRNG1       = TRNG.addInstance();
-var TRNG2       = TRNG.addInstance();
-var TRNG3       = TRNG.addInstance();
-var UART2      = UART2.addInstance();
-var AESCTRDRBG1 = AESCTRDRBG.addInstance();
-var ECDH1       = ECDH.addInstance();
-
-AESCTRDRBG1.$name              = "CONFIG_AESCTRDRBG_0";
-
-AESCCM1.$name = "CONFIG_AESCCM0";
-
-AESECB1.$name = "CONFIG_AESECB0";
-AESECB2.$name = "CONFIG_AESECB_1";
-
-ECDH1.$name = "CONFIG_ECDH0";
-
-/* Left Button */
-Button1.$name                       = "CONFIG_BTN_LEFT";
-Button1.$hardware                   = system.deviceData.board.components["BTN-1"];
-Button1.gpioPin.$name               = "CONFIG_GPIO_BTN1";
-Button1.gpioPin.pull                = "Pull Up";
-Button1.gpioPin.interruptTrigger    = "Falling Edge";
-
-/* Left Button */
-Button2.$name                       = "CONFIG_BTN_RIGHT";
-Button2.$hardware                   = system.deviceData.board.components["BTN-2"];
-Button2.gpioPin.$name               = "CONFIG_GPIO_BTN2";
-Button2.gpioPin.pull                = "Pull Up";
-Button2.gpioPin.interruptTrigger    = "Falling Edge";
-
-/* ======== CCFG ======== */
-var CCFG  = scripting.addModule("/ti/devices/CCFG");
-const ccfgSettings = system.getScript("/ti/common/lprf_ccfg_settings.js").ccfgSettings;
-for(var setting in ccfgSettings)
-{
-    CCFG[setting] = ccfgSettings[setting];
-}
-
-// Disable CCFG generation, this is added by the BIM project
-CCFG.enableCodeGeneration = false;
-
-/* NVS */
-NVS1.$name                      = "CONFIG_NVSINTERNAL";
-NVS1.internalFlash.regionBase = 0xAA000;
-NVS1.internalFlash.regionSize = 0x4000;
-
-NVS2.$name                                 = "CONFIG_NVSEXTERNAL";
-NVS2.nvsType                               = "External"; // NVS Region Type
-NVS2.$hardware                             = system.deviceData.board.components.MX25R8035F;
-
-/* RF */
-/* if an antenna component exists, assign it to the rf instance */
-if (system.deviceData.board && system.deviceData.board.components.RF) {
-    RF.$hardware = system.deviceData.board.components.RF;
-}
-
-const rfDesignSettings = system.getScript("/ti/common/lprf_rf_design_settings.js").rfDesignSettings;
-for(var setting in rfDesignSettings)
-{
-    RFDesign[setting] = rfDesignSettings[setting];
-}
-
-/* Handling for RF frontend characterization */
-if(RFDesign.rfDesign.match(/LP_CC2652PSIP/))
-{
-    RFCustom.ieee = ["ieee154p10"];
-    var rfCodeExportConfig = RFCustom.radioConfigieee154p10.codeExportConfig
-}
-else
-{
-    RFCustom.ieee = ["ieee154"];
-    var rfCodeExportConfig = RFCustom.radioConfigieee154.codeExportConfig
-}
-
-var cmdList = [
-    "cmdIeeeTx",
-    "cmdIeeeRx",
-    "cmdIeeeCsma",
-    "cmdIeeeEdScan",
-    "cmdIeeeRxAck",
-    "cmdTxTest"
-];
-
-rfCodeExportConfig.useConst     = true;
-rfCodeExportConfig.useMulti     = true;
-rfCodeExportConfig.symGenMethod = "Custom";
-
-const deviceId = system.deviceData.deviceId;
-
-// Add high PA options if present
-if(deviceId.match(/CC(265[12]R|2674R|1352R1|1354R)/))
-{
-    cmdList.push("cmdRadioSetup");
-    rfCodeExportConfig.cmdRadioSetup = "RF_cmdIeeeRadioSetup";
-}
-else if(deviceId.match(/CC(265[12]P|2674P|1352P)/))
-{
-    cmdList.push("cmdRadioSetupPa");
-    rfCodeExportConfig.cmdRadioSetupPa = "RF_cmdIeeeRadioSetup";
-    rfCodeExportConfig.paExport = "combined";
-}
-else if(deviceId.match(/CC(265[34]|1354)P/))
-{
-    cmdList.push("cmdRadioSetupPa");
-    rfCodeExportConfig.cmdRadioSetupPa = "RF_cmdIeeeRadioSetup";
-    // currently not characterized for high PA
-}
-else
-{
-    throw new Error("Could not match platform to any known platform types");
-}
-
-rfCodeExportConfig.cmdList_ieee_15_4 = cmdList;
-
-/* Red LED */
-LED1.$name                      = "CONFIG_LED_RED";
-LED1.$hardware                  = system.deviceData.board.components.LED_RED;
-LED1.gpioPin.$name              = "CONFIG_GPIO_RLED";
-LED1.gpioPin.mode               = "Output";
-LED1.gpioPin.callbackFunction   = "";
-
-/* Green LED */
-LED2.$name                      = "CONFIG_LED_GREEN";
-LED2.$hardware                  = system.deviceData.board.components.LED_GREEN;
-LED2.gpioPin.$name              = "CONFIG_GPIO_GLED";
-LED2.gpioPin.mode               = "Output";
-LED2.gpioPin.callbackFunction   = "";
-
-/* Debug UART  */
-UART2.$hardware     = system.deviceData.board.components.XDS110UART;
-UART2.$name         = "CONFIG_UART2_DEBUG";
-
-/* TRNG */
-TRNG1.$name     = "CONFIG_TRNG_0";
-TRNG2.$name     = "CONFIG_TRNG_THREAD";
-TRNG3.$name     = "CONFIG_TRNG_APP";
-
-/* BLE */
-ble.addressMode                                           = "ADDRMODE_RP_WITH_PUBLIC_ID";
-ble.maxConnNum                                            = 1;
-ble.numOfAdvSets                                          = 1;
-ble.lockProject                                           = true;
-ble.oneLibSizeOpt                                         = true;
-ble.maxPDUSize                                            = 255;
-ble.radioConfig.codeExportConfig.$name                    = "ti_devices_radioconfig_code_export_param2";
-ble.connUpdateParamsPeripheral.$name                      = "ti_ble5stack_general_ble_conn_update_params0";
-ble.connUpdateParamsPeripheral.reqMinConnInt               = 30;
-ble.connUpdateParamsPeripheral.reqMaxConnInt               = 50;
-
-
-ble.advSet1.$name                                         = "ti_ble5stack_broadcaster_advertisement_set0";
-ble.advSet1.advParam1.$name                               = "ti_ble5stack_broadcaster_advertisement_params0";
-
-/* DMM */
-dmm.project                                          = "ti_thread_thermostat_remote_display";
-dmm.stackRoles                                       = ["blePeripheral","threadFTD"];
-dmm.lockStackRoles                                   = true;
-dmm.numApplicationStates                             = 10;
-dmm.applicationState0                                = "ANY";
-dmm.applicationState1                                = "DMMPOLICY_BLE_IDLE";
-dmm.applicationState2                                = "DMMPOLICY_BLE_ADV";
-dmm.applicationState3                                = "DMMPOLICY_BLE_CONNECTING";
-dmm.applicationState4                                = "DMMPOLICY_BLE_HIGH_BANDWIDTH";
-dmm.applicationState5                                = "DMMPOLICY_BLE_CONNECTED";
-dmm.applicationState6                                = "DMMPOLICY_BLE_OAD";
-dmm.applicationState7                                = "DMMPOLICY_THREAD_IDLE";
-dmm.applicationState8                                = "DMMPOLICY_THREAD_LINK_EST";
-dmm.applicationState9                                = "DMMPOLICY_THREAD_DATA";
-dmm.policyArray.create(4);
-dmm.policyArray[0].$name                             = "ti_dmm_policy_dmm_policy0";
-dmm.policyArray[0].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble0";
-dmm.policyArray[0].blePeripheral.applicationStates   = ["applicationState6"];
-dmm.policyArray[0].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread0";
-dmm.policyArray[0].threadFTD.pause                   = "DMMPOLICY_PAUSED";
-dmm.policyArray[1].$name                             = "ti_dmm_policy_dmm_policy1";
-dmm.policyArray[1].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble1";
-dmm.policyArray[1].blePeripheral.applicationStates   = ["applicationState3","applicationState4"];
-dmm.policyArray[1].blePeripheral.weight              = 25;
-dmm.policyArray[1].blePeripheral.appliedActivity     = ["DMMPOLICY_APPLIED_ACTIVITY_BLE_CONNECTION"];
-dmm.policyArray[1].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread1";
-dmm.policyArray[2].$name                             = "ti_dmm_policy_dmm_policy2";
-dmm.policyArray[2].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble2";
-dmm.policyArray[2].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread2";
-dmm.policyArray[2].threadFTD.weight                  = 30;
-dmm.policyArray[2].threadFTD.applicationStates       = ["applicationState8"];
-dmm.policyArray[2].threadFTD.appliedActivity         = ["DMMPOLICY_APPLIED_ACTIVITY_ALL"];
-dmm.policyArray[3].$name                             = "ti_dmm_policy_dmm_policy3";
-dmm.policyArray[3].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble3";
-dmm.policyArray[3].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread3";
-dmm.policyArray[3].threadFTD.weight                  = 1;
diff --git a/examples/pump-app/cc13x4_26x4/args.gni b/examples/pump-app/cc13x4_26x4/args.gni
index 6ce8fc0..93f1bd1 100644
--- a/examples/pump-app/cc13x4_26x4/args.gni
+++ b/examples/pump-app/cc13x4_26x4/args.gni
@@ -30,7 +30,6 @@
 chip_enable_ota_requestor = false
 
 openthread_external_platform = "${chip_root}/third_party/openthread/platforms/cc13x4_26x4:libopenthread-cc13x4_cc26x4"
-chip_openthread_ftd = true
 
 # Disable CHIP Logging
 #chip_progress_logging = false
diff --git a/examples/pump-controller-app/cc13x2x7_26x2x7/BUILD.gn b/examples/pump-controller-app/cc13x2x7_26x2x7/BUILD.gn
index 8d0d2d4..0155ff6 100644
--- a/examples/pump-controller-app/cc13x2x7_26x2x7/BUILD.gn
+++ b/examples/pump-controller-app/cc13x2x7_26x2x7/BUILD.gn
@@ -34,6 +34,8 @@
 }
 
 ti_sysconfig("sysconfig") {
+  sources = [ "${project_dir}/chip.syscfg" ]
+
   outputs = [
     "ti_radio_config.c",
     "ti_radio_config.h",
@@ -43,17 +45,19 @@
     "ti_ble_config.h",
     "ti_dmm_application_policy.c",
     "ti_dmm_application_policy.h",
-  ]
 
-  if (chip_enable_ota_requestor) {
-    sources = [ "${project_dir}/chip_ota.syscfg" ]
-  } else {
-    sources = [ "${project_dir}/chip.syscfg" ]
-    outputs += [
-      "ti_devices_config.c",
-      "ti_devices_config.h",
-    ]
-  }
+    # disabled until upstream generation is aligned
+    #"tiop_config.h",
+    #"tiop_config.c",
+
+    # not traditional source files
+    #"ti_utils_build_linker.cmd.genlibs",
+    #"syscfg_c.rov.xs",
+    #"ti_utils_runtime_model.gv",
+    #"ti_utils_runtime_Makefile",
+    #"ti_ble_app_config.opt",
+    #"ti_build_config.opt",
+  ]
 
   public_configs = [ ":sdk_dmm_config" ]
 
diff --git a/examples/pump-controller-app/cc13x2x7_26x2x7/chip.syscfg b/examples/pump-controller-app/cc13x2x7_26x2x7/chip.syscfg
index d190703..995ad22 100644
--- a/examples/pump-controller-app/cc13x2x7_26x2x7/chip.syscfg
+++ b/examples/pump-controller-app/cc13x2x7_26x2x7/chip.syscfg
@@ -84,7 +84,8 @@
     CCFG[setting] = ccfgSettings[setting];
 }
 
-CCFG.enableCodeGeneration = true;
+// Disable CCFG generation, this is added by the BIM project
+CCFG.enableCodeGeneration = false;
 
 /* NVS */
 NVS1.$name                      = "CONFIG_NVSINTERNAL";
diff --git a/examples/pump-controller-app/cc13x2x7_26x2x7/chip_ota.syscfg b/examples/pump-controller-app/cc13x2x7_26x2x7/chip_ota.syscfg
deleted file mode 100644
index 995ad22..0000000
--- a/examples/pump-controller-app/cc13x2x7_26x2x7/chip_ota.syscfg
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- *
- *    Copyright (c) 2020 Project CHIP Authors
- *    Copyright (c) 2020 Texas Instruments Incorporated
- *    All rights reserved.
- *
- *    Licensed under the Apache License, Version 2.0 (the "License");
- *    you may not use this file except in compliance with the License.
- *    You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *    Unless required by applicable law or agreed to in writing, software
- *    distributed under the License is distributed on an "AS IS" BASIS,
- *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *    See the License for the specific language governing permissions and
- *    limitations under the License.
- */
-
-
-/* Modules */
-var AESCCM      = scripting.addModule("/ti/drivers/AESCCM");
-var AESECB      = scripting.addModule("/ti/drivers/AESECB");
-var Button      = scripting.addModule("/ti/drivers/apps/Button");
-var LED         = scripting.addModule("/ti/drivers/apps/LED");
-var NVS         = scripting.addModule("/ti/drivers/NVS");
-var RF          = scripting.addModule("/ti/drivers/RF");
-var RFDesign    = scripting.addModule("ti/devices/radioconfig/rfdesign");
-var RFCustom    = scripting.addModule("/ti/devices/radioconfig/custom");
-var TRNG        = scripting.addModule("/ti/drivers/TRNG");
-var SHA2        = scripting.addModule("/ti/drivers/SHA2");
-var UART2       = scripting.addModule("/ti/drivers/UART2");
-var ble         = scripting.addModule("/ti/ble5stack/ble");
-var dmm         = scripting.addModule("/ti/dmm/dmm");
-var AESCTRDRBG  = scripting.addModule("/ti/drivers/AESCTRDRBG");
-var ECDH        = scripting.addModule("/ti/drivers/ECDH");
-
-/* Instances */
-var AESCCM1     = AESCCM.addInstance();
-var AESECB1     = AESECB.addInstance();
-var AESECB2     = AESECB.addInstance();
-var Button1     = Button.addInstance();
-var Button2     = Button.addInstance();
-var NVS1        = NVS.addInstance();
-var NVS2        = NVS.addInstance();
-var SHA21       = SHA2.addInstance();
-var LED1        = LED.addInstance();
-var LED2        = LED.addInstance();
-var TRNG1       = TRNG.addInstance();
-var TRNG2       = TRNG.addInstance();
-var TRNG3       = TRNG.addInstance();
-var UART2      = UART2.addInstance();
-var AESCTRDRBG1 = AESCTRDRBG.addInstance();
-var ECDH1       = ECDH.addInstance();
-
-AESCTRDRBG1.$name              = "CONFIG_AESCTRDRBG_0";
-
-AESCCM1.$name = "CONFIG_AESCCM0";
-
-AESECB1.$name = "CONFIG_AESECB0";
-AESECB2.$name = "CONFIG_AESECB_1";
-
-ECDH1.$name = "CONFIG_ECDH0";
-
-/* Left Button */
-Button1.$name                       = "CONFIG_BTN_LEFT";
-Button1.$hardware                   = system.deviceData.board.components["BTN-1"];
-Button1.gpioPin.$name               = "CONFIG_GPIO_BTN1";
-Button1.gpioPin.pull                = "Pull Up";
-Button1.gpioPin.interruptTrigger    = "Falling Edge";
-
-/* Left Button */
-Button2.$name                       = "CONFIG_BTN_RIGHT";
-Button2.$hardware                   = system.deviceData.board.components["BTN-2"];
-Button2.gpioPin.$name               = "CONFIG_GPIO_BTN2";
-Button2.gpioPin.pull                = "Pull Up";
-Button2.gpioPin.interruptTrigger    = "Falling Edge";
-
-/* ======== CCFG ======== */
-var CCFG  = scripting.addModule("/ti/devices/CCFG");
-const ccfgSettings = system.getScript("/ti/common/lprf_ccfg_settings.js").ccfgSettings;
-for(var setting in ccfgSettings)
-{
-    CCFG[setting] = ccfgSettings[setting];
-}
-
-// Disable CCFG generation, this is added by the BIM project
-CCFG.enableCodeGeneration = false;
-
-/* NVS */
-NVS1.$name                      = "CONFIG_NVSINTERNAL";
-NVS1.internalFlash.regionBase = 0xAA000;
-NVS1.internalFlash.regionSize = 0x4000;
-
-NVS2.$name                                 = "CONFIG_NVSEXTERNAL";
-NVS2.nvsType                               = "External"; // NVS Region Type
-NVS2.$hardware                             = system.deviceData.board.components.MX25R8035F;
-
-/* RF */
-/* if an antenna component exists, assign it to the rf instance */
-if (system.deviceData.board && system.deviceData.board.components.RF) {
-    RF.$hardware = system.deviceData.board.components.RF;
-}
-
-const rfDesignSettings = system.getScript("/ti/common/lprf_rf_design_settings.js").rfDesignSettings;
-for(var setting in rfDesignSettings)
-{
-    RFDesign[setting] = rfDesignSettings[setting];
-}
-
-/* Handling for RF frontend characterization */
-if(RFDesign.rfDesign.match(/LP_CC2652PSIP/))
-{
-    RFCustom.ieee = ["ieee154p10"];
-    var rfCodeExportConfig = RFCustom.radioConfigieee154p10.codeExportConfig
-}
-else
-{
-    RFCustom.ieee = ["ieee154"];
-    var rfCodeExportConfig = RFCustom.radioConfigieee154.codeExportConfig
-}
-
-var cmdList = [
-    "cmdIeeeTx",
-    "cmdIeeeRx",
-    "cmdIeeeCsma",
-    "cmdIeeeEdScan",
-    "cmdIeeeRxAck",
-    "cmdTxTest"
-];
-
-rfCodeExportConfig.useConst     = true;
-rfCodeExportConfig.useMulti     = true;
-rfCodeExportConfig.symGenMethod = "Custom";
-
-const deviceId = system.deviceData.deviceId;
-
-// Add high PA options if present
-if(deviceId.match(/CC(265[12]R|2674R|1352R1|1354R)/))
-{
-    cmdList.push("cmdRadioSetup");
-    rfCodeExportConfig.cmdRadioSetup = "RF_cmdIeeeRadioSetup";
-}
-else if(deviceId.match(/CC(265[12]P|2674P|1352P)/))
-{
-    cmdList.push("cmdRadioSetupPa");
-    rfCodeExportConfig.cmdRadioSetupPa = "RF_cmdIeeeRadioSetup";
-    rfCodeExportConfig.paExport = "combined";
-}
-else if(deviceId.match(/CC(265[34]|1354)P/))
-{
-    cmdList.push("cmdRadioSetupPa");
-    rfCodeExportConfig.cmdRadioSetupPa = "RF_cmdIeeeRadioSetup";
-    // currently not characterized for high PA
-}
-else
-{
-    throw new Error("Could not match platform to any known platform types");
-}
-
-rfCodeExportConfig.cmdList_ieee_15_4 = cmdList;
-
-/* Red LED */
-LED1.$name                      = "CONFIG_LED_RED";
-LED1.$hardware                  = system.deviceData.board.components.LED_RED;
-LED1.gpioPin.$name              = "CONFIG_GPIO_RLED";
-LED1.gpioPin.mode               = "Output";
-LED1.gpioPin.callbackFunction   = "";
-
-/* Green LED */
-LED2.$name                      = "CONFIG_LED_GREEN";
-LED2.$hardware                  = system.deviceData.board.components.LED_GREEN;
-LED2.gpioPin.$name              = "CONFIG_GPIO_GLED";
-LED2.gpioPin.mode               = "Output";
-LED2.gpioPin.callbackFunction   = "";
-
-/* Debug UART  */
-UART2.$hardware     = system.deviceData.board.components.XDS110UART;
-UART2.$name         = "CONFIG_UART2_DEBUG";
-
-/* TRNG */
-TRNG1.$name     = "CONFIG_TRNG_0";
-TRNG2.$name     = "CONFIG_TRNG_THREAD";
-TRNG3.$name     = "CONFIG_TRNG_APP";
-
-/* BLE */
-ble.addressMode                                           = "ADDRMODE_RP_WITH_PUBLIC_ID";
-ble.maxConnNum                                            = 1;
-ble.numOfAdvSets                                          = 1;
-ble.lockProject                                           = true;
-ble.oneLibSizeOpt                                         = true;
-ble.maxPDUSize                                            = 255;
-ble.radioConfig.codeExportConfig.$name                    = "ti_devices_radioconfig_code_export_param2";
-ble.connUpdateParamsPeripheral.$name                      = "ti_ble5stack_general_ble_conn_update_params0";
-ble.connUpdateParamsPeripheral.reqMinConnInt               = 30;
-ble.connUpdateParamsPeripheral.reqMaxConnInt               = 50;
-
-
-ble.advSet1.$name                                         = "ti_ble5stack_broadcaster_advertisement_set0";
-ble.advSet1.advParam1.$name                               = "ti_ble5stack_broadcaster_advertisement_params0";
-
-/* DMM */
-dmm.project                                          = "ti_thread_thermostat_remote_display";
-dmm.stackRoles                                       = ["blePeripheral","threadFTD"];
-dmm.lockStackRoles                                   = true;
-dmm.numApplicationStates                             = 10;
-dmm.applicationState0                                = "ANY";
-dmm.applicationState1                                = "DMMPOLICY_BLE_IDLE";
-dmm.applicationState2                                = "DMMPOLICY_BLE_ADV";
-dmm.applicationState3                                = "DMMPOLICY_BLE_CONNECTING";
-dmm.applicationState4                                = "DMMPOLICY_BLE_HIGH_BANDWIDTH";
-dmm.applicationState5                                = "DMMPOLICY_BLE_CONNECTED";
-dmm.applicationState6                                = "DMMPOLICY_BLE_OAD";
-dmm.applicationState7                                = "DMMPOLICY_THREAD_IDLE";
-dmm.applicationState8                                = "DMMPOLICY_THREAD_LINK_EST";
-dmm.applicationState9                                = "DMMPOLICY_THREAD_DATA";
-dmm.policyArray.create(4);
-dmm.policyArray[0].$name                             = "ti_dmm_policy_dmm_policy0";
-dmm.policyArray[0].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble0";
-dmm.policyArray[0].blePeripheral.applicationStates   = ["applicationState6"];
-dmm.policyArray[0].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread0";
-dmm.policyArray[0].threadFTD.pause                   = "DMMPOLICY_PAUSED";
-dmm.policyArray[1].$name                             = "ti_dmm_policy_dmm_policy1";
-dmm.policyArray[1].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble1";
-dmm.policyArray[1].blePeripheral.applicationStates   = ["applicationState3","applicationState4"];
-dmm.policyArray[1].blePeripheral.weight              = 25;
-dmm.policyArray[1].blePeripheral.appliedActivity     = ["DMMPOLICY_APPLIED_ACTIVITY_BLE_CONNECTION"];
-dmm.policyArray[1].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread1";
-dmm.policyArray[2].$name                             = "ti_dmm_policy_dmm_policy2";
-dmm.policyArray[2].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble2";
-dmm.policyArray[2].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread2";
-dmm.policyArray[2].threadFTD.weight                  = 30;
-dmm.policyArray[2].threadFTD.applicationStates       = ["applicationState8"];
-dmm.policyArray[2].threadFTD.appliedActivity         = ["DMMPOLICY_APPLIED_ACTIVITY_ALL"];
-dmm.policyArray[3].$name                             = "ti_dmm_policy_dmm_policy3";
-dmm.policyArray[3].blePeripheral.$name               = "ti_dmm_policy_stack_dmm_stack_ble3";
-dmm.policyArray[3].threadFTD.$name                   = "ti_dmm_policy_stack_dmm_stack_thread3";
-dmm.policyArray[3].threadFTD.weight                  = 1;
diff --git a/examples/pump-controller-app/cc13x4_26x4/args.gni b/examples/pump-controller-app/cc13x4_26x4/args.gni
index 012565c..680e5ea 100644
--- a/examples/pump-controller-app/cc13x4_26x4/args.gni
+++ b/examples/pump-controller-app/cc13x4_26x4/args.gni
@@ -30,7 +30,6 @@
 chip_enable_ota_requestor = false
 
 openthread_external_platform = "${chip_root}/third_party/openthread/platforms/cc13x4_26x4:libopenthread-cc13x4_cc26x4"
-chip_openthread_ftd = true
 
 # Disable CHIP Logging
 #chip_progress_logging = false
diff --git a/src/platform/cc13xx_26xx/cc13x2_26x2/cc13x2x7_cc26x2x7_freertos.lds b/src/platform/cc13xx_26xx/cc13x2_26x2/cc13x2x7_cc26x2x7_freertos.lds
index e174101..c5d4aa8 100644
--- a/src/platform/cc13xx_26xx/cc13x2_26x2/cc13x2x7_cc26x2x7_freertos.lds
+++ b/src/platform/cc13xx_26xx/cc13x2_26x2/cc13x2x7_cc26x2x7_freertos.lds
@@ -1,273 +1,345 @@
-/*
- *
- *    Copyright (c) 2022 Project CHIP Authors
- *    Copyright (c) 2020 Texas Instruments Incorporated
- *
- *    Licensed under the Apache License, Version 2.0 (the "License");
- *    you may not use this file except in compliance with the License.
- *    You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *    Unless required by applicable law or agreed to in writing, software
- *    distributed under the License is distributed on an "AS IS" BASIS,
- *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *    See the License for the specific language governing permissions and
- *    limitations under the License.
- */
-
-/**
- * @file
- * Linkerscript for Matter executable with space reserved for the TI BIM.
- */
-
-STACKSIZE = 0x800;
-RESERVED_RAM_SIZE_BLE_ROM = 0x00000FDF;
-
-
-MEMORY
-{
-    /* last page removed for BIM, CCFG is supplied by that project */
-     FLASH (RX)      : ORIGIN = 0x00000000, LENGTH = 0x000affa8 
-    FLASH_CCFG (RX) : ORIGIN = 0x000affa8, LENGTH = 0x00000058
-    /*FLASH (RX)      : ORIGIN = 0x00000000, LENGTH = 0x000ae000 */
-    /* BLE ROM reserves RAM at the beginning of the ram image, size RESERVED_RAM_SIZE_BLE_ROM */
-    /* SRAM (RWX)      : ORIGIN = 0x20000000, LENGTH = 0x00024000 */
-    SRAM (RWX)      : ORIGIN = 0x20000FDF, LENGTH = 0x00023021
-    GPRAM (RWX)     : ORIGIN = 0x11000000, LENGTH = 0x00002000
-    /* Explicitly placed off target for the storage of logging data.
-     * The data placed here is NOT loaded onto the target device.
-     * This is part of 1 GB of external memory from 0x60000000 - 0x9FFFFFFF.
-     * ARM memory map can be found here:
-     * https://developer.arm.com/documentation/ddi0337/e/memory-map/about-the-memory-map
-     */
-    LOG_DATA (R) : ORIGIN = 0x90000000, LENGTH = 0x40000
-}
-
-REGION_ALIAS("REGION_TEXT", FLASH);
-REGION_ALIAS("REGION_BSS", SRAM);
-REGION_ALIAS("REGION_DATA", SRAM);
-REGION_ALIAS("REGION_STACK", SRAM);
-REGION_ALIAS("REGION_HEAP", SRAM);
-REGION_ALIAS("REGION_LOG", LOG_DATA);
-REGION_ALIAS("REGION_ARM_EXIDX", FLASH);
-REGION_ALIAS("REGION_ARM_EXTAB", FLASH);
-
-SECTIONS {
-    /* interrupt vectors shifted to accomodate BIM header */
-    PROVIDE (_intvecs_base_address =
-        DEFINED(_intvecs_base_address) ? _intvecs_base_address : 0x00);
-
-    .resetVecs (_intvecs_base_address) : AT (_intvecs_base_address) {
-        KEEP (*(.resetVecs))
-    } > REGION_TEXT
-
-    PROVIDE (_vtable_base_address =
-        DEFINED(_vtable_base_address) ? _vtable_base_address : 0x20000000 + RESERVED_RAM_SIZE_BLE_ROM);
-
-    .ramVecs (_vtable_base_address) (NOLOAD) : {
-        KEEP (*(.ramVecs))
-    } > REGION_DATA
-
-    /*
-     * UDMACC26XX_CONFIG_BASE below must match UDMACC26XX_CONFIG_BASE defined
-     * by ti/drivers/dma/UDMACC26XX.h
-     * The user is allowed to change UDMACC26XX_CONFIG_BASE to move it away from
-     * the default address 0x2000_1800, but remember it must be 1024 bytes aligned.
-     */
-    UDMACC26XX_CONFIG_BASE = 0x20001800;
-
-    /*
-     * Define absolute addresses for the DMA channels.
-     * DMA channels must always be allocated at a fixed offset from the DMA base address.
-     * --------- DO NOT MODIFY -----------
-     */
-    DMA_UART0_RX_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x10);
-    DMA_UART0_TX_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x20);
-    DMA_SPI0_RX_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x30);
-    DMA_SPI0_TX_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x40);
-    DMA_UART1_RX_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x50);
-    DMA_UART1_TX_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x60);
-    DMA_ADC_PRI_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x70);
-    DMA_GPT0A_PRI_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x90);
-    DMA_SPI1_RX_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x100);
-    DMA_SPI1_TX_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x110);
-
-    DMA_UART0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x210);
-    DMA_UART0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x220);
-    DMA_SPI0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x230);
-    DMA_SPI0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x240);
-    DMA_UART1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x250);
-    DMA_UART1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x260);
-    DMA_ADC_ALT_CONTROL_TABLE_ENTRY_ADDRESS      = (UDMACC26XX_CONFIG_BASE + 0x270);
-    DMA_GPT0A_ALT_CONTROL_TABLE_ENTRY_ADDRESS    = (UDMACC26XX_CONFIG_BASE + 0x290);
-    DMA_SPI1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x300);
-    DMA_SPI1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x310);
-
-    /*
-     * Allocate UART0, UART1, SPI0, SPI1, ADC, and GPTimer0 DMA descriptors at absolute addresses.
-     * --------- DO NOT MODIFY -----------
-     */
-    UDMACC26XX_uart0RxControlTableEntry_is_placed = 0;
-    .dmaUart0RxControlTableEntry DMA_UART0_RX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART0_RX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart0RxControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_uart0TxControlTableEntry_is_placed = 0;
-    .dmaUart0TxControlTableEntry DMA_UART0_TX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART0_TX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart0TxControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaSpi0RxControlTableEntry_is_placed = 0;
-    .dmaSpi0RxControlTableEntry DMA_SPI0_RX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI0_RX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi0RxControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaSpi0TxControlTableEntry_is_placed = 0;
-    .dmaSpi0TxControlTableEntry DMA_SPI0_TX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI0_TX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi0TxControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_uart1RxControlTableEntry_is_placed = 0;
-    .dmaUart1RxControlTableEntry DMA_UART1_RX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART1_RX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart1RxControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_uart1TxControlTableEntry_is_placed = 0;
-    .dmaUart1TxControlTableEntry DMA_UART1_TX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART1_TX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart1TxControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaADCPriControlTableEntry_is_placed = 0;
-    .dmaADCPriControlTableEntry DMA_ADC_PRI_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_ADC_PRI_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaADCPriControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaGPT0APriControlTableEntry_is_placed = 0;
-    .dmaGPT0APriControlTableEntry DMA_GPT0A_PRI_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_GPT0A_PRI_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaGPT0APriControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaSpi1RxControlTableEntry_is_placed = 0;
-    .dmaSpi1RxControlTableEntry DMA_SPI1_RX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI1_RX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi1RxControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaSpi1TxControlTableEntry_is_placed = 0;
-    .dmaSpi1TxControlTableEntry DMA_SPI1_TX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI1_TX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi1TxControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_uart0RxAltControlTableEntry_is_placed = 0;
-    .dmaUart0RxAltControlTableEntry DMA_UART0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart0RxAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_uart0TxAltControlTableEntry_is_placed = 0;
-    .dmaUart0TxAltControlTableEntry DMA_UART0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart0TxAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaSpi0RxAltControlTableEntry_is_placed = 0;
-    .dmaSpi0RxAltControlTableEntry DMA_SPI0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi0RxAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaSpi0TxAltControlTableEntry_is_placed = 0;
-    .dmaSpi0TxAltControlTableEntry DMA_SPI0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi0TxAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_uart1RxAltControlTableEntry_is_placed = 0;
-    .dmaUart1RxAltControlTableEntry DMA_UART1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart1RxAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_uart1TxAltControlTableEntry_is_placed = 0;
-    .dmaUart1TxAltControlTableEntry DMA_UART1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart1TxAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaADCAltControlTableEntry_is_placed = 0;
-    .dmaADCAltControlTableEntry DMA_ADC_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_ADC_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaADCAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaGPT0AAltControlTableEntry_is_placed = 0;
-    .dmaGPT0AAltControlTableEntry DMA_GPT0A_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_GPT0A_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaGPT0AAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaSpi1RxAltControlTableEntry_is_placed = 0;
-    .dmaSpi1RxAltControlTableEntry DMA_SPI1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi1RxAltControlTableEntry)} > REGION_DATA
-
-    UDMACC26XX_dmaSpi1TxAltControlTableEntry_is_placed = 0;
-    .dmaSpi1TxAltControlTableEntry DMA_SPI1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi1TxAltControlTableEntry)} > REGION_DATA
-
-
-
-    /* if a ROM-only symbol is present, then ROM is being used.
-     * Reserve memory for surgically placed config constants.
-     */
-    _rom_rodata_start = 0x2000;
-    _rom_rodata_size = DEFINED(ROM_RODATA_SIZE) ? 0 : DEFINED(ROM_RODATA_SIZE_NO_OAD) ? 0x330 : 0;
-
-    .rom_rodata_reserve (_rom_rodata_start): {
-        . += _rom_rodata_size;
-    } > REGION_TEXT AT> REGION_TEXT
-
-    .text : {
-        CREATE_OBJECT_SYMBOLS
-        *(.text)
-        *(.text.*)
-        . = ALIGN(0x4);
-        KEEP (*(.ctors))
-        . = ALIGN(0x4);
-        KEEP (*(.dtors))
-        . = ALIGN(0x4);
-        __init_array_start = .;
-        KEEP (*(.init_array*))
-        __init_array_end = .;
-        *(.init)
-        *(.fini*)
-    } > REGION_TEXT AT> REGION_TEXT
-
-    PROVIDE (__etext = .);
-    PROVIDE (_etext = .);
-    PROVIDE (etext = .);
-
-    .rodata : {
-        *(.rodata)
-        *(.rodata.*)
-        *(.rodata_*)
-    } > REGION_TEXT AT> REGION_TEXT
-
-    .data : ALIGN(4) {
-        __data_load__ = LOADADDR (.data);
-        __data_start__ = .;
-        *(.data)
-        *(.data.*)
-        . = ALIGN (4);
-        __data_end__ = .;
-    } > REGION_DATA AT> REGION_TEXT
-
-    .ARM.exidx : {
-        __exidx_start = .;
-        *(.ARM.exidx* .gnu.linkonce.armexidx.*)
-        __exidx_end = .;
-    } > REGION_ARM_EXIDX AT> REGION_ARM_EXIDX
-
-    .ARM.extab : {
-        *(.ARM.extab* .gnu.linkonce.armextab.*)
-    } > REGION_ARM_EXTAB AT> REGION_ARM_EXTAB
-
-    /* End of executable code/data, NVS is not part of the OTA image */
-    PROVIDE (_flash_end_address = .);
-
-    .nvs (0xAA000) (NOLOAD) : AT (0xAA000) ALIGN(0x2000) {
-        *(.nvs)
-    } > REGION_TEXT
-
-    .ccfg : {
-        KEEP (*(.ccfg))
-    } > FLASH_CCFG AT> FLASH_CCFG
-
-    .bss : {
-        __bss_start__ = .;
-        *(.shbss)
-        *(.bss)
-        *(.bss.*)
-        *(COMMON)
-        . = ALIGN (4);
-        __bss_end__ = .;
-    } > REGION_BSS AT> REGION_BSS
-
-    .heap : {
-        __heap_start__ = .;
-        end = __heap_start__;
-        _end = end;
-        __end = end;
-        KEEP(*(.heap))
-        __heap_end__ = .;
-        __HeapLimit = __heap_end__;
-    } > REGION_HEAP AT> REGION_HEAP
-
-    .stack (NOLOAD) : ALIGN(0x8) {
-        _stack = .;
-        __stack = .;
-        KEEP(*(.stack))
-        . += STACKSIZE;
-        _stack_end = .;
-        __stack_end = .;
-    } > REGION_STACK AT> REGION_STACK
-
-    .log_data (COPY) : {
-        KEEP (*(.log_data))
-    } > REGION_LOG
-}
-
-ENTRY(resetISR)
+/*

+ * Copyright (c) 2020, Texas Instruments Incorporated

+ * All rights reserved.

+ *

+ * Redistribution and use in source and binary forms, with or without

+ * modification, are permitted provided that the following conditions

+ * are met:

+ *

+ * *  Redistributions of source code must retain the above copyright

+ *    notice, this list of conditions and the following disclaimer.

+ *

+ * *  Redistributions in binary form must reproduce the above copyright

+ *    notice, this list of conditions and the following disclaimer in the

+ *    documentation and/or other materials provided with the distribution.

+ *

+ * *  Neither the name of Texas Instruments Incorporated nor the names of

+ *    its contributors may be used to endorse or promote products derived

+ *    from this software without specific prior written permission.

+ *

+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"

+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,

+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR

+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR

+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,

+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,

+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;

+ * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,

+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR

+ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,

+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+ */

+/*

+ *  ======== CC26X2R1_LAUNCHXL_FREERTOS.lds ========

+ *  Default Linker script for the Texas Instruments CC26X2R1

+ */

+

+

+ FLASH_ROM_BUILD  = 2;

+ FLASH_BASE = 0x00000000    ;

+ GPRAM_BASE = 0x11000000    ;

+ RAM_BASE   = 0x20000000    ;

+ ROM_BASE   = 0x10000000    ;

+

+ FLASH_SIZE = 0x00058000    ;

+ GPRAM_SIZE = 0x00002000    ;

+ RAM_SIZE   = 0x00014000    ;

+ ROM_SIZE   = 0x00040000    ;

+

+ RTOS_RAM_SIZE           = 0x0000012C;

+ RESERVED_RAM_SIZE_ROM_1 = 0x00000B08;

+ RESERVED_RAM_SIZE_ROM_2 = 0x00000EB3;

+

+ PAGE_SIZE        =          0x2000;

+RTOS_RAM_SIZE = 0x0000012C;

+RESERVED_RAM_SIZE_ROM_2 = 0x00000EB3;

+

+

+ RESERVED_RAM_SIZE_AT_START = (RTOS_RAM_SIZE + RESERVED_RAM_SIZE_ROM_2);

+ RESERVED_RAM_SIZE_AT_END  = 0;

+

+

+ RAM_START   =   (RAM_BASE + RESERVED_RAM_SIZE_AT_START);

+

+

+ RAM_END   =   (RAM_BASE + RAM_SIZE - RESERVED_RAM_SIZE_AT_END - 1);

+

+

+/* For ROM 2 devices, the following section needs to be allocated and reserved */

+ RTOS_RAM_START = RAM_BASE;

+ RTOS_RAM_END  = (RAM_BASE + RTOS_RAM_SIZE - 1);

+

+ FLASH_START       =         FLASH_BASE;

+ WORD_SIZE        =          4;

+

+ FLASH_MEM_ALIGN    =      WORD_SIZE;

+

+ PAGE_MASK       =           0xFFFFE000;

+

+ NUM_RESERVED_FLASH_PAGES =  1;

+ RESERVED_FLASH_SIZE    =    (NUM_RESERVED_FLASH_PAGES * PAGE_SIZE);

+

+  FLASH_END          =      (FLASH_BASE + FLASH_SIZE - RESERVED_FLASH_SIZE - 1);

+

+  FLASH_LAST_PAGE_START   =   (FLASH_SIZE - PAGE_SIZE);

+

+/*

+__STACK_TOP = __stack + __STACK_SIZE;

+

+

+__UNUSED_SRAM_start__ = RAM_BASE;

+__UNUSED_SRAM_end__ = RAM_BASE + RAM_SIZE;

+

+__UNUSED_FLASH_start__ = FLASH_BASE;

+__UNUSED_FLASH_end__ = FLASH_BASE + FLASH_SIZE;

+*/

+

+

+MEMORY

+{

+    FLASH (RX)      : ORIGIN = FLASH_START, LENGTH = (FLASH_END - FLASH_START + 1)

+    /*

+     * Customer Configuration Area and Bootloader Backdoor configuration in

+     * flash, 40 bytes

+     */

+   /* FLASH_CCFG (RX) : ORIGIN = FLASH_LAST_PAGE_START, LENGTH = PAGE_SIZE */

+    FLASH_CCFG (RX) : ORIGIN = 0x00057fa8, LENGTH = 0x00000058

+

+

+    RTOS_SRAM (RWX) : ORIGIN = RTOS_RAM_START, LENGTH = (RTOS_RAM_END - RTOS_RAM_START + 1)

+    SRAM (RWX)      : ORIGIN = 0x20000000 + RESERVED_RAM_SIZE_ROM_2 + RTOS_RAM_SIZE, LENGTH = (RAM_END - RAM_START + 1)

+  /*  GPRAM (RWX)     : ORIGIN = 0x11000000, LENGTH = 0x00002000 */

+}

+

+REGION_ALIAS("REGION_TEXT", FLASH);

+REGION_ALIAS("REGION_BSS", SRAM);

+REGION_ALIAS("REGION_DATA", SRAM);

+REGION_ALIAS("REGION_STACK", SRAM);

+REGION_ALIAS("REGION_HEAP", SRAM);

+REGION_ALIAS("REGION_ARM_EXIDX", FLASH);

+REGION_ALIAS("REGION_ARM_EXTAB", FLASH);

+

+SECTIONS {

+

+    PROVIDE (_intvecs_base_address =

+        DEFINED(_intvecs_base_address) ? _intvecs_base_address : 0x0);

+

+    .resetVecs (_intvecs_base_address) : AT (_intvecs_base_address) {

+        KEEP (*(.resetVecs))

+    } > REGION_TEXT

+

+    PROVIDE (_vtable_base_address =

+        DEFINED(_vtable_base_address) ? _vtable_base_address : 0x20000000 + RESERVED_RAM_SIZE_ROM_2 + RTOS_RAM_SIZE);

+

+    .ramVecs (_vtable_base_address) (NOLOAD) : {

+        KEEP (*(.ramVecs))

+    } > REGION_DATA

+

+    /* if a ROM-only symbol is present, then ROM is being used.

+     * Reserve memory for surgically placed module states.

+     */

+    _rom_data_start = 0x20000100;

+    _rom_data_size = DEFINED(ROM_DATA_SIZE) ? 12 : DEFINED(ROM_DATA_SIZE_NO_OAD) ? 0x108 : 0;

+

+    .rom_data_reserve (_rom_data_start): {

+        . += _rom_data_size;

+    } > REGION_DATA

+

+    /*

+     * UDMACC26XX_CONFIG_BASE below must match UDMACC26XX_CONFIG_BASE defined

+     * by ti/drivers/dma/UDMACC26XX.h

+     * The user is allowed to change UDMACC26XX_CONFIG_BASE to move it away from

+     * the default address 0x2000_1800, but remember it must be 1024 bytes aligned.

+     */

+    UDMACC26XX_CONFIG_BASE = 0x20001800;

+

+    /*

+     * Define absolute addresses for the DMA channels.

+     * DMA channels must always be allocated at a fixed offset from the DMA base address.

+     * --------- DO NOT MODIFY -----------

+     */

+    DMA_UART0_RX_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x10);

+    DMA_UART0_TX_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x20);

+    DMA_SPI0_RX_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x30);

+    DMA_SPI0_TX_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x40);

+    DMA_UART1_RX_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x50);

+    DMA_UART1_TX_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x60);

+    DMA_ADC_PRI_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x70);

+    DMA_GPT0A_PRI_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x90);

+    DMA_SPI1_RX_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x100);

+    DMA_SPI1_TX_CONTROL_TABLE_ENTRY_ADDRESS   = (UDMACC26XX_CONFIG_BASE + 0x110);

+

+    DMA_UART0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x210);

+    DMA_UART0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x220);

+    DMA_SPI0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x230);

+    DMA_SPI0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x240);

+    DMA_UART1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x250);

+    DMA_UART1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS = (UDMACC26XX_CONFIG_BASE + 0x260);

+    DMA_ADC_ALT_CONTROL_TABLE_ENTRY_ADDRESS      = (UDMACC26XX_CONFIG_BASE + 0x270);

+    DMA_GPT0A_ALT_CONTROL_TABLE_ENTRY_ADDRESS    = (UDMACC26XX_CONFIG_BASE + 0x290);

+    DMA_SPI1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x300);

+    DMA_SPI1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS  = (UDMACC26XX_CONFIG_BASE + 0x310);

+

+    /*

+     * Allocate UART0, UART1, SPI0, SPI1, ADC, and GPTimer0 DMA descriptors at absolute addresses.

+     * --------- DO NOT MODIFY -----------

+     */

+    UDMACC26XX_uart0RxControlTableEntry_is_placed = 0;

+    .dmaUart0RxControlTableEntry DMA_UART0_RX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART0_RX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart0RxControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_uart0TxControlTableEntry_is_placed = 0;

+    .dmaUart0TxControlTableEntry DMA_UART0_TX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART0_TX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart0TxControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaSpi0RxControlTableEntry_is_placed = 0;

+    .dmaSpi0RxControlTableEntry DMA_SPI0_RX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI0_RX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi0RxControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaSpi0TxControlTableEntry_is_placed = 0;

+    .dmaSpi0TxControlTableEntry DMA_SPI0_TX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI0_TX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi0TxControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_uart1RxControlTableEntry_is_placed = 0;

+    .dmaUart1RxControlTableEntry DMA_UART1_RX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART1_RX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart1RxControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_uart1TxControlTableEntry_is_placed = 0;

+    .dmaUart1TxControlTableEntry DMA_UART1_TX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART1_TX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart1TxControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaADCPriControlTableEntry_is_placed = 0;

+    .dmaADCPriControlTableEntry DMA_ADC_PRI_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_ADC_PRI_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaADCPriControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaGPT0APriControlTableEntry_is_placed = 0;

+    .dmaGPT0APriControlTableEntry DMA_GPT0A_PRI_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_GPT0A_PRI_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaGPT0APriControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaSpi1RxControlTableEntry_is_placed = 0;

+    .dmaSpi1RxControlTableEntry DMA_SPI1_RX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI1_RX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi1RxControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaSpi1TxControlTableEntry_is_placed = 0;

+    .dmaSpi1TxControlTableEntry DMA_SPI1_TX_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI1_TX_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi1TxControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_uart0RxAltControlTableEntry_is_placed = 0;

+    .dmaUart0RxAltControlTableEntry DMA_UART0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart0RxAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_uart0TxAltControlTableEntry_is_placed = 0;

+    .dmaUart0TxAltControlTableEntry DMA_UART0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart0TxAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaSpi0RxAltControlTableEntry_is_placed = 0;

+    .dmaSpi0RxAltControlTableEntry DMA_SPI0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI0_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi0RxAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaSpi0TxAltControlTableEntry_is_placed = 0;

+    .dmaSpi0TxAltControlTableEntry DMA_SPI0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI0_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi0TxAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_uart1RxAltControlTableEntry_is_placed = 0;

+    .dmaUart1RxAltControlTableEntry DMA_UART1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart1RxAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_uart1TxAltControlTableEntry_is_placed = 0;

+    .dmaUart1TxAltControlTableEntry DMA_UART1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_UART1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaUart1TxAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaADCAltControlTableEntry_is_placed = 0;

+    .dmaADCAltControlTableEntry DMA_ADC_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_ADC_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaADCAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaGPT0AAltControlTableEntry_is_placed = 0;

+    .dmaGPT0AAltControlTableEntry DMA_GPT0A_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_GPT0A_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaGPT0AAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaSpi1RxAltControlTableEntry_is_placed = 0;

+    .dmaSpi1RxAltControlTableEntry DMA_SPI1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI1_RX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi1RxAltControlTableEntry)} > REGION_DATA

+

+    UDMACC26XX_dmaSpi1TxAltControlTableEntry_is_placed = 0;

+    .dmaSpi1TxAltControlTableEntry DMA_SPI1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS (NOLOAD) : AT (DMA_SPI1_TX_ALT_CONTROL_TABLE_ENTRY_ADDRESS) {*(.dmaSpi1TxAltControlTableEntry)} > REGION_DATA

+

+

+

+    /* if a ROM-only symbol is present, then ROM is being used.

+     * Reserve memory for surgically placed config constants.

+     */

+    _rom_rodata_start = 0x2000;

+    _rom_rodata_size = DEFINED(ROM_RODATA_SIZE) ? 0 : DEFINED(ROM_RODATA_SIZE_NO_OAD) ? 0x330 : 0;

+

+    .rom_rodata_reserve (_rom_rodata_start): {

+        . += _rom_rodata_size;

+    } > REGION_TEXT AT> REGION_TEXT

+

+    .text : {

+        CREATE_OBJECT_SYMBOLS

+        *(.text)

+        *(.text.*)

+        . = ALIGN(0x4);

+        KEEP (*(.ctors))

+        . = ALIGN(0x4);

+        KEEP (*(.dtors))

+        . = ALIGN(0x4);

+        __init_array_start = .;

+        KEEP (*(.init_array*))

+        __init_array_end = .;

+        *(.init)

+        *(.fini*)

+    } > REGION_TEXT AT> REGION_TEXT

+

+    PROVIDE (__etext = .);

+    PROVIDE (_etext = .);

+    PROVIDE (etext = .);

+

+    .rodata : {

+        *(.rodata)

+        *(.rodata.*)

+        *(.rodata_*)

+    } > REGION_TEXT AT> REGION_TEXT

+

+    .data : ALIGN(4) {

+        __data_load__ = LOADADDR (.data);

+        __data_start__ = .;

+        *(.data)

+        *(.data.*)

+        . = ALIGN (4);

+        __data_end__ = .;

+    } > REGION_DATA AT> REGION_TEXT

+

+    .ARM.exidx : {

+        __exidx_start = .;

+        *(.ARM.exidx* .gnu.linkonce.armexidx.*)

+        __exidx_end = .;

+    } > REGION_ARM_EXIDX AT> REGION_ARM_EXIDX

+

+    .ARM.extab : {

+        *(.ARM.extab* .gnu.linkonce.armextab.*)

+    } > REGION_ARM_EXTAB AT> REGION_ARM_EXTAB

+

+

+

+    .nvs (0x52000) (NOLOAD) : AT (0x52000) ALIGN(0x2000) {

+        *(.nvs)

+    } > REGION_TEXT

+

+    .ccfg : {

+        KEEP (*(.ccfg))

+    } > FLASH_CCFG AT> FLASH_CCFG

+

+    .bss : {

+        __bss_start__ = .;

+        *(.shbss)

+        *(.bss)

+        *(.bss.*)

+        *(COMMON)

+        . = ALIGN (4);

+        __bss_end__ = .;

+    } > REGION_BSS AT> REGION_BSS

+

+    .heap : {

+        __heap_start__ = .;

+        end = __heap_start__;

+        _end = end;

+        __end = end;

+        KEEP(*(.heap))

+        __heap_end__ = .;

+        __HeapLimit = __heap_end__;

+    } > REGION_HEAP AT> REGION_HEAP

+

+    .stack (NOLOAD) : ALIGN(0x8) {

+        _stack = .;

+        __stack = .;

+        KEEP(*(.stack)).

+        += 0x800;

+        _stack_end = .;

+        __stack_end = .;

+    } > REGION_STACK AT> REGION_STACK

+

+}

+

+ENTRY(resetISR)