summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHao Zhang2011-06-27 13:16:08 -0500
committerHao Zhang2011-06-27 13:16:08 -0500
commit14b791088556a658214f15c8395f6d90fcba1895 (patch)
treea68c0d8c145cf4af08c6fb7ed8efbba31f8f8e27
parentb108619ac5a024fe077894b57a00766dcd7a79f6 (diff)
downloadmcsdk-tools-14b791088556a658214f15c8395f6d90fcba1895.tar.gz
mcsdk-tools-14b791088556a658214f15c8395f6d90fcba1895.tar.xz
mcsdk-tools-14b791088556a658214f15c8395f6d90fcba1895.zip
Updates for 2.0.0.11 GA releaseDEV.BIOS.MCSDK.02.00.00.11
-rw-r--r--boot_loader/IBL_buildibl12
-rw-r--r--boot_loader/examples/i2c/nand/evmc6670l/.ccsproject2
-rw-r--r--boot_loader/examples/i2c/nand/evmc6670l/.cproject4
-rw-r--r--boot_loader/examples/i2c/nand/evmc6678l/.ccsproject2
-rw-r--r--boot_loader/examples/i2c/nand/evmc6678l/.cproject4
-rw-r--r--boot_loader/examples/i2c/nand/src/i2c_boot_nand_example.c13
-rw-r--r--boot_loader/examples/i2c/nor/evmc6670l/.ccsproject2
-rw-r--r--boot_loader/examples/i2c/nor/evmc6670l/.cproject4
-rw-r--r--boot_loader/examples/i2c/nor/evmc6678l/.ccsproject2
-rw-r--r--boot_loader/examples/i2c/nor/evmc6678l/.cproject4
-rw-r--r--boot_loader/examples/i2c/nor/src/i2c_boot_nor_example.c13
-rw-r--r--boot_loader/examples/i2c/tftp/evmc6670l/.ccsproject2
-rw-r--r--boot_loader/examples/i2c/tftp/evmc6670l/.cproject4
-rw-r--r--boot_loader/examples/i2c/tftp/evmc6678l/.ccsproject2
-rw-r--r--boot_loader/examples/i2c/tftp/evmc6678l/.cproject4
-rw-r--r--boot_loader/examples/i2c/tftp/src/i2c_boot_tftp_example.c13
-rw-r--r--boot_loader/examples/pcie/docs/README.pdfbin0 -> 182829 bytes
-rw-r--r--boot_loader/examples/pcie/docs/readme.docbin0 -> 495616 bytes
-rw-r--r--boot_loader/examples/pcie/linux_host_loader/Makefile11
-rw-r--r--boot_loader/examples/pcie/linux_host_loader/pciedemo.c686
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.ccsproject10
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.cproject88
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.project96
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/header.txt33
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/pcieboot_ddrinit.rmd11
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/pcieboot_ddrinit_elf2HBin.bat25
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/macros.ini1
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/pcieboot_ddrinit.cmd74
-rw-r--r--boot_loader/examples/pcie/pcieboot_ddrinit/src/pcieboot_ddrinit.c127
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.ccsproject10
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.cproject88
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.project96
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/header.txt33
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat27
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/helloworld_image.rmd11
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/macros.ini1
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/pcieboot_helloworld.cmd64
-rw-r--r--boot_loader/examples/pcie/pcieboot_helloworld/src/pcieboot_helloworld.c181
-rw-r--r--boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/header.txt33
-rw-r--r--boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/pcieboot_post_elf2HBin.bat25
-rw-r--r--boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/post_evm6678l.rmd12
-rw-r--r--boot_loader/examples/srio/docs/readme.docbin273408 -> 273408 bytes
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.ccsproject2
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.cproject4
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/header.txt33
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/srioboot_ddrinit_elf2HBin.bat2
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.ccsproject2
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.cproject4
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/header.txt33
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/srioboot_ddrinit_elf2HBin.bat2
-rw-r--r--boot_loader/examples/srio/srioboot_ddrinit/src/srioboot_ddrinit.c13
-rw-r--r--boot_loader/examples/srio/srioboot_example/evmc6670l/.ccsproject2
-rw-r--r--boot_loader/examples/srio/srioboot_example/evmc6670l/.cproject4
-rw-r--r--boot_loader/examples/srio/srioboot_example/evmc6678l/.ccsproject2
-rw-r--r--boot_loader/examples/srio/srioboot_example/evmc6678l/.cproject4
-rw-r--r--boot_loader/examples/srio/srioboot_example/src/srioBootExample.c36
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.ccsproject2
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.cproject4
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/header.txt33
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/helloworld_elf2HBin.bat2
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.ccsproject2
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.cproject4
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/header.txt33
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat2
-rw-r--r--boot_loader/examples/srio/srioboot_helloworld/src/srioboot_helloworld.c13
-rw-r--r--boot_loader/tools_install.bat1
-rw-r--r--hfile2array/header.txt33
-rw-r--r--hfile2array/hfile2array.c33
-rw-r--r--hfile2array/hfile2array.exebin89600 -> 89600 bytes
-rw-r--r--post/evmc6670l/.ccsproject2
-rw-r--r--post/evmc6670l/.cproject4
-rw-r--r--post/evmc6678l/.ccsproject2
-rw-r--r--post/evmc6678l/.cproject4
-rw-r--r--writer/eeprom/docs/README.txt8
-rw-r--r--writer/eeprom/evmc6670l/.ccsproject2
-rw-r--r--writer/eeprom/evmc6670l/.cproject4
-rw-r--r--writer/eeprom/evmc6678l/.ccsproject2
-rw-r--r--writer/eeprom/evmc6678l/.cproject4
-rw-r--r--writer/eeprom/include/types.h2
-rw-r--r--writer/eeprom/src/eepromwriter.c13
-rw-r--r--writer/nand/docs/README.txt8
-rw-r--r--writer/nand/evmc6670l/.cproject4
-rw-r--r--writer/nand/evmc6678l/.ccsproject2
-rw-r--r--writer/nand/evmc6678l/.cproject4
-rw-r--r--writer/nand/include/types.h2
-rw-r--r--writer/nand/src/nandwriter.c13
-rw-r--r--writer/nor/docs/README.txt8
-rw-r--r--writer/nor/evmc6670l/.cproject4
-rw-r--r--writer/nor/evmc6678l/.ccsproject2
-rw-r--r--writer/nor/evmc6678l/.cproject4
-rw-r--r--writer/nor/include/types.h2
-rw-r--r--writer/nor/src/norwriter.c13
92 files changed, 2043 insertions, 205 deletions
diff --git a/boot_loader/IBL_buildibl b/boot_loader/IBL_buildibl
index c6cfa13..35fc35d 100644
--- a/boot_loader/IBL_buildibl
+++ b/boot_loader/IBL_buildibl
@@ -4,6 +4,12 @@ source setupenvMsys.sh
4make evm_c6678_i2c ENDIAN=little I2C_BUS_ADDR=0x51 4make evm_c6678_i2c ENDIAN=little I2C_BUS_ADDR=0x51
5cp -f ibl_c66x/i2crom.dat ../../../i2crom_0x51_c6678_le.dat 5cp -f ibl_c66x/i2crom.dat ../../../i2crom_0x51_c6678_le.dat
6cp -f ../util/i2cConfig/i2cparam_c66x_le.out ../../../i2cparam_0x51_c6678_le_0x500.out 6cp -f ../util/i2cConfig/i2cparam_c66x_le.out ../../../i2cparam_0x51_c6678_le_0x500.out
7cp -f ../util/i2cConfig/i2cConfig.gel ../../../i2cConfig.gel
8cp -f ../util/btoccs/b2ccs.exe ../../../b2ccs.exe
9cp -f ../util/btoccs/b2i2c.exe ../../../b2i2c.exe
10cp -f ../util/bconvert/bconvert64x.exe ../../../bconvert64x.exe
11cp -f ../util/romparse/romparse.exe ../../../romparse.exe
12
7make clean 13make clean
8 14
9make evm_c6670_i2c ENDIAN=little I2C_BUS_ADDR=0x51 15make evm_c6670_i2c ENDIAN=little I2C_BUS_ADDR=0x51
@@ -16,5 +22,11 @@ mv -f ../../../i2crom_0x51_c6670_le.dat bin/i2crom_0x51_c6670_le.dat
16mv -f ../../../i2cparam_0x51_c6678_le_0x500.out bin/i2cparam_0x51_c6678_le_0x500.out 22mv -f ../../../i2cparam_0x51_c6678_le_0x500.out bin/i2cparam_0x51_c6678_le_0x500.out
17mv -f ../../../i2cparam_0x51_c6670_le_0x500.out bin/i2cparam_0x51_c6670_le_0x500.out 23mv -f ../../../i2cparam_0x51_c6670_le_0x500.out bin/i2cparam_0x51_c6670_le_0x500.out
18 24
25mv -f ../../../i2cConfig.gel bin/i2cConfig.gel
26mv -f ../../../b2ccs.exe ../util/btoccs/b2ccs.exe
27mv -f ../../../b2i2c.exe ../util/btoccs/b2i2c.exe
28mv -f ../../../bconvert64x.exe ../util/bconvert/bconvert64x.exe
29mv -f ../../../romparse.exe ../util/romparse/romparse.exe
30
19cd ../../../ 31cd ../../../
20 32
diff --git a/boot_loader/examples/i2c/nand/evmc6670l/.ccsproject b/boot_loader/examples/i2c/nand/evmc6670l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/i2c/nand/evmc6670l/.ccsproject
+++ b/boot_loader/examples/i2c/nand/evmc6670l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/i2c/nand/evmc6670l/.cproject b/boot_loader/examples/i2c/nand/evmc6670l/.cproject
index 5385945..0f34862 100644
--- a/boot_loader/examples/i2c/nand/evmc6670l/.cproject
+++ b/boot_loader/examples/i2c/nand/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/i2cnandboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/i2cnandboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/i2c/nand/evmc6678l/.ccsproject b/boot_loader/examples/i2c/nand/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/i2c/nand/evmc6678l/.ccsproject
+++ b/boot_loader/examples/i2c/nand/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/i2c/nand/evmc6678l/.cproject b/boot_loader/examples/i2c/nand/evmc6678l/.cproject
index 78e8280..66a2bad 100644
--- a/boot_loader/examples/i2c/nand/evmc6678l/.cproject
+++ b/boot_loader/examples/i2c/nand/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/i2cnandboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/i2cnandboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/i2c/nand/src/i2c_boot_nand_example.c b/boot_loader/examples/i2c/nand/src/i2c_boot_nand_example.c
index b0cd601..113bdcd 100644
--- a/boot_loader/examples/i2c/nand/src/i2c_boot_nand_example.c
+++ b/boot_loader/examples/i2c/nand/src/i2c_boot_nand_example.c
@@ -43,7 +43,6 @@
43#include <stdio.h> 43#include <stdio.h>
44#include <string.h> 44#include <string.h>
45#include "platform.h" 45#include "platform.h"
46#include "ti/csl/csl_semAux.h"
47 46
48#define BOOT_UART_BAUDRATE 115200 47#define BOOT_UART_BAUDRATE 115200
49 48
@@ -67,23 +66,11 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
67 66
68void Osal_platformSpiCsEnter(void) 67void Osal_platformSpiCsEnter(void)
69{ 68{
70 /* Get the hardware semaphore.
71 *
72 * Acquire Multi core CPPI synchronization lock
73 */
74 while ((CSL_semAcquireDirect (3)) == 0);
75
76 return; 69 return;
77} 70}
78 71
79void Osal_platformSpiCsExit (void) 72void Osal_platformSpiCsExit (void)
80{ 73{
81 /* Release the hardware semaphore
82 *
83 * Release multi-core lock.
84 */
85 CSL_semReleaseSemaphore (3);
86
87 return; 74 return;
88} 75}
89 76
diff --git a/boot_loader/examples/i2c/nor/evmc6670l/.ccsproject b/boot_loader/examples/i2c/nor/evmc6670l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/i2c/nor/evmc6670l/.ccsproject
+++ b/boot_loader/examples/i2c/nor/evmc6670l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/i2c/nor/evmc6670l/.cproject b/boot_loader/examples/i2c/nor/evmc6670l/.cproject
index 0f4bca9..492cc0c 100644
--- a/boot_loader/examples/i2c/nor/evmc6670l/.cproject
+++ b/boot_loader/examples/i2c/nor/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/i2cnorboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/i2cnorboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/i2c/nor/evmc6678l/.ccsproject b/boot_loader/examples/i2c/nor/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/i2c/nor/evmc6678l/.ccsproject
+++ b/boot_loader/examples/i2c/nor/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/i2c/nor/evmc6678l/.cproject b/boot_loader/examples/i2c/nor/evmc6678l/.cproject
index 7f3f6e0..8be4568 100644
--- a/boot_loader/examples/i2c/nor/evmc6678l/.cproject
+++ b/boot_loader/examples/i2c/nor/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/i2cnorboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/i2cnorboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/i2c/nor/src/i2c_boot_nor_example.c b/boot_loader/examples/i2c/nor/src/i2c_boot_nor_example.c
index e61ddbf..f607650 100644
--- a/boot_loader/examples/i2c/nor/src/i2c_boot_nor_example.c
+++ b/boot_loader/examples/i2c/nor/src/i2c_boot_nor_example.c
@@ -43,7 +43,6 @@
43#include <stdio.h> 43#include <stdio.h>
44#include <string.h> 44#include <string.h>
45#include "platform.h" 45#include "platform.h"
46#include "ti/csl/csl_semAux.h"
47 46
48#define BOOT_UART_BAUDRATE 115200 47#define BOOT_UART_BAUDRATE 115200
49 48
@@ -67,23 +66,11 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
67 66
68void Osal_platformSpiCsEnter(void) 67void Osal_platformSpiCsEnter(void)
69{ 68{
70 /* Get the hardware semaphore.
71 *
72 * Acquire Multi core CPPI synchronization lock
73 */
74 while ((CSL_semAcquireDirect (3)) == 0);
75
76 return; 69 return;
77} 70}
78 71
79void Osal_platformSpiCsExit (void) 72void Osal_platformSpiCsExit (void)
80{ 73{
81 /* Release the hardware semaphore
82 *
83 * Release multi-core lock.
84 */
85 CSL_semReleaseSemaphore (3);
86
87 return; 74 return;
88} 75}
89 76
diff --git a/boot_loader/examples/i2c/tftp/evmc6670l/.ccsproject b/boot_loader/examples/i2c/tftp/evmc6670l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/i2c/tftp/evmc6670l/.ccsproject
+++ b/boot_loader/examples/i2c/tftp/evmc6670l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/i2c/tftp/evmc6670l/.cproject b/boot_loader/examples/i2c/tftp/evmc6670l/.cproject
index 8802248..dd67b8b 100644
--- a/boot_loader/examples/i2c/tftp/evmc6670l/.cproject
+++ b/boot_loader/examples/i2c/tftp/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/i2ctftpboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/i2ctftpboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/i2c/tftp/evmc6678l/.ccsproject b/boot_loader/examples/i2c/tftp/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/i2c/tftp/evmc6678l/.ccsproject
+++ b/boot_loader/examples/i2c/tftp/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/i2c/tftp/evmc6678l/.cproject b/boot_loader/examples/i2c/tftp/evmc6678l/.cproject
index 89f0cd4..94760ff 100644
--- a/boot_loader/examples/i2c/tftp/evmc6678l/.cproject
+++ b/boot_loader/examples/i2c/tftp/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/i2ctftpboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/i2ctftpboot/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/i2c/tftp/src/i2c_boot_tftp_example.c b/boot_loader/examples/i2c/tftp/src/i2c_boot_tftp_example.c
index 3c968cd..516722c 100644
--- a/boot_loader/examples/i2c/tftp/src/i2c_boot_tftp_example.c
+++ b/boot_loader/examples/i2c/tftp/src/i2c_boot_tftp_example.c
@@ -43,7 +43,6 @@
43#include <stdio.h> 43#include <stdio.h>
44#include <string.h> 44#include <string.h>
45#include "platform.h" 45#include "platform.h"
46#include "ti/csl/csl_semAux.h"
47 46
48#define BOOT_UART_BAUDRATE 115200 47#define BOOT_UART_BAUDRATE 115200
49 48
@@ -67,23 +66,11 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
67 66
68void Osal_platformSpiCsEnter(void) 67void Osal_platformSpiCsEnter(void)
69{ 68{
70 /* Get the hardware semaphore.
71 *
72 * Acquire Multi core CPPI synchronization lock
73 */
74 while ((CSL_semAcquireDirect (3)) == 0);
75
76 return; 69 return;
77} 70}
78 71
79void Osal_platformSpiCsExit (void) 72void Osal_platformSpiCsExit (void)
80{ 73{
81 /* Release the hardware semaphore
82 *
83 * Release multi-core lock.
84 */
85 CSL_semReleaseSemaphore (3);
86
87 return; 74 return;
88} 75}
89 76
diff --git a/boot_loader/examples/pcie/docs/README.pdf b/boot_loader/examples/pcie/docs/README.pdf
new file mode 100644
index 0000000..89f0774
--- /dev/null
+++ b/boot_loader/examples/pcie/docs/README.pdf
Binary files differ
diff --git a/boot_loader/examples/pcie/docs/readme.doc b/boot_loader/examples/pcie/docs/readme.doc
new file mode 100644
index 0000000..f2efb5d
--- /dev/null
+++ b/boot_loader/examples/pcie/docs/readme.doc
Binary files differ
diff --git a/boot_loader/examples/pcie/linux_host_loader/Makefile b/boot_loader/examples/pcie/linux_host_loader/Makefile
new file mode 100644
index 0000000..9368b07
--- /dev/null
+++ b/boot_loader/examples/pcie/linux_host_loader/Makefile
@@ -0,0 +1,11 @@
1KDIR=/usr/src/linux-headers-2.6.32-28-generic-pae
2
3PWD=$(shell pwd)
4
5obj-m = pciedemo.o
6
7all:
8 $(MAKE) -C $(KDIR) M=$(PWD)
9clean:
10 rm -fr *.o *.mod.c *.ko
11
diff --git a/boot_loader/examples/pcie/linux_host_loader/pciedemo.c b/boot_loader/examples/pcie/linux_host_loader/pciedemo.c
new file mode 100644
index 0000000..c0644b8
--- /dev/null
+++ b/boot_loader/examples/pcie/linux_host_loader/pciedemo.c
@@ -0,0 +1,686 @@
1/******************************************************************************
2* Copyright (c) 2011 Texas Instruments Incorporated - http://www.ti.com
3*
4* This program is free software; you can redistribute it and/or
5* modify it under the terms of the GNU General Public License as
6* published by the Free Software Foundation version 2.
7*
8* This program is distributed "as is" WITHOUT ANY WARRANTY of any
9* kind, whether express or implied; without even the implied warranty
10* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11* GNU General Public License for more details.
12*****************************************************************************/
13
14/**************************************************************************************
15* FILE NAME: pciedemo.c
16*
17* DESCRIPTION: A sample code to load DSP boot image from a Linux machine into DSP.
18*
19***************************************************************************************/
20
21#include <linux/module.h>
22#include <linux/types.h>
23#include <linux/kernel.h>
24#include <linux/pci.h>
25#include <linux/delay.h>
26#include <linux/fs.h>
27#include <linux/init.h>
28#include <linux/ioport.h>
29#include <linux/interrupt.h>
30#include <asm/uaccess.h>
31
32MODULE_LICENSE("GPL v2");
33
34/** ============================================================================
35* @macro Data types
36*
37* @desc Basic data types
38* ============================================================================
39*/
40typedef signed char Int8 ; /* 8 bit value */
41typedef signed short int Int16 ; /* 16 bit value */
42typedef signed long int Int32 ; /* 32 bit value */
43
44typedef unsigned char Uint8 ; /* 8 bit value */
45typedef unsigned short int Uint16 ; /* 16 bit value */
46typedef unsigned long int Uint32 ; /* 32 bit value */
47
48typedef float Real32 ; /* 32 bit value */
49typedef double Real64 ; /* 64 bit value */
50
51typedef short int Bool ; /* 16 bit value */
52
53typedef char Char8 ; /* 8 bit value */
54typedef short Char16 ; /* 16 bit value */
55
56typedef unsigned char Uchar8 ; /* 8 bit value */
57typedef unsigned short Uchar16 ; /* 16 bit value */
58
59#define Void void
60typedef void * Pvoid ;
61
62typedef Char8 * Pstr ;
63typedef Uchar8 * Pustr ;
64
65#define HELLO_WORLD_DEMO 1
66#define POST_DEMO 0
67
68//Include header array
69#if HELLO_WORLD_DEMO
70#include "pcieDdrInit.h" //DDR init
71#include "pcieBootCode.h" //"Hello world" boot example
72#endif
73
74#if POST_DEMO
75#include "post6678.h" //POST boot example
76#endif
77
78#define PCIE_TI_VENDOR 0x104C
79#define PCIE_TI_DEVICE 0x8888
80#define PCIE_BASE_ADDRESS 0x21800000
81#define IB_BAR0 0x300
82#define IB_START0_LO 0x304
83#define IB_START0_HI 0x308
84#define IB_OFFSET0 0x30C
85#define IB_BAR1 0x310
86#define IB_START1_LO 0x314
87#define IB_START1_HI 0x318
88#define IB_OFFSET1 0x31C
89#define IB_BAR2 0x320
90#define IB_START2_LO 0x324
91#define IB_START2_HI 0x328
92#define IB_OFFSET2 0x32C
93#define IB_BAR3 0x330
94#define IB_START3_LO 0x334
95#define IB_START3_HI 0x338
96#define IB_OFFSET3 0x33C
97
98#define LL2_START 0x00800000
99#define MSMC_START 0x0C000000
100#define DDR_START 0x80000000
101#define MAGIC_ADDR 0x0087FFFC
102
103//Block size in bytes when r/w data from/to DSP
104#define BLOCK_TRANSFER_SIZE 0x100
105
106struct pci_dev * PCIE_DEV = NULL ;
107
108//reg: PCIE application registers
109//mem: Local L2
110//msmc: Shared memory
111//ddr: DDR3
112Uint32 regBase = 0 ;
113Uint32 memBase = 0 ;
114Uint32 msmcBase = 0 ;
115Uint32 ddrBase = 0 ;
116
117Uint32 * regVirt = NULL ;
118Uint32 * memVirt = NULL ;
119Uint32 * msmcVirt = NULL ;
120Uint32 * ddrVirt = NULL ;
121
122Uint32 memLen = 0 ;
123Uint32 regLen = 0 ;
124Uint32 msmcLen = 0 ;
125Uint32 ddrLen = 0 ;
126
127Uint32 * ptrReg = 0;
128
129Int32 irqNo ;
130Uint32 dummy ;
131
132/* ============================================================================
133* @func PCI_FindPciDevices
134*
135* @desc This function locates DM642 PCI cards on system.
136*
137* @modif None.
138* ============================================================================
139*/
140Void
141PCI_FindPciDevices (Void)
142{
143 struct pci_dev * dev = NULL ;
144
145 while ((dev = pci_get_device (PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL)
146 {
147 if ((dev->vendor == PCIE_TI_VENDOR) && (dev->device == PCIE_TI_DEVICE)) {
148 printk ("Found TI device\n");
149 irqNo = dev->irq ;
150 PCIE_DEV = dev ;
151 printk ("TI device: vendor=0x%08x, dev=0x%08x, drv=0x%08x, irq=0x%04x, bus=0x%08x\n", dev->vendor, dev->device, dev->driver, dev->irq, dev->bus);
152 break ;
153 }
154 }
155}
156
157/* ============================================================================
158* @func PCI_readBAR
159*
160* @desc This function reads config.
161*
162* @modif None.
163* ============================================================================
164*/
165Void PCI_readBAR (Void)
166{
167 Uint32 barStart [4] ;
168 Uint32 barLen [4] ;
169 Uint32 barFlags [4] ;
170
171 barStart [0] = pci_resource_start (PCIE_DEV, 0); //BAR0 16K for PCIE application registers
172 barLen [0] = pci_resource_len (PCIE_DEV, 0);
173 barFlags [0] = pci_resource_flags (PCIE_DEV, 0);
174 barStart [1] = pci_resource_start (PCIE_DEV, 1); //BAR1 512K for LL2
175 barLen [1] = pci_resource_len (PCIE_DEV, 1);
176 barFlags [1] = pci_resource_flags (PCIE_DEV, 1);
177 barStart [2] = pci_resource_start (PCIE_DEV, 2); //BAR2 4M for MSMC
178 barLen [2] = pci_resource_len (PCIE_DEV, 2);
179 barFlags [2] = pci_resource_flags (PCIE_DEV, 2);
180 barStart [3] = pci_resource_start (PCIE_DEV, 3); //BAR3 16M for DDR3
181 barLen [3] = pci_resource_len (PCIE_DEV, 3);
182 barFlags [3] = pci_resource_flags (PCIE_DEV, 3);
183
184 /* ---------------------------------------------------------------------
185 * Map the REG memory region
186 * ---------------------------------------------------------------------
187 */
188 if (barFlags [0] & IORESOURCE_MEM) {
189 regBase = barStart [0] ;
190 /* Map the memory region. */
191 request_mem_region (regBase,
192 barLen [0],
193 "DSPLINK");
194 }
195 else {
196 /* Map the memory region. */
197 request_region (regBase,
198 barLen [0],
199 "DSPLINK");
200 }
201
202 if (regBase > 0) {
203 regVirt = ioremap (barStart [0],
204 barLen [0]) ;
205 }
206
207 /* ---------------------------------------------------------------------
208 * Map the LL2RAM memory region
209 * ---------------------------------------------------------------------
210 */
211 if (barFlags [1] & IORESOURCE_MEM) {
212 memBase = barStart [1] ;
213 /* Map the memory region. */
214 request_mem_region (memBase,
215 barLen [1],
216 "DSPLINK");
217 }
218 else {
219 /* Map the memory region. */
220 request_region (memBase,
221 barLen [1],
222 "DSPLINK");
223 }
224
225 if (memBase > 0) {
226 memVirt = ioremap (barStart [1],
227 barLen [1]) ;
228 }
229
230 /* ---------------------------------------------------------------------
231 * Map the MSMC memory region
232 * ---------------------------------------------------------------------
233 */
234 if (barFlags [2] & IORESOURCE_MEM) {
235 msmcBase = barStart [2] ;
236 /* Map the memory region. */
237 request_mem_region (msmcBase,
238 barLen [2],
239 "DSPLINK");
240 }
241 else {
242 /* Map the memory region. */
243 request_region (msmcBase,
244 barLen [2],
245 "DSPLINK");
246 }
247
248 if (msmcBase > 0) {
249 msmcVirt = ioremap (barStart [2],
250 barLen [2]) ;
251 }
252
253
254 /* ---------------------------------------------------------------------
255 * Map the DDR memory region
256 * ---------------------------------------------------------------------
257 */
258 if (barFlags [3] & IORESOURCE_MEM) {
259 ddrBase = barStart [3] ;
260 /* Map the memory region. */
261 request_mem_region (ddrBase,
262 barLen [3],
263 "DSPLINK");
264 }
265 else {
266 /* Map the memory region. */
267 request_region (ddrBase,
268 barLen [3],
269 "DSPLINK");
270 }
271
272 if (ddrBase > 0) {
273 ddrVirt = ioremap (barStart [3],
274 barLen [3]) ;
275 }
276
277 regLen = barLen [0] ;
278 memLen = barLen [1] ;
279 msmcLen = barLen [2] ;
280 ddrLen = barLen [3] ;
281
282}
283
284/* =============================================================================
285* @func PCI_setMaster
286*
287* @desc This function makes the given device to be master.
288*
289* @modif None.
290* ============================================================================
291*/
292Void
293PCI_setMaster (void)
294{
295 Int32 retVal ;
296 Uint16 cmdVal ;
297 struct pci_dev * dev ;
298
299 dev = PCIE_DEV ;
300
301 /* set the DMA mask */
302 if (pci_set_dma_mask (dev, 0xfffffff0ULL)) {
303 }
304
305 /*
306 * set the desired PCI dev to be master, this internally sets the latency
307 * timer.
308 */
309 pci_set_master (dev) ;
310 pci_write_config_byte(dev, PCI_LATENCY_TIMER, 0x80);
311
312 /* Add support memory write invalidate */
313 retVal = pci_set_mwi (dev) ;
314
315 pci_read_config_word (dev, PCI_COMMAND, (u16 *) &cmdVal) ;
316 /* and set the master bit in command register. */
317 cmdVal |= PCI_COMMAND_MEMORY
318 | PCI_COMMAND_MASTER
319 | PCI_COMMAND_SERR ;
320 /* and clear the interrupt disable bit in command register. */
321 cmdVal &= ~PCI_COMMAND_INTX_DISABLE;
322 pci_write_config_word (dev, PCI_COMMAND, cmdVal) ;
323}
324
325/* Convert 4 bytes to 32 bits long word*/
326Uint32 byteto32bits(Uint8 *pDspCode)
327{
328 Uint32 i;
329 Uint32 temp;
330
331 temp = *pDspCode++;
332 for(i=0; i<3;i++) {
333 temp <<= 8;
334 temp |= *pDspCode++;
335 }
336 return(temp);
337}
338
339/* Function to write a block of data into DSP memory from Linux host
340Note the data buffer is in 32-bit format, unit of length is byte
341corNum: to write data: 0-7 for cores 0-7; 8 for MSMC; 9 for DDR
342*/
343Uint32 WriteDSPMemory(Uint32 coreNum, Uint32 DSPMemAddr, Uint32 *buffer, Uint32 length)
344{
345 Uint32 i, offset, tempReg = 0;
346 Uint32 * ptr;
347
348 if (length == 0) {
349 return 0;
350 }
351
352 switch (coreNum) {
353 case 0:
354 case 1:
355 case 2:
356 case 3:
357 case 4:
358 case 5:
359 case 6:
360 case 7:
361 DSPMemAddr &= 0x00FFFFFF;
362 tempReg = *(ptrReg+IB_OFFSET1/4);
363 *(ptrReg+IB_OFFSET1/4) = tempReg + coreNum*0x01000000; //pointing to a different core
364
365 if (DSPMemAddr < LL2_START) {
366 return 0;
367 } else {
368 offset = DSPMemAddr - LL2_START;
369 ptr = (Uint32 *) memVirt + offset/4 ;
370 }
371 break;
372 case 8: //this is for MSMC
373 if (DSPMemAddr < MSMC_START) {
374 return 0;
375 } else {
376 offset = DSPMemAddr - MSMC_START;
377 ptr = (Uint32 *) msmcVirt + offset/4 ;
378 }
379 break;
380 case 9: //this is for DDR
381 if (DSPMemAddr < DDR_START) {
382 return 0;
383 } else {
384 offset = DSPMemAddr - DDR_START;
385 ptr = (Uint32 *) ddrVirt + offset/4 ;
386 }
387 break;
388 default:
389 printk("Please use coreNum 0-7 core 0-7, coreNum 8 for MSMC and coreNum 9 for DDR\n");
390 return 0;
391 break;
392 }
393
394 for (i = 0; i < length/4; i++) {
395 *ptr = buffer[i];
396 ptr++;
397 }
398
399 if ((coreNum >= 0)&&(coreNum <=7)) {
400 *(ptrReg+IB_OFFSET1/4) = tempReg; //Restore IB_OFFSET1
401 }
402
403 return length;
404}
405
406/* Function to read a block DSP memory by Linux host
407Note the data buffer is in 32-bit format, unit of length is byte
408corNum: to read data: 0-7 for cores 0-7; 8 for MSMC; 9 for DDR
409*/
410Uint32 ReadDSPMemory(Uint32 coreNum, Uint32 DSPMemAddr, Uint32 *buffer, Uint32 length)
411{
412 Uint32 i, offset, tempReg = 0;
413 Uint32 * ptr;
414
415 if (length == 0) {
416 return 0;
417 }
418
419 switch (coreNum) {
420 case 0:
421 case 1:
422 case 2:
423 case 3:
424 case 4:
425 case 5:
426 case 6:
427 case 7:
428 DSPMemAddr &= 0x00FFFFFF;
429 tempReg = *(ptrReg+IB_OFFSET1/4);
430 *(ptrReg+IB_OFFSET1/4) = tempReg + coreNum*0x1000000;
431 if (DSPMemAddr < LL2_START) {
432 return 0;
433 } else {
434 offset = DSPMemAddr - LL2_START;
435 ptr = (Uint32 *) memVirt + offset/4 ;
436 }
437 break;
438 case 8: //this is for MSMC
439 if (DSPMemAddr < MSMC_START) {
440 return 0;
441 } else {
442 offset = DSPMemAddr - MSMC_START;
443 ptr = (Uint32 *) msmcVirt + offset/4 ;
444 }
445 break;
446 case 9: //this is for DDR
447 if (DSPMemAddr < DDR_START) {
448 return 0;
449 } else {
450 offset = DSPMemAddr - DDR_START;
451 ptr = (Uint32 *) ddrVirt + offset/4 ;
452 }
453 break;
454 default:
455 printk("Please use coreNum 0-7 core 0-7, coreNum 8 for MSMC and coreNum 9 for DDR\n");
456 return 0;
457 break;
458 }
459
460 for (i = 0; i < length/4; i++) {
461 buffer[i] = *ptr;
462 ptr++;
463 }
464
465 if ((coreNum >= 0)&&(coreNum <=7)) {
466 *(ptrReg+IB_OFFSET1/4) = tempReg; //Restore IB_OFFSET1
467 }
468
469 return length;
470}
471
472Void pushData(Uint8 *pDspCode, Uint8 coreNum, Uint32 *bootEntryAddr)
473{
474 Uint32 i, j, tempArray[BLOCK_TRANSFER_SIZE/4];
475 Uint32 size, section = 0, totalSize = 0;
476 Uint32 count, remainder;
477 Uint32 startaddr;
478
479 /* Get the boot entry address */
480 *bootEntryAddr = byteto32bits(pDspCode);
481 printk("Boot entry address is 0x%8x\n", *bootEntryAddr);
482 pDspCode +=4;
483
484 while(1) {
485
486 /* Get the size */
487 size = byteto32bits(pDspCode);
488 if(size == 0) break;
489
490 if ((size/4)*4 != size) {
491 size = ((size/4)+1)*4;
492 }
493
494 totalSize += size;
495 section++;
496 pDspCode += 4;
497 startaddr = byteto32bits(pDspCode);
498
499 pDspCode+= 4;
500
501 count = size/BLOCK_TRANSFER_SIZE;
502
503 remainder = size - count * BLOCK_TRANSFER_SIZE;
504
505 for(i=0; i<count; i++) {
506 for (j = 0; j < BLOCK_TRANSFER_SIZE/4; j++) {
507 tempArray[j] = byteto32bits(pDspCode);
508 pDspCode += 4;
509 }
510 /* Transfer boot tables to DSP */
511 WriteDSPMemory(coreNum, startaddr, tempArray, BLOCK_TRANSFER_SIZE);
512 startaddr += BLOCK_TRANSFER_SIZE;
513 }
514
515 for (j = 0; j < remainder/4; j++) {
516 tempArray[j] = byteto32bits(pDspCode);
517 pDspCode += 4;
518 }
519 WriteDSPMemory(coreNum, startaddr, tempArray, remainder);
520 }
521 printk("Total %d sections, 0x%x bytes of data written to core %d\n", section, totalSize, coreNum);
522}
523
524int init_module(void)
525{
526 Uint32 bootEntryAddr = 0; //Store 32-bit boot entry address read from .h file
527 Uint32 buffer[BLOCK_TRANSFER_SIZE/4]; //Store 32-bit DSP memory readback data
528
529 Uint32 i, j = 0;
530
531 printk ("Finding the device....\n") ;
532 PCI_FindPciDevices () ;
533 if (! PCIE_DEV) {
534 printk ("No PCIE device found!!!\n") ;
535 }
536
537 if (PCIE_DEV != NULL) {
538 printk ("Reading the BAR areas....\n") ;
539 PCI_readBAR () ;
540
541 printk ("Enabling the device....\n") ;
542 /* Linux Function: Initialize device before it's used by a driver*/
543 pci_enable_device (PCIE_DEV) ;
544
545 PCI_setMaster () ;
546
547 printk ("Access PCIE application register ....\n");
548
549 //Pointing to the beginning of the application registers
550 ptrReg = (Uint32 *) regVirt;
551
552 //Configure IB_BAR0 to BAR0 for PCIE registers
553 *(ptrReg+IB_BAR0/4) = 0;
554 *(ptrReg+IB_START0_LO/4) = (int)PCIE_DEV->resource[0].start;
555 *(ptrReg+IB_START0_HI/4) = 0;
556 *(ptrReg+IB_OFFSET0/4) = PCIE_BASE_ADDRESS;
557
558 //Configure IB_BAR1 to BAR1 for LL2 for core0
559 *(ptrReg+IB_BAR1/4) = 1;
560 *(ptrReg+IB_START1_LO/4) = (int)PCIE_DEV->resource[1].start;
561 *(ptrReg+IB_START1_HI/4) = 0;
562 *(ptrReg+IB_OFFSET1/4) = LL2_START + (1 << 28);
563
564 //Configure IB_BAR2 to BAR2 for MSMC
565 *(ptrReg+IB_BAR2/4) = 2;
566 *(ptrReg+IB_START2_LO/4) = (int)PCIE_DEV->resource[2].start;
567 *(ptrReg+IB_START2_HI/4) = 0;
568 *(ptrReg+IB_OFFSET2/4) = MSMC_START;
569
570 //Configure IB_BAR3 to BAR3 for DDR
571 *(ptrReg+IB_BAR3/4) = 3;
572 *(ptrReg+IB_START3_LO/4) = (int)PCIE_DEV->resource[3].start;
573 *(ptrReg+IB_START3_HI/4) = 0;
574 *(ptrReg+IB_OFFSET3/4) = DDR_START;
575
576#if HELLO_WORLD_DEMO
577 //Load DDR init code into DSP
578 pushData(ddrInitCode, 0, &bootEntryAddr);
579
580 //Write boot entry address into MAGIC_ADDR
581 WriteDSPMemory(0, MAGIC_ADDR, &bootEntryAddr, 4);
582
583 while (1) {
584 ReadDSPMemory(0, MAGIC_ADDR, buffer, 4);
585 if (buffer[0]==0) break;
586 for (i=0; i<1000; i++) j++;
587 }
588
589 //Load "Hello World" demo into DSP
590 pushData(bootCode, 9, &bootEntryAddr);
591
592 //Write boot entry address into MAGIC_ADDR
593 WriteDSPMemory(0, MAGIC_ADDR, &bootEntryAddr, 4);
594#endif
595
596#if POST_DEMO
597 //Load POST demo code into DSP
598 pushData(post6678, 0, &bootEntryAddr);
599
600 //Write boot entry address into MAGIC_ADDR
601 WriteDSPMemory(0, MAGIC_ADDR, &bootEntryAddr, 4);
602#endif
603 }
604 else {
605 printk ("No PCIE device found!!!\n") ;
606 }
607
608 return 1 ;
609}
610
611void cleanup_module(void)
612{
613
614 if (PCIE_DEV != NULL) {
615
616 /* ---------------------------------------------------------------------
617 * Unmap baseRegs region & release the reg region.
618 * ---------------------------------------------------------------------
619 */
620 iounmap(regVirt) ;
621 if (pci_resource_flags (PCIE_DEV, 0) & IORESOURCE_MEM) {
622 /* Map the memory region. */
623 release_mem_region (regBase,
624 regLen);
625 }
626 else {
627 /* Map the memory region. */
628 release_region (regBase,
629 regLen);
630 }
631
632 /* ---------------------------------------------------------------------
633 * Unmap LL2 region & release the reg region.
634 * ---------------------------------------------------------------------
635 */
636 iounmap(memVirt) ;
637 if (pci_resource_flags (PCIE_DEV, 1) & IORESOURCE_MEM) {
638 /* Map the memory region. */
639 release_mem_region (memBase,
640 memLen);
641 }
642 else {
643 /* Map the memory region. */
644 release_region (memBase,
645 memLen);
646 }
647
648 /* ---------------------------------------------------------------------
649 * Unmap MSMC region & release the reg region.
650 * ---------------------------------------------------------------------
651 */
652 iounmap(msmcVirt) ;
653 if (pci_resource_flags (PCIE_DEV, 2) & IORESOURCE_MEM) {
654 /* Map the memory region. */
655 release_mem_region (msmcBase,
656 msmcLen);
657 }
658 else {
659 /* Map the memory region. */
660 release_region (msmcBase,
661 msmcLen);
662 }
663
664 /* ---------------------------------------------------------------------
665 * Unmap DDR region & release the reg region.
666 * ---------------------------------------------------------------------
667 */
668 iounmap(ddrVirt) ;
669 if (pci_resource_flags (PCIE_DEV, 3) & IORESOURCE_MEM) {
670 /* Map the memory region. */
671 release_mem_region (ddrBase,
672 ddrLen);
673 }
674 else {
675 /* Map the memory region. */
676 release_region (ddrBase,
677 ddrLen);
678 }
679
680 free_irq (irqNo, &dummy) ;
681 }
682}
683
684
685
686
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.ccsproject b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.ccsproject
new file mode 100644
index 0000000..5cecea3
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.ccsproject
@@ -0,0 +1,10 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<?ccsproject version="1.0"?>
3
4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/>
10</projectOptions>
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.cproject b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.cproject
new file mode 100644
index 0000000..ae2bd30
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.cproject
@@ -0,0 +1,88 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<?fileVersion 4.0.0?>
3
4<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
5 <storageModule configRelations="2" moduleId="org.eclipse.cdt.core.settings">
6 <cconfiguration id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1869204513">
7 <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1869204513" moduleId="org.eclipse.cdt.core.settings" name="Debug">
8 <externalSettings/>
9 <extensions>
10 <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/>
11 <extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
12 <extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
13 <extension id="org.eclipse.rtsc.xdctools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
14 <extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
15 </extensions>
16 </storageModule>
17 <storageModule moduleId="org.eclipse.cdt.core.pathentry"/>
18 <storageModule moduleId="cdtBuildSystem" version="4.0.0">
19 <configuration artifactExtension="out" artifactName="../bin/pcieboot_ddrinit_evm6678l" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser" id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1869204513" name="Debug" parent="com.ti.ccstudio.buildDefinitions.C6000.Debug">
20 <folderInfo id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1869204513." name="/" resourcePath="">
21 <toolChain id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.DebugToolchain.1437783928" name="TI Code Generation Tools" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.linkerDebug.1651564508">
22 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.944250360" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
23 <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=com.ti.ccstudio.deviceModel.C6000.GenericC66xxDevice"/>
24 <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
25 <listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/pcieboot_ddrinit_evmc6678l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
36 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.DIAG_WARNING.1643228293" name="Treat diagnostic &lt;id&gt; as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.DIAG_WARNING" valueType="stringList">
37 <listOptionValue builtIn="false" value="225"/>
38 </option>
39 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.SILICON_VERSION.1162385299" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.SILICON_VERSION" value="6600" valueType="string"/>
40 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.INCLUDE_PATH.1360329378" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.INCLUDE_PATH" valueType="includePath">
41 <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>
42 <listOptionValue builtIn="false" value="&quot;${TI_PDK_C6678_INSTALL_DIR}/packages/ti/platform&quot;"/>
43 </option>
44 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.ABI.1539422311" name="Application binary interface (coffabi, eabi) (--abi)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.ABI.eabi" valueType="enumerated"/>
45 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.DEFINE.1729702344" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.DEFINE" valueType="definedSymbols">
46 <listOptionValue builtIn="false" value="_EVMC6678L_"/>
47 </option>
48 <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__C_SRCS.1023912707" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__C_SRCS"/>
49 <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__CPP_SRCS.979818748" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__CPP_SRCS"/>
50 <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__ASM_SRCS.416705288" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__ASM_SRCS"/>
51 <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__ASM2_SRCS.616636339" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__ASM2_SRCS"/>
52 </tool>
53 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.linkerDebug.1651564508" name="C6000 Linker" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.linkerDebug">
54 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.OUTPUT_FILE.1931592324" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.OUTPUT_FILE" value="&quot;../bin/pcieboot_ddrinit_evm6678l.out&quot;" valueType="string"/>
55 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.MAP_FILE.612136299" name="Input and output sections listed into &lt;file&gt; (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.MAP_FILE" value="&quot;../bin/pcieboot_ddrinit_evm6678l.map&quot;" valueType="string"/>
56 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.LIBRARY.1501448535" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.LIBRARY" valueType="libs">
57 <listOptionValue builtIn="false" value="&quot;ti.platform.evm6678l.ae66&quot;"/>
58 <listOptionValue builtIn="false" value="&quot;libc.a&quot;"/>
59 </option>
60 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.SEARCH_PATH.1252449937" name="Add &lt;dir&gt; to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.SEARCH_PATH" valueType="stringList">
61 <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/lib&quot;"/>
62 <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>
63 <listOptionValue builtIn="false" value="&quot;${TI_PDK_C6678_INSTALL_DIR}/packages/ti/platform/evmc6678l/platform_lib/lib/debug&quot;"/>
64 </option>
65 </tool>
66 <tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.762712048" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool">
67 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.1607740639" name="RTSC package repositories (--xdcpath)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList">
68 <listOptionValue builtIn="false" value="&quot;${TI_PDK_C6678_INSTALL_DIR}/packages&quot;"/>
69 </option>
70 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET.731138713" name="RTSC target (-t)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.elf.C66" valueType="string"/>
71 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.749184621" name="RTSC platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.evm6678" valueType="string"/>
72 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.1757534191" name="Build profile (-r)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE" value="debug" valueType="string"/>
73 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.389800643" name="Code generation tool directory (-c)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR" value="&quot;${CG_TOOL_ROOT}&quot;" valueType="string"/>
74 </tool>
75 </toolChain>
76 </folderInfo>
77 </configuration>
78 </storageModule>
79 <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
80 <storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
81 <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
82 <storageModule moduleId="scannerConfiguration"/>
83 </cconfiguration>
84 </storageModule>
85 <storageModule moduleId="cdtBuildSystem" version="4.0.0">
86 <project id="pcieboot_ddrinit.com.ti.ccstudio.buildDefinitions.C6000.ProjectType.1742876545" name="C6000" projectType="com.ti.ccstudio.buildDefinitions.C6000.ProjectType"/>
87 </storageModule>
88</cproject>
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.project b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.project
new file mode 100644
index 0000000..6fd91e4
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/.project
@@ -0,0 +1,96 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>pcieboot_ddrinit_evmc6678l</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
10 <arguments>
11 <dictionary>
12 <key>?name?</key>
13 <value></value>
14 </dictionary>
15 <dictionary>
16 <key>org.eclipse.cdt.make.core.append_environment</key>
17 <value>true</value>
18 </dictionary>
19 <dictionary>
20 <key>org.eclipse.cdt.make.core.autoBuildTarget</key>
21 <value>all</value>
22 </dictionary>
23 <dictionary>
24 <key>org.eclipse.cdt.make.core.buildArguments</key>
25 <value>-k</value>
26 </dictionary>
27 <dictionary>
28 <key>org.eclipse.cdt.make.core.buildCommand</key>
29 <value>${CCS_INSTALL_ROOT}/utils/gmake/gmake</value>
30 </dictionary>
31 <dictionary>
32 <key>org.eclipse.cdt.make.core.buildLocation</key>
33 <value>${workspace_loc:/pcieboot_ddrinit_evmc6678l/Debug}</value>
34 </dictionary>
35 <dictionary>
36 <key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
37 <value>clean</value>
38 </dictionary>
39 <dictionary>
40 <key>org.eclipse.cdt.make.core.contents</key>
41 <value>org.eclipse.cdt.make.core.activeConfigSettings</value>
42 </dictionary>
43 <dictionary>
44 <key>org.eclipse.cdt.make.core.enableAutoBuild</key>
45 <value>true</value>
46 </dictionary>
47 <dictionary>
48 <key>org.eclipse.cdt.make.core.enableCleanBuild</key>
49 <value>true</value>
50 </dictionary>
51 <dictionary>
52 <key>org.eclipse.cdt.make.core.enableFullBuild</key>
53 <value>true</value>
54 </dictionary>
55 <dictionary>
56 <key>org.eclipse.cdt.make.core.fullBuildTarget</key>
57 <value>all</value>
58 </dictionary>
59 <dictionary>
60 <key>org.eclipse.cdt.make.core.stopOnError</key>
61 <value>true</value>
62 </dictionary>
63 <dictionary>
64 <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
65 <value>true</value>
66 </dictionary>
67 </arguments>
68 </buildCommand>
69 <buildCommand>
70 <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
71 <triggers>full,incremental,</triggers>
72 <arguments>
73 </arguments>
74 </buildCommand>
75 </buildSpec>
76 <natures>
77 <nature>org.eclipse.rtsc.xdctools.buildDefinitions.XDC.xdcNature</nature>
78 <nature>com.ti.ccstudio.managedbuild.core.ccsNature</nature>
79 <nature>org.eclipse.cdt.core.cnature</nature>
80 <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
81 <nature>org.eclipse.cdt.core.ccnature</nature>
82 <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
83 </natures>
84 <linkedResources>
85 <link>
86 <name>README.pdf</name>
87 <type>1</type>
88 <location>TI_MCSDK_PCIEBOOT_DIR/docs/README.pdf</location>
89 </link>
90 <link>
91 <name>src</name>
92 <type>2</type>
93 <locationURI>TI_MCSDK_PCIEBOOT_DIR/pcieboot_ddrinit/src</locationURI>
94 </link>
95 </linkedResources>
96</projectDescription>
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/header.txt b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/header.txt
new file mode 100644
index 0000000..9786996
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/header.txt
@@ -0,0 +1,33 @@
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
15 * distribution.
16 *
17 * Neither the name of Texas Instruments Incorporated nor the names of
18 * its contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 */
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/pcieboot_ddrinit.rmd b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/pcieboot_ddrinit.rmd
new file mode 100644
index 0000000..a2f8b47
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/pcieboot_ddrinit.rmd
@@ -0,0 +1,11 @@
1-a
2-boot
3-e _c_int00
4
5ROMS
6{
7 ROM1: org = 0x800000, length = 0x80000, memwidth = 32, romwidth = 32
8 files = { pcieboot_ddrinit.btbl }
9}
10
11
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/pcieboot_ddrinit_elf2HBin.bat b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/pcieboot_ddrinit_elf2HBin.bat
new file mode 100644
index 0000000..6a53b7a
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/bin/pcieboot_ddrinit_elf2HBin.bat
@@ -0,0 +1,25 @@
1set C6000_CG_DIR="C:\Program Files\Texas Instruments\ccsv5\tools\compiler\c6000"
2set TARGET=6678
3set ENDIAN=little
4set PATH=%PATH%;%SystemRoot%\system32;%SystemRoot%;
5
6
7@echo off
8
9echo C6000_CG_DIR set as: %C6000_CG_DIR%
10echo TARGET set as: %TARGET%
11
12echo Converting .out to HEX ...
13if %ENDIAN% == little (
14%C6000_CG_DIR%\bin\hex6x -order L pcieboot_ddrinit.rmd pcieboot_ddrinit_evm%TARGET%l.out
15) else (
16%C6000_CG_DIR%\bin\hex6x -order M pcieboot_ddrinit.rmd pcieboot_ddrinit_evm%TARGET%l.out
17)
18
19..\..\..\..\..\..\bttbl2hfile\Bttbl2Hfile pcieboot_ddrinit.btbl pcieboot_ddrinit.h pcieboot_ddrinit.bin
20
21..\..\..\..\..\..\hfile2array\hfile2array pcieboot_ddrinit.h pcieDdrInit.h ddrInitCode
22
23move pcieDdrInit.h ..\..\..\linux_host_loader\
24
25
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/macros.ini b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/macros.ini
new file mode 100644
index 0000000..5f9fb3f
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/macros.ini
@@ -0,0 +1 @@
TI_MCSDK_PCIEBOOT_DIR="../../../../
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/pcieboot_ddrinit.cmd b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/pcieboot_ddrinit.cmd
new file mode 100644
index 0000000..3339e9a
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/evmc6678l/pcieboot_ddrinit.cmd
@@ -0,0 +1,74 @@
1/******************************************************************************
2 * Copyright (c) 2011 Texas Instruments Incorporated - http://www.ti.com
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 *
8 * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 *
11 * Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the
14 * distribution.
15 *
16 * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 *
32 *****************************************************************************/
33/*
34 * Linker command file
35 *
36 */
37
38-c
39-heap 0x1000
40-stack 0x1000
41
42/* Memory Map 1 - the default */
43MEMORY
44{
45 L2_LOCAL (RWX) : org = 0x10820000, len = 0x80000
46}
47
48SECTIONS
49{
50 .text:_boot_entry > L2_LOCAL
51 .csl_vect > L2_LOCAL
52 .cppi > L2_LOCAL
53 .linkram > L2_LOCAL
54 .mac_buffer > L2_LOCAL
55 platform_lib > L2_LOCAL
56 .text > L2_LOCAL
57 GROUP (NEAR_DP)
58 {
59 .neardata
60 .rodata
61 .bss
62 } load > L2_LOCAL
63 .stack > L2_LOCAL
64 .cinit > L2_LOCAL
65 .cio > L2_LOCAL
66 .const > L2_LOCAL
67 .data > L2_LOCAL
68 .switch > L2_LOCAL
69 .sysmem > L2_LOCAL
70 .far > L2_LOCAL
71 .testMem > L2_LOCAL
72 .fardata > L2_LOCAL
73}
74
diff --git a/boot_loader/examples/pcie/pcieboot_ddrinit/src/pcieboot_ddrinit.c b/boot_loader/examples/pcie/pcieboot_ddrinit/src/pcieboot_ddrinit.c
new file mode 100644
index 0000000..4726dda
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_ddrinit/src/pcieboot_ddrinit.c
@@ -0,0 +1,127 @@
1/******************************************************************************
2 * Copyright (c) 2011 Texas Instruments Incorporated - http://www.ti.com
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 *
8 * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 *
11 * Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the
14 * distribution.
15 *
16 * Neither the name of Texas Instruments Incorporated emac the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 *
32 *****************************************************************************/
33
34/**************************************************************************************
35 * FILE PURPOSE: PCIe Boot DDR Init Example
36 **************************************************************************************
37 * FILE NAME: pcieboot_ddrinit.c
38 *
39 * DESCRIPTION: A simple example to initialize the DDR before booting an image via PCIe.
40 *
41 ***************************************************************************************/
42#include <stdlib.h>
43#include <stdio.h>
44#include <string.h>
45#include "platform.h"
46
47#define DEVICE_REG32_W(x,y) *(volatile uint32_t *)(x)=(y)
48#define DEVICE_REG32_R(x) (*(volatile uint32_t *)(x))
49
50#ifdef _EVMC6678L_
51#define MAGIC_ADDR 0x87fffc
52#endif
53
54#ifdef _EVMC6670L_
55#define MAGIC_ADDR 0x8ffffc
56#endif
57
58#define BOOT_MAGIC_ADDR(x) (MAGIC_ADDR + (1<<28) + (x<<24))
59
60/* OSAL functions for Platform Library */
61uint8_t *Osal_platformMalloc (uint32_t num_bytes, uint32_t alignment)
62{
63 return malloc(num_bytes);
64}
65
66void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
67{
68 /* Free up the memory */
69 if (dataPtr)
70 {
71 free(dataPtr);
72 }
73}
74
75void Osal_platformSpiCsEnter(void)
76{
77 return;
78}
79
80void Osal_platformSpiCsExit (void)
81{
82 return;
83}
84
85void
86start_boot
87(
88 void
89)
90{
91 void (*exit)();
92 uint32_t entry_addr;
93
94 while(1)
95 {
96 entry_addr = DEVICE_REG32_R(BOOT_MAGIC_ADDR(0));
97 if (entry_addr != 0)
98 {
99 /* jump to the exit point, which will be the entry point for the full IBL */
100 exit = (void (*)())entry_addr;
101 (*exit)();
102 }
103 platform_delay(1);
104 }
105}
106
107/******************************************************************************
108 * Function: main
109 ******************************************************************************/
110void main ()
111{
112 platform_init_flags init_flags;
113 platform_init_config init_config;
114
115 /* Initialize main Platform lib */
116 memset(&init_config, 0, sizeof(platform_init_config));
117 memset(&init_flags, 1, sizeof(platform_init_flags));
118 if (platform_init(&init_flags, &init_config) != Platform_EOK)
119 {
120 printf ("Platform init failed!\n");
121 return;
122 }
123
124 /* Clear the boot entry address of the boot image and start to boot */
125 DEVICE_REG32_W(BOOT_MAGIC_ADDR(0), 0);
126 start_boot();
127}
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.ccsproject b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.ccsproject
new file mode 100644
index 0000000..5cecea3
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.ccsproject
@@ -0,0 +1,10 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<?ccsproject version="1.0"?>
3
4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/>
10</projectOptions>
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.cproject b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.cproject
new file mode 100644
index 0000000..eccc551
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.cproject
@@ -0,0 +1,88 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<?fileVersion 4.0.0?>
3
4<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
5 <storageModule configRelations="2" moduleId="org.eclipse.cdt.core.settings">
6 <cconfiguration id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1869204513">
7 <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1869204513" moduleId="org.eclipse.cdt.core.settings" name="Debug">
8 <externalSettings/>
9 <extensions>
10 <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/>
11 <extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
12 <extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
13 <extension id="org.eclipse.rtsc.xdctools.parsers.ErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
14 <extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
15 </extensions>
16 </storageModule>
17 <storageModule moduleId="org.eclipse.cdt.core.pathentry"/>
18 <storageModule moduleId="cdtBuildSystem" version="4.0.0">
19 <configuration artifactExtension="out" artifactName="../bin/pcieboot_helloworld_evm6678l" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser" id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1869204513" name="Debug" parent="com.ti.ccstudio.buildDefinitions.C6000.Debug">
20 <folderInfo id="com.ti.ccstudio.buildDefinitions.C6000.Debug.1869204513." name="/" resourcePath="">
21 <toolChain id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.DebugToolchain.1437783928" name="TI Code Generation Tools" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.linkerDebug.1651564508">
22 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.944250360" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
23 <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=com.ti.ccstudio.deviceModel.C6000.GenericC66xxDevice"/>
24 <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
25 <listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/pcieboot_helloworld_evmc6678l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
36 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.DIAG_WARNING.1643228293" name="Treat diagnostic &lt;id&gt; as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.DIAG_WARNING" valueType="stringList">
37 <listOptionValue builtIn="false" value="225"/>
38 </option>
39 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.SILICON_VERSION.1162385299" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.SILICON_VERSION" value="6600" valueType="string"/>
40 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.INCLUDE_PATH.1360329378" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.INCLUDE_PATH" valueType="includePath">
41 <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>
42 <listOptionValue builtIn="false" value="&quot;${TI_PDK_C6678_INSTALL_DIR}/packages/ti/platform&quot;"/>
43 </option>
44 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.ABI.1539422311" name="Application binary interface (coffabi, eabi) (--abi)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.ABI.eabi" valueType="enumerated"/>
45 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.DEFINE.172564945" name="Pre-define NAME (--define, -D)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compilerID.DEFINE" valueType="definedSymbols">
46 <listOptionValue builtIn="false" value="_EVMC6678L_"/>
47 </option>
48 <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__C_SRCS.1023912707" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__C_SRCS"/>
49 <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__CPP_SRCS.979818748" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__CPP_SRCS"/>
50 <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__ASM_SRCS.416705288" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__ASM_SRCS"/>
51 <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__ASM2_SRCS.616636339" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.compiler.inputType__ASM2_SRCS"/>
52 </tool>
53 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.linkerDebug.1651564508" name="C6000 Linker" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.linkerDebug">
54 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.OUTPUT_FILE.1931592324" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.OUTPUT_FILE" value="&quot;../bin/pcieboot_helloworld_evm6678l.out&quot;" valueType="string"/>
55 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.MAP_FILE.612136299" name="Input and output sections listed into &lt;file&gt; (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.MAP_FILE" value="&quot;../bin/pcieboot_helloworld_evm6678l.map&quot;" valueType="string"/>
56 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.LIBRARY.1501448535" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.LIBRARY" valueType="libs">
57 <listOptionValue builtIn="false" value="&quot;ti.platform.evm6678l.ae66&quot;"/>
58 <listOptionValue builtIn="false" value="&quot;libc.a&quot;"/>
59 </option>
60 <option id="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.SEARCH_PATH.1252449937" name="Add &lt;dir&gt; to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.linkerID.SEARCH_PATH" valueType="stringList">
61 <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/lib&quot;"/>
62 <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>
63 <listOptionValue builtIn="false" value="&quot;${TI_PDK_C6678_INSTALL_DIR}/packages/ti/platform/evmc6678l/platform_lib/lib/debug&quot;"/>
64 </option>
65 </tool>
66 <tool id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.762712048" name="XDCtools" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool">
67 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH.1607740639" name="RTSC package repositories (--xdcpath)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.XDC_PATH" valueType="stringList">
68 <listOptionValue builtIn="false" value="&quot;${TI_PDK_C6678_INSTALL_DIR}/packages&quot;"/>
69 </option>
70 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET.731138713" name="RTSC target (-t)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.TARGET" value="ti.targets.elf.C66" valueType="string"/>
71 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM.749184621" name="RTSC platform (-p)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.PLATFORM" value="ti.platforms.evm6678" valueType="string"/>
72 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE.1757534191" name="Build profile (-r)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.BUILD_PROFILE" value="debug" valueType="string"/>
73 <option id="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR.389800643" name="Code generation tool directory (-c)" superClass="com.ti.rtsc.buildDefinitions.XDC_3.16.tool.CODEGEN_TOOL_DIR" value="&quot;${CG_TOOL_ROOT}&quot;" valueType="string"/>
74 </tool>
75 </toolChain>
76 </folderInfo>
77 </configuration>
78 </storageModule>
79 <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
80 <storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
81 <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
82 <storageModule moduleId="scannerConfiguration"/>
83 </cconfiguration>
84 </storageModule>
85 <storageModule moduleId="cdtBuildSystem" version="4.0.0">
86 <project id="pcieboot_helloworld.com.ti.ccstudio.buildDefinitions.C6000.ProjectType.1742876545" name="C6000" projectType="com.ti.ccstudio.buildDefinitions.C6000.ProjectType"/>
87 </storageModule>
88</cproject>
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.project b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.project
new file mode 100644
index 0000000..0200c48
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/.project
@@ -0,0 +1,96 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>pcieboot_helloworld_evmc6678l</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
10 <arguments>
11 <dictionary>
12 <key>?name?</key>
13 <value></value>
14 </dictionary>
15 <dictionary>
16 <key>org.eclipse.cdt.make.core.append_environment</key>
17 <value>true</value>
18 </dictionary>
19 <dictionary>
20 <key>org.eclipse.cdt.make.core.autoBuildTarget</key>
21 <value>all</value>
22 </dictionary>
23 <dictionary>
24 <key>org.eclipse.cdt.make.core.buildArguments</key>
25 <value>-k</value>
26 </dictionary>
27 <dictionary>
28 <key>org.eclipse.cdt.make.core.buildCommand</key>
29 <value>${CCS_INSTALL_ROOT}/utils/gmake/gmake</value>
30 </dictionary>
31 <dictionary>
32 <key>org.eclipse.cdt.make.core.buildLocation</key>
33 <value>${workspace_loc:/pcieboot_helloworld_evmc6678l/Debug}</value>
34 </dictionary>
35 <dictionary>
36 <key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
37 <value>clean</value>
38 </dictionary>
39 <dictionary>
40 <key>org.eclipse.cdt.make.core.contents</key>
41 <value>org.eclipse.cdt.make.core.activeConfigSettings</value>
42 </dictionary>
43 <dictionary>
44 <key>org.eclipse.cdt.make.core.enableAutoBuild</key>
45 <value>true</value>
46 </dictionary>
47 <dictionary>
48 <key>org.eclipse.cdt.make.core.enableCleanBuild</key>
49 <value>true</value>
50 </dictionary>
51 <dictionary>
52 <key>org.eclipse.cdt.make.core.enableFullBuild</key>
53 <value>true</value>
54 </dictionary>
55 <dictionary>
56 <key>org.eclipse.cdt.make.core.fullBuildTarget</key>
57 <value>all</value>
58 </dictionary>
59 <dictionary>
60 <key>org.eclipse.cdt.make.core.stopOnError</key>
61 <value>true</value>
62 </dictionary>
63 <dictionary>
64 <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
65 <value>true</value>
66 </dictionary>
67 </arguments>
68 </buildCommand>
69 <buildCommand>
70 <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
71 <triggers>full,incremental,</triggers>
72 <arguments>
73 </arguments>
74 </buildCommand>
75 </buildSpec>
76 <natures>
77 <nature>org.eclipse.rtsc.xdctools.buildDefinitions.XDC.xdcNature</nature>
78 <nature>com.ti.ccstudio.managedbuild.core.ccsNature</nature>
79 <nature>org.eclipse.cdt.core.cnature</nature>
80 <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
81 <nature>org.eclipse.cdt.core.ccnature</nature>
82 <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
83 </natures>
84 <linkedResources>
85 <link>
86 <name>README.pdf</name>
87 <type>1</type>
88 <location>TI_MCSDK_PCIEBOOT_DIR/docs/README.pdf</location>
89 </link>
90 <link>
91 <name>src</name>
92 <type>2</type>
93 <locationURI>TI_MCSDK_PCIEBOOT_DIR/pcieboot_helloworld/src</locationURI>
94 </link>
95 </linkedResources>
96</projectDescription>
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/header.txt b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/header.txt
new file mode 100644
index 0000000..9786996
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/header.txt
@@ -0,0 +1,33 @@
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
15 * distribution.
16 *
17 * Neither the name of Texas Instruments Incorporated nor the names of
18 * its contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 */
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat
new file mode 100644
index 0000000..9f1e9fb
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat
@@ -0,0 +1,27 @@
1set C6000_CG_DIR="C:\Program Files\Texas Instruments\ccsv5\tools\compiler\c6000"
2set TOOL_DIR="..\..\..\..\..\..\"
3set TARGET=6678
4set ENDIAN=little
5set PATH=%PATH%;%SystemRoot%\system32;%SystemRoot%;
6
7
8@echo off
9
10echo C6000_CG_DIR set as: %C6000_CG_DIR%
11echo TARGET set as: %TARGET%
12echo IBL_ROOT_DIR set as : %IBL_ROOT_DIR%
13
14echo Converting .out to HEX ...
15if %ENDIAN% == little (
16%C6000_CG_DIR%\bin\hex6x -order L helloworld_image.rmd pcieboot_helloworld_evm%TARGET%l.out
17) else (
18%C6000_CG_DIR%\bin\hex6x -order M helloworld_image.rmd pcieboot_helloworld_evm%TARGET%l.out
19)
20
21..\..\..\..\..\..\bttbl2hfile\Bttbl2Hfile pcieboot_helloworld.btbl pcieboot_helloworld.h pcieboot_helloworld.bin
22
23..\..\..\..\..\..\hfile2array\hfile2array pcieboot_helloworld.h pcieBootCode.h bootCode
24
25move pcieBootCode.h ..\..\..\linux_host_loader\
26
27
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/helloworld_image.rmd b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/helloworld_image.rmd
new file mode 100644
index 0000000..a0effff
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/bin/helloworld_image.rmd
@@ -0,0 +1,11 @@
1-a
2-boot
3-e _c_int00
4
5ROMS
6{
7 ROM1: org = 0x80000000, length = 0x200000, memwidth = 32, romwidth = 32
8 files = { pcieboot_helloworld.btbl }
9}
10
11
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/macros.ini b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/macros.ini
new file mode 100644
index 0000000..5f9fb3f
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/macros.ini
@@ -0,0 +1 @@
TI_MCSDK_PCIEBOOT_DIR="../../../../
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/pcieboot_helloworld.cmd b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/pcieboot_helloworld.cmd
new file mode 100644
index 0000000..bf36f80
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/evmc6678l/pcieboot_helloworld.cmd
@@ -0,0 +1,64 @@
1/******************************************************************************
2 * Copyright (c) 2011 Texas Instruments Incorporated - http://www.ti.com
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 *
8 * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 *
11 * Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the
14 * distribution.
15 *
16 * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 *
32 *****************************************************************************/
33/*
34 * Linker command file
35 *
36 */
37
38-c
39-heap 0x2000
40-stack 0x2000
41
42/* Memory Map 1 - the default */
43MEMORY
44{
45 DDR (RWX) : org = 0x80000000, len = 0x20000000
46 LL2 (RWX) : org = 0x00800000, len = 0x00010000
47}
48
49SECTIONS
50{
51 .text > DDR
52 platform_lib > DDR
53 .const > DDR
54 .neardata > LL2
55 .fardata > DDR
56 .switch > DDR
57 .cinit > DDR
58 .stack > LL2
59 .sysmem > LL2
60 .bss > LL2
61 .far > LL2
62 .cio > LL2
63}
64
diff --git a/boot_loader/examples/pcie/pcieboot_helloworld/src/pcieboot_helloworld.c b/boot_loader/examples/pcie/pcieboot_helloworld/src/pcieboot_helloworld.c
new file mode 100644
index 0000000..7a4c026
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_helloworld/src/pcieboot_helloworld.c
@@ -0,0 +1,181 @@
1/******************************************************************************
2* Copyright (c) 2011 Texas Instruments Incorporated - http://www.ti.com
3*
4* Redistribution and use in source and binary forms, with or without
5* modification, are permitted provided that the following conditions
6* are met:
7*
8* Redistributions of source code must retain the above copyright
9* notice, this list of conditions and the following disclaimer.
10*
11* Redistributions in binary form must reproduce the above copyright
12* notice, this list of conditions and the following disclaimer in the
13* documentation and/or other materials provided with the
14* distribution.
15*
16* Neither the name of Texas Instruments Incorporated emac the names of
17* its contributors may be used to endorse or promote products derived
18* from this software without specific prior written permission.
19*
20* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31*
32*****************************************************************************/
33
34/**************************************************************************************
35* FILE PURPOSE: PCIe Boot Hello World Example
36**************************************************************************************
37* FILE NAME: pcieboot_helloworld.c
38*
39* DESCRIPTION: A simple hello world example demonstrating PCIe boot.
40*
41***************************************************************************************/
42#include <stdlib.h>
43#include <stdio.h>
44#include <string.h>
45#include "platform.h"
46
47#define DEVICE_REG32_W(x,y) *(volatile uint32_t *)(x)=(y)
48#define DEVICE_REG32_R(x) (*(volatile uint32_t *)(x))
49
50#define CHIP_LEVEL_REG 0x02620000
51#define KICK0 (CHIP_LEVEL_REG + 0x0038)
52#define KICK1 (CHIP_LEVEL_REG + 0x003C)
53
54/* Magic address RBL is polling */
55#ifdef _EVMC6678L_
56#define MAGIC_ADDR 0x87fffc
57#endif
58
59#ifdef _EVMC6670L_
60#define MAGIC_ADDR 0x8ffffc
61#endif
62
63#define BOOT_MAGIC_ADDR(x) (MAGIC_ADDR + (1<<28) + (x<<24))
64#define IPCGR(x) (0x02620240 + x*4)
65
66#define BOOT_MAGIC_NUMBER 0xBABEFACE
67
68#define BOOT_UART_BAUDRATE 115200
69
70/* pcieboot_helloworld version */
71char version[] = "01.00.00.00";
72
73extern cregister volatile unsigned int DNUM;
74extern far uint32_t _c_int00;
75
76/* OSAL functions for Platform Library */
77uint8_t *Osal_platformMalloc (uint32_t num_bytes, uint32_t alignment)
78{
79 return malloc(num_bytes);
80}
81
82void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
83{
84 /* Free up the memory */
85 if (dataPtr)
86 {
87 free(dataPtr);
88 }
89}
90
91void Osal_platformSpiCsEnter(void)
92{
93 return;
94}
95
96void Osal_platformSpiCsExit (void)
97{
98 return;
99}
100
101/******************************************************************************
102* Function: write_uart
103******************************************************************************/
104void
105write_uart
106(
107 char* msg
108 )
109{
110 uint32_t i;
111 uint32_t msg_len = strlen(msg);
112
113 /* Write the message to the UART */
114 for (i = 0; i < msg_len; i++)
115 {
116 platform_uart_write(msg[i]);
117 }
118}
119
120void
121write_boot_magic_number
122(
123 void
124 )
125{
126 DEVICE_REG32_W(MAGIC_ADDR, BOOT_MAGIC_NUMBER);
127 while(1);
128}
129
130/******************************************************************************
131* Function: main
132******************************************************************************/
133void main ()
134{
135 char version_msg[] = "\r\n\r\nPCIE Boot Hello World Example Version ";
136 char boot_msg[80];
137 platform_info pform_info;
138 uint32_t core;
139
140 if (DNUM == 0)
141 {
142 /* Initialize UART */
143 platform_uart_init();
144 platform_uart_set_baudrate(BOOT_UART_BAUDRATE);
145
146 printf("%s%s\n\n", version_msg, version);
147 write_uart(version_msg);
148 write_uart(version);
149
150 write_uart("\r\n\r\nBooting Hello World image on Core 0 from PCIE ...");
151
152 platform_get_info(&pform_info);
153
154 /* Unlock the chip registers */
155 DEVICE_REG32_W(KICK0, 0x83e70b13);
156 DEVICE_REG32_W(KICK1, 0x95a4f1e0);
157
158 /* Writing the entry address to other cores */
159 for (core = 1; core < pform_info.cpu.core_count; core++)
160 {
161 sprintf(boot_msg, "\r\n\r\nBooting Hello World image on Core %d from Core 0 ...", core);
162 write_uart(boot_msg);
163
164 DEVICE_REG32_W(BOOT_MAGIC_ADDR(core), (uint32_t)&_c_int00);
165
166 /* Delay 1us sec */
167 platform_delay(1);
168 }
169 for (core = 1; core < pform_info.cpu.core_count; core++)
170 {
171 /* IPC interrupt other cores */
172 DEVICE_REG32_W(IPCGR(core), 1);
173 platform_delay(1000);
174 }
175
176 }
177
178 else write_boot_magic_number();
179
180 while(1);
181}
diff --git a/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/header.txt b/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/header.txt
new file mode 100644
index 0000000..9786996
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/header.txt
@@ -0,0 +1,33 @@
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
15 * distribution.
16 *
17 * Neither the name of Texas Instruments Incorporated nor the names of
18 * its contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 */
diff --git a/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/pcieboot_post_elf2HBin.bat b/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/pcieboot_post_elf2HBin.bat
new file mode 100644
index 0000000..3da8ed3
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/pcieboot_post_elf2HBin.bat
@@ -0,0 +1,25 @@
1set C6000_CG_DIR="C:\Program Files\Texas Instruments\ccsv5\tools\compiler\c6000"
2set TOOL_DIR="..\..\..\..\..\..\"
3set TARGET=6678
4set ENDIAN=little
5set PATH=%PATH%;%SystemRoot%\system32;%SystemRoot%;
6
7
8@echo off
9
10echo C6000_CG_DIR set as: %C6000_CG_DIR%
11echo TARGET set as: %TARGET%
12echo IBL_ROOT_DIR set as : %IBL_ROOT_DIR%
13
14copy ..\..\..\..\..\..\post\evmc6678l\bin\post_evm6678l.out
15
16echo Converting .out to HEX ...
17if %ENDIAN% == little (
18%C6000_CG_DIR%\bin\hex6x -order L post_evm6678l.rmd post_evm%TARGET%l.out
19) else (
20%C6000_CG_DIR%\bin\hex6x -order M post_evm6678l.rmd post_evm%TARGET%l.out
21)
22
23..\..\..\..\..\..\bttbl2hfile\Bttbl2Hfile pcieboot_post_evm6678l.btbl pcieboot_post_evm6678l.h pcieboot_post_evm6678l.bin
24..\..\..\..\..\..\hfile2array\hfile2array pcieboot_post_evm6678l.h post6678.h post6678
25move post6678.h ..\..\..\linux_host_loader\
diff --git a/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/post_evm6678l.rmd b/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/post_evm6678l.rmd
new file mode 100644
index 0000000..3e79433
--- /dev/null
+++ b/boot_loader/examples/pcie/pcieboot_post/evmc6678l/bin/post_evm6678l.rmd
@@ -0,0 +1,12 @@
1-a
2-boot
3-e _c_int00
4
5ROMS
6{
7 ROM1: org = 0x00800000, length = 0x80000, memwidth = 32, romwidth = 32
8 files = { pcieboot_post_evm6678l.btbl }
9}
10
11
12 \ No newline at end of file
diff --git a/boot_loader/examples/srio/docs/readme.doc b/boot_loader/examples/srio/docs/readme.doc
index 94f697b..6ef7136 100644
--- a/boot_loader/examples/srio/docs/readme.doc
+++ b/boot_loader/examples/srio/docs/readme.doc
Binary files differ
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.ccsproject b/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.ccsproject
+++ b/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.cproject b/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.cproject
index 381b897..1cf2e71 100644
--- a/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.cproject
+++ b/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/srioboot_ddrinit_evmc6670l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/srioboot_ddrinit_evmc6670l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/header.txt b/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/header.txt
new file mode 100644
index 0000000..9786996
--- /dev/null
+++ b/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/header.txt
@@ -0,0 +1,33 @@
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
15 * distribution.
16 *
17 * Neither the name of Texas Instruments Incorporated nor the names of
18 * its contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 */
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/srioboot_ddrinit_elf2HBin.bat b/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/srioboot_ddrinit_elf2HBin.bat
index 0aadee5..6853db6 100644
--- a/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/srioboot_ddrinit_elf2HBin.bat
+++ b/boot_loader/examples/srio/srioboot_ddrinit/evmc6670l/bin/srioboot_ddrinit_elf2HBin.bat
@@ -20,6 +20,6 @@ if %ENDIAN% == little (
20 20
21..\..\..\..\..\..\hfile2array\hfile2array srioboot_ddrinit.h srioDdrInit.h ddrInitCode 21..\..\..\..\..\..\hfile2array\hfile2array srioboot_ddrinit.h srioDdrInit.h ddrInitCode
22 22
23mv srioDdrInit.h ..\..\..\srioboot_example\src\ 23move srioDdrInit.h ..\..\..\srioboot_example\src\
24 24
25 25
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.ccsproject b/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.ccsproject
+++ b/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.cproject b/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.cproject
index fcadbb9..b974b80 100644
--- a/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.cproject
+++ b/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/srioboot_ddrinit_evmc6678l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/srioboot_ddrinit_evmc6678l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/header.txt b/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/header.txt
new file mode 100644
index 0000000..9786996
--- /dev/null
+++ b/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/header.txt
@@ -0,0 +1,33 @@
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
15 * distribution.
16 *
17 * Neither the name of Texas Instruments Incorporated nor the names of
18 * its contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 */
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/srioboot_ddrinit_elf2HBin.bat b/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/srioboot_ddrinit_elf2HBin.bat
index c02a1be..d4f1ad9 100644
--- a/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/srioboot_ddrinit_elf2HBin.bat
+++ b/boot_loader/examples/srio/srioboot_ddrinit/evmc6678l/bin/srioboot_ddrinit_elf2HBin.bat
@@ -20,6 +20,6 @@ if %ENDIAN% == little (
20 20
21..\..\..\..\..\..\hfile2array\hfile2array srioboot_ddrinit.h srioDdrInit.h ddrInitCode 21..\..\..\..\..\..\hfile2array\hfile2array srioboot_ddrinit.h srioDdrInit.h ddrInitCode
22 22
23mv srioDdrInit.h ..\..\..\srioboot_example\src\ 23move srioDdrInit.h ..\..\..\srioboot_example\src\
24 24
25 25
diff --git a/boot_loader/examples/srio/srioboot_ddrinit/src/srioboot_ddrinit.c b/boot_loader/examples/srio/srioboot_ddrinit/src/srioboot_ddrinit.c
index d30a228..6f73727 100644
--- a/boot_loader/examples/srio/srioboot_ddrinit/src/srioboot_ddrinit.c
+++ b/boot_loader/examples/srio/srioboot_ddrinit/src/srioboot_ddrinit.c
@@ -43,7 +43,6 @@
43#include <stdio.h> 43#include <stdio.h>
44#include <string.h> 44#include <string.h>
45#include "platform.h" 45#include "platform.h"
46#include "ti/csl/csl_semAux.h"
47 46
48#define DEVICE_REG32_W(x,y) *(volatile uint32_t *)(x)=(y) 47#define DEVICE_REG32_W(x,y) *(volatile uint32_t *)(x)=(y)
49#define DEVICE_REG32_R(x) (*(volatile uint32_t *)(x)) 48#define DEVICE_REG32_R(x) (*(volatile uint32_t *)(x))
@@ -75,23 +74,11 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
75 74
76void Osal_platformSpiCsEnter(void) 75void Osal_platformSpiCsEnter(void)
77{ 76{
78 /* Get the hardware semaphore.
79 *
80 * Acquire Multi core CPPI synchronization lock
81 */
82 while ((CSL_semAcquireDirect (3)) == 0);
83
84 return; 77 return;
85} 78}
86 79
87void Osal_platformSpiCsExit (void) 80void Osal_platformSpiCsExit (void)
88{ 81{
89 /* Release the hardware semaphore
90 *
91 * Release multi-core lock.
92 */
93 CSL_semReleaseSemaphore (3);
94
95 return; 82 return;
96} 83}
97 84
diff --git a/boot_loader/examples/srio/srioboot_example/evmc6670l/.ccsproject b/boot_loader/examples/srio/srioboot_example/evmc6670l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/srio/srioboot_example/evmc6670l/.ccsproject
+++ b/boot_loader/examples/srio/srioboot_example/evmc6670l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/srio/srioboot_example/evmc6670l/.cproject b/boot_loader/examples/srio/srioboot_example/evmc6670l/.cproject
index 6731bbf..8ba0320 100644
--- a/boot_loader/examples/srio/srioboot_example/evmc6670l/.cproject
+++ b/boot_loader/examples/srio/srioboot_example/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/srioboot_example/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/srioboot_example/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/srio/srioboot_example/evmc6678l/.ccsproject b/boot_loader/examples/srio/srioboot_example/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/srio/srioboot_example/evmc6678l/.ccsproject
+++ b/boot_loader/examples/srio/srioboot_example/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/srio/srioboot_example/evmc6678l/.cproject b/boot_loader/examples/srio/srioboot_example/evmc6678l/.cproject
index 7327fed..aaa5f0f 100644
--- a/boot_loader/examples/srio/srioboot_example/evmc6678l/.cproject
+++ b/boot_loader/examples/srio/srioboot_example/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/srioboot_example/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/srioboot_example/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/srio/srioboot_example/src/srioBootExample.c b/boot_loader/examples/srio/srioboot_example/src/srioBootExample.c
index e2dcdc3..14b54bc 100644
--- a/boot_loader/examples/srio/srioboot_example/src/srioBootExample.c
+++ b/boot_loader/examples/srio/srioboot_example/src/srioBootExample.c
@@ -36,7 +36,6 @@
36#include "platform.h" 36#include "platform.h"
37#include "srioDdrInit.h" 37#include "srioDdrInit.h"
38#include "srioBootCode.h" 38#include "srioBootCode.h"
39#include "ti/csl/csl_semAux.h"
40 39
41#define DEVICE_REG32_W(x,y) *(volatile uint32_t *)(x)=(y) 40#define DEVICE_REG32_W(x,y) *(volatile uint32_t *)(x)=(y)
42#define DEVICE_REG32_R(x) (*(volatile uint32_t *)(x)) 41#define DEVICE_REG32_R(x) (*(volatile uint32_t *)(x))
@@ -92,6 +91,16 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
92 } 91 }
93} 92}
94 93
94void Osal_platformSpiCsEnter(void)
95{
96 return;
97}
98
99void Osal_platformSpiCsExit (void)
100{
101 return;
102}
103
95/* Convert bytes to 32 bits */ 104/* Convert bytes to 32 bits */
96uint32_t byteto32bits(uint8_t *pDspCode) 105uint32_t byteto32bits(uint8_t *pDspCode)
97{ 106{
@@ -106,29 +115,6 @@ uint32_t byteto32bits(uint8_t *pDspCode)
106 return(temp); 115 return(temp);
107} 116}
108 117
109void Osal_platformSpiCsEnter(void)
110{
111 /* Get the hardware semaphore.
112 *
113 * Acquire Multi core CPPI synchronization lock
114 */
115 while ((CSL_semAcquireDirect (3)) == 0);
116
117 return;
118}
119
120void Osal_platformSpiCsExit (void)
121{
122 /* Release the hardware semaphore
123 *
124 * Release multi-core lock.
125 */
126 CSL_semReleaseSemaphore (3);
127
128 return;
129}
130
131
132/* Convert to big endian, if the .out to be booted is big endian, this is not required */ 118/* Convert to big endian, if the .out to be booted is big endian, this is not required */
133void 119void
134Convert2BigEndian 120Convert2BigEndian
@@ -466,7 +452,7 @@ void main (void)
466 { 452 {
467 printf("Transfer DDR init code via SRIO successfully\n"); 453 printf("Transfer DDR init code via SRIO successfully\n");
468 454
469 platform_delay(100000); 455 platform_delay(1000000);
470 456
471 /* Push the boot image code to remote DSP DDR and boot core 0 to run Hello World */ 457 /* Push the boot image code to remote DSP DDR and boot core 0 to run Hello World */
472 if(pushData2Srio(bootCode, rio_id)==0) 458 if(pushData2Srio(bootCode, rio_id)==0)
diff --git a/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.ccsproject b/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.ccsproject
+++ b/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.cproject b/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.cproject
index b20e902..ed795f4 100644
--- a/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.cproject
+++ b/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/srioboot_helloworld_evmc6670l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/srioboot_helloworld_evmc6670l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/header.txt b/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/header.txt
new file mode 100644
index 0000000..9786996
--- /dev/null
+++ b/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/header.txt
@@ -0,0 +1,33 @@
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
15 * distribution.
16 *
17 * Neither the name of Texas Instruments Incorporated nor the names of
18 * its contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 */
diff --git a/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/helloworld_elf2HBin.bat b/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/helloworld_elf2HBin.bat
index 376009e..a88fdf2 100644
--- a/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/helloworld_elf2HBin.bat
+++ b/boot_loader/examples/srio/srioboot_helloworld/evmc6670l/bin/helloworld_elf2HBin.bat
@@ -22,6 +22,6 @@ if %ENDIAN% == little (
22 22
23..\..\..\..\..\..\hfile2array\hfile2array srioboot_helloworld.h srioBootCode.h bootCode 23..\..\..\..\..\..\hfile2array\hfile2array srioboot_helloworld.h srioBootCode.h bootCode
24 24
25mv srioBootCode.h ..\..\..\srioboot_example\src\ 25move srioBootCode.h ..\..\..\srioboot_example\src\
26 26
27 27
diff --git a/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.ccsproject b/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.ccsproject
+++ b/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.cproject b/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.cproject
index e35d616..af400fc 100644
--- a/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.cproject
+++ b/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1861349532" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.391813781" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/srioboot_helloworld_evmc6678l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/srioboot_helloworld_evmc6678l/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1522158538" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.882037436" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/header.txt b/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/header.txt
new file mode 100644
index 0000000..9786996
--- /dev/null
+++ b/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/header.txt
@@ -0,0 +1,33 @@
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
15 * distribution.
16 *
17 * Neither the name of Texas Instruments Incorporated nor the names of
18 * its contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 */
diff --git a/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat b/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat
index 4cf45c9..bedbcc2 100644
--- a/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat
+++ b/boot_loader/examples/srio/srioboot_helloworld/evmc6678l/bin/helloworld_elf2HBin.bat
@@ -22,6 +22,6 @@ if %ENDIAN% == little (
22 22
23..\..\..\..\..\..\hfile2array\hfile2array srioboot_helloworld.h srioBootCode.h bootCode 23..\..\..\..\..\..\hfile2array\hfile2array srioboot_helloworld.h srioBootCode.h bootCode
24 24
25mv srioBootCode.h ..\..\..\srioboot_example\src\ 25move srioBootCode.h ..\..\..\srioboot_example\src\
26 26
27 27
diff --git a/boot_loader/examples/srio/srioboot_helloworld/src/srioboot_helloworld.c b/boot_loader/examples/srio/srioboot_helloworld/src/srioboot_helloworld.c
index d757e3d..0eedb41 100644
--- a/boot_loader/examples/srio/srioboot_helloworld/src/srioboot_helloworld.c
+++ b/boot_loader/examples/srio/srioboot_helloworld/src/srioboot_helloworld.c
@@ -43,7 +43,6 @@
43#include <stdio.h> 43#include <stdio.h>
44#include <string.h> 44#include <string.h>
45#include "platform.h" 45#include "platform.h"
46#include "ti/csl/csl_semAux.h"
47 46
48#define DEVICE_REG32_W(x,y) *(volatile uint32_t *)(x)=(y) 47#define DEVICE_REG32_W(x,y) *(volatile uint32_t *)(x)=(y)
49#define DEVICE_REG32_R(x) (*(volatile uint32_t *)(x)) 48#define DEVICE_REG32_R(x) (*(volatile uint32_t *)(x))
@@ -88,23 +87,11 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
88 87
89void Osal_platformSpiCsEnter(void) 88void Osal_platformSpiCsEnter(void)
90{ 89{
91 /* Get the hardware semaphore.
92 *
93 * Acquire Multi core CPPI synchronization lock
94 */
95 while ((CSL_semAcquireDirect (3)) == 0);
96
97 return; 90 return;
98} 91}
99 92
100void Osal_platformSpiCsExit (void) 93void Osal_platformSpiCsExit (void)
101{ 94{
102 /* Release the hardware semaphore
103 *
104 * Release multi-core lock.
105 */
106 CSL_semReleaseSemaphore (3);
107
108 return; 95 return;
109} 96}
110 97
diff --git a/boot_loader/tools_install.bat b/boot_loader/tools_install.bat
index 2c75c39..1ce44de 100644
--- a/boot_loader/tools_install.bat
+++ b/boot_loader/tools_install.bat
@@ -1,4 +1,5 @@
1rm -f examples\srio\docs\readme.doc 1rm -f examples\srio\docs\readme.doc
2rm -f examples\pcie\docs\readme.doc
2 3
3rm -f -r ..\factory_images 4rm -f -r ..\factory_images
4 5
diff --git a/hfile2array/header.txt b/hfile2array/header.txt
new file mode 100644
index 0000000..9786996
--- /dev/null
+++ b/hfile2array/header.txt
@@ -0,0 +1,33 @@
1/*
2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
15 * distribution.
16 *
17 * Neither the name of Texas Instruments Incorporated nor the names of
18 * its contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 *
33 */
diff --git a/hfile2array/hfile2array.c b/hfile2array/hfile2array.c
index 19e658d..a6d7a5b 100644
--- a/hfile2array/hfile2array.c
+++ b/hfile2array/hfile2array.c
@@ -43,8 +43,9 @@
43 43
44int main(int argc, char **argv) 44int main(int argc, char **argv)
45{ 45{
46 FILE *out, *in; 46 FILE *out, *in, *in_hdr;
47 char line[200] = "uint8_t "; 47 char line[200] = "uint8_t ";
48 char line_hdr[200];
48 49
49 if (argc != 4) 50 if (argc != 4)
50 { 51 {
@@ -68,12 +69,38 @@ int main(int argc, char **argv)
68 printf ("Can not open %s\n", *argv[1]); 69 printf ("Can not open %s\n", *argv[1]);
69 return (-1); 70 return (-1);
70 } 71 }
72
73 in_hdr = fopen("header.txt", "rt");
74
75 if (in_hdr == NULL)
76 {
77 printf ("Can not open header.tx\n");
78 return (-1);
79 }
80
81 while (1)
82 {
83 if (fgets(line_hdr, 200, in_hdr) != NULL)
84 {
85 if (fputs(line_hdr, out) != 0)
86 {
87 printf ("fputs %s error\n", line_hdr);
88 goto error;
89 }
90 }
91 else
92 {
93 /* EOF reached */
94 break;
95 }
96 }
97
71 strcat (line, (const char *)(*argv++)); 98 strcat (line, (const char *)(*argv++));
72 strcat (line, "[] = {\n"); 99 strcat (line, "[] = {\n");
73 100
74 if (fputs(line, out) != 0) 101 if (fputs(line, out) != 0)
75 { 102 {
76 printf ("fputs %s error\n", fputs); 103 printf ("fputs %s error\n", line);
77 goto error; 104 goto error;
78 } 105 }
79 106
@@ -101,12 +128,14 @@ int main(int argc, char **argv)
101 } 128 }
102 129
103 fclose(in); 130 fclose(in);
131 fclose(in_hdr);
104 fclose(out); 132 fclose(out);
105 133
106 return 0; 134 return 0;
107 135
108error: 136error:
109 fclose(in); 137 fclose(in);
138 fclose(in_hdr);
110 fclose(out); 139 fclose(out);
111 140
112 return (-1); 141 return (-1);
diff --git a/hfile2array/hfile2array.exe b/hfile2array/hfile2array.exe
index ad01e50..ae50530 100644
--- a/hfile2array/hfile2array.exe
+++ b/hfile2array/hfile2array.exe
Binary files differ
diff --git a/post/evmc6670l/.ccsproject b/post/evmc6670l/.ccsproject
index 79d3116..5cecea3 100644
--- a/post/evmc6670l/.ccsproject
+++ b/post/evmc6670l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/post/evmc6670l/.cproject b/post/evmc6670l/.cproject
index 7838f2c..ecb1e58 100644
--- a/post/evmc6670l/.cproject
+++ b/post/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/post/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/post/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/post/evmc6678l/.ccsproject b/post/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/post/evmc6678l/.ccsproject
+++ b/post/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/post/evmc6678l/.cproject b/post/evmc6678l/.cproject
index 230ca6d..d9b6dae 100644
--- a/post/evmc6678l/.cproject
+++ b/post/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/post/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/post/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/writer/eeprom/docs/README.txt b/writer/eeprom/docs/README.txt
index 7be3cfa..9da0cb9 100644
--- a/writer/eeprom/docs/README.txt
+++ b/writer/eeprom/docs/README.txt
@@ -49,19 +49,19 @@ Steps to re-build eepromwriter:
49 Before starting the build following environment setup has to be done 49 Before starting the build following environment setup has to be done
50 1) variable C_DIR should be set to the top directory of the Code Generation tools e.g. 50 1) variable C_DIR should be set to the top directory of the Code Generation tools e.g.
51 Linux bash shell: 51 Linux bash shell:
52 export C_DIR=/opt/TI/TI_CGT_C6000_7.2.0A10232/ 52 export C_DIR=/opt/TI/TI_CGT_C6000_7.2.1/
53 MSYS bash shell: 53 MSYS bash shell:
54 export C_DIR='"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000"' 54 export C_DIR='"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000"'
55 2) Code Generation tool binaries should be in the path e.g. 55 2) Code Generation tool binaries should be in the path e.g.
56 Linux bash shell: 56 Linux bash shell:
57 export PATH=/opt/TI/TI_CGT_C6000_7.2.0A10232/bin:$PATH 57 export PATH=/opt/TI/TI_CGT_C6000_7.2.1/bin:$PATH
58 MSYS bash shell: 58 MSYS bash shell:
59 export PATH=$PATH:/c/Program\ Files/Texas\ Instruments/ccsv5/tools/compiler/c6000/bin/ 59 export PATH=$PATH:/c/Program\ Files/Texas\ Instruments/ccsv5/tools/compiler/c6000/bin/
60 3) variable PFORM_LIB_DIR should be set the directory of the Platform Library root, e.g. 60 3) variable PFORM_LIB_DIR should be set the directory of the Platform Library root, e.g.
61 Linux bash shell: 61 Linux bash shell:
62 export PFORM_LIB_DIR=pdk_C66xx_1_0_0_10-rc1/packages/ti/platform 62 export PFORM_LIB_DIR=pdk_C66xx_1_0_0_10/packages/ti/platform
63 MSYS bash shell: 63 MSYS bash shell:
64 export PFORM_LIB_DIR='"C:/Program Files/Texas Instruments/pdk_C66xx_1_0_0_10-rc1/packages/ti/platform"' 64 export PFORM_LIB_DIR='"C:/Program Files/Texas Instruments/pdk_C66xx_1_0_0_10/packages/ti/platform"'
65 65
66 The makefile for building the eepromwriter is in the directory "tools/writer/eeprom/evmc66xxl" 66 The makefile for building the eepromwriter is in the directory "tools/writer/eeprom/evmc66xxl"
67 Following are the steps to build eepromwriter, e.g.: 67 Following are the steps to build eepromwriter, e.g.:
diff --git a/writer/eeprom/evmc6670l/.ccsproject b/writer/eeprom/evmc6670l/.ccsproject
index 79d3116..5cecea3 100644
--- a/writer/eeprom/evmc6670l/.ccsproject
+++ b/writer/eeprom/evmc6670l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/writer/eeprom/evmc6670l/.cproject b/writer/eeprom/evmc6670l/.cproject
index 31dd350..07c28fd 100644
--- a/writer/eeprom/evmc6670l/.cproject
+++ b/writer/eeprom/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/eepromwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/eepromwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/writer/eeprom/evmc6678l/.ccsproject b/writer/eeprom/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/writer/eeprom/evmc6678l/.ccsproject
+++ b/writer/eeprom/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/writer/eeprom/evmc6678l/.cproject b/writer/eeprom/evmc6678l/.cproject
index 9bdb388..097a4c2 100644
--- a/writer/eeprom/evmc6678l/.cproject
+++ b/writer/eeprom/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/eepromwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/eepromwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/writer/eeprom/include/types.h b/writer/eeprom/include/types.h
index 3fcbcb0..6fc6648 100644
--- a/writer/eeprom/include/types.h
+++ b/writer/eeprom/include/types.h
@@ -38,6 +38,8 @@
38#ifndef _TYPES_H 38#ifndef _TYPES_H
39#define _TYPES_H 39#define _TYPES_H
40 40
41typedef uint32_t Bool;
42
41#define FALSE 0 43#define FALSE 0
42#define TRUE 1 44#define TRUE 1
43 45
diff --git a/writer/eeprom/src/eepromwriter.c b/writer/eeprom/src/eepromwriter.c
index a1df7a8..932340b 100644
--- a/writer/eeprom/src/eepromwriter.c
+++ b/writer/eeprom/src/eepromwriter.c
@@ -46,7 +46,6 @@
46#include <string.h> 46#include <string.h>
47#include "platform.h" 47#include "platform.h"
48#include "types.h" 48#include "types.h"
49#include "ti/csl/csl_semAux.h"
50 49
51/* EEPROM writer utility version */ 50/* EEPROM writer utility version */
52char version[] = "01.00.00.03"; 51char version[] = "01.00.00.03";
@@ -102,23 +101,11 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
102 101
103void Osal_platformSpiCsEnter(void) 102void Osal_platformSpiCsEnter(void)
104{ 103{
105 /* Get the hardware semaphore.
106 *
107 * Acquire Multi core CPPI synchronization lock
108 */
109 while ((CSL_semAcquireDirect (3)) == 0);
110
111 return; 104 return;
112} 105}
113 106
114void Osal_platformSpiCsExit (void) 107void Osal_platformSpiCsExit (void)
115{ 108{
116 /* Release the hardware semaphore
117 *
118 * Release multi-core lock.
119 */
120 CSL_semReleaseSemaphore (3);
121
122 return; 109 return;
123} 110}
124 111
diff --git a/writer/nand/docs/README.txt b/writer/nand/docs/README.txt
index c0bae64..63f6b0d 100644
--- a/writer/nand/docs/README.txt
+++ b/writer/nand/docs/README.txt
@@ -47,19 +47,19 @@ Steps to re-build nandwriter:
47 Before starting the build following environment setup has to be done 47 Before starting the build following environment setup has to be done
48 1) variable C_DIR should be set to the top directory of the Code Generation tools e.g. 48 1) variable C_DIR should be set to the top directory of the Code Generation tools e.g.
49 Linux bash shell: 49 Linux bash shell:
50 export C_DIR=/opt/TI/TI_CGT_C6000_7.2.0A10232/ 50 export C_DIR=/opt/TI/TI_CGT_C6000_7.2.1/
51 MSYS bash shell: 51 MSYS bash shell:
52 export C_DIR='"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000"' 52 export C_DIR='"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000"'
53 2) Code Generation tool binaries should be in the path e.g. 53 2) Code Generation tool binaries should be in the path e.g.
54 Linux bash shell: 54 Linux bash shell:
55 export PATH=/opt/TI/TI_CGT_C6000_7.2.0A10232/bin:$PATH 55 export PATH=/opt/TI/TI_CGT_C6000_7.2.1/bin:$PATH
56 MSYS bash shell: 56 MSYS bash shell:
57 export PATH=$PATH:/c/Program\ Files/Texas\ Instruments/ccsv5/tools/compiler/c6000/bin/ 57 export PATH=$PATH:/c/Program\ Files/Texas\ Instruments/ccsv5/tools/compiler/c6000/bin/
58 3) variable PFORM_LIB_DIR should be set the directory of the Platform Library root, e.g. 58 3) variable PFORM_LIB_DIR should be set the directory of the Platform Library root, e.g.
59 Linux bash shell: 59 Linux bash shell:
60 export PFORM_LIB_DIR=pdk_C66xx_1_0_0_10-rc1/packages/ti/platform 60 export PFORM_LIB_DIR=pdk_C66xx_1_0_0_10/packages/ti/platform
61 MSYS bash shell: 61 MSYS bash shell:
62 export PFORM_LIB_DIR='"C:/Program Files/Texas Instruments/pdk_C66xx_1_0_0_10-rc1/packages/ti/platform"' 62 export PFORM_LIB_DIR='"C:/Program Files/Texas Instruments/pdk_C66xx_1_0_0_10/packages/ti/platform"'
63 63
64 The makefile for building the nandwriter is in the directory "tools/writer/nand/evmc66xxl" 64 The makefile for building the nandwriter is in the directory "tools/writer/nand/evmc66xxl"
65 Following are the steps to build nandwriter, e.g.: 65 Following are the steps to build nandwriter, e.g.:
diff --git a/writer/nand/evmc6670l/.cproject b/writer/nand/evmc6670l/.cproject
index fedc64a..1b22dfe 100644
--- a/writer/nand/evmc6670l/.cproject
+++ b/writer/nand/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/nandwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/nandwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/writer/nand/evmc6678l/.ccsproject b/writer/nand/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/writer/nand/evmc6678l/.ccsproject
+++ b/writer/nand/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/writer/nand/evmc6678l/.cproject b/writer/nand/evmc6678l/.cproject
index 951446e..bae37be 100644
--- a/writer/nand/evmc6678l/.cproject
+++ b/writer/nand/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/nandwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/nandwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/writer/nand/include/types.h b/writer/nand/include/types.h
index 3fcbcb0..6fc6648 100644
--- a/writer/nand/include/types.h
+++ b/writer/nand/include/types.h
@@ -38,6 +38,8 @@
38#ifndef _TYPES_H 38#ifndef _TYPES_H
39#define _TYPES_H 39#define _TYPES_H
40 40
41typedef uint32_t Bool;
42
41#define FALSE 0 43#define FALSE 0
42#define TRUE 1 44#define TRUE 1
43 45
diff --git a/writer/nand/src/nandwriter.c b/writer/nand/src/nandwriter.c
index bb7e738..1bd3bed 100644
--- a/writer/nand/src/nandwriter.c
+++ b/writer/nand/src/nandwriter.c
@@ -45,7 +45,6 @@
45#include <string.h> 45#include <string.h>
46#include "platform.h" 46#include "platform.h"
47#include "types.h" 47#include "types.h"
48#include "ti/csl/csl_semAux.h"
49 48
50/* NAND writer utility version */ 49/* NAND writer utility version */
51char version[] = "01.00.00.03"; 50char version[] = "01.00.00.03";
@@ -103,23 +102,11 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
103 102
104void Osal_platformSpiCsEnter(void) 103void Osal_platformSpiCsEnter(void)
105{ 104{
106 /* Get the hardware semaphore.
107 *
108 * Acquire Multi core CPPI synchronization lock
109 */
110 while ((CSL_semAcquireDirect (3)) == 0);
111
112 return; 105 return;
113} 106}
114 107
115void Osal_platformSpiCsExit (void) 108void Osal_platformSpiCsExit (void)
116{ 109{
117 /* Release the hardware semaphore
118 *
119 * Release multi-core lock.
120 */
121 CSL_semReleaseSemaphore (3);
122
123 return; 110 return;
124} 111}
125 112
diff --git a/writer/nor/docs/README.txt b/writer/nor/docs/README.txt
index e2c534a..6137dad 100644
--- a/writer/nor/docs/README.txt
+++ b/writer/nor/docs/README.txt
@@ -48,19 +48,19 @@ Steps to re-build norwriter:
48 Before starting the build following environment setup has to be done 48 Before starting the build following environment setup has to be done
49 1) variable C_DIR should be set to the top directory of the Code Generation tools e.g. 49 1) variable C_DIR should be set to the top directory of the Code Generation tools e.g.
50 Linux bash shell: 50 Linux bash shell:
51 export C_DIR=/opt/TI/TI_CGT_C6000_7.2.0A10232/ 51 export C_DIR=/opt/TI/TI_CGT_C6000_7.2.1/
52 MSYS bash shell: 52 MSYS bash shell:
53 export C_DIR='"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000"' 53 export C_DIR='"C:/Program Files/Texas Instruments/ccsv5/tools/compiler/c6000"'
54 2) Code Generation tool binaries should be in the path e.g. 54 2) Code Generation tool binaries should be in the path e.g.
55 Linux bash shell: 55 Linux bash shell:
56 export PATH=/opt/TI/TI_CGT_C6000_7.2.0A10232/bin:$PATH 56 export PATH=/opt/TI/TI_CGT_C6000_7.2.1/bin:$PATH
57 MSYS bash shell: 57 MSYS bash shell:
58 export PATH=$PATH:/c/Program\ Files/Texas\ Instruments/ccsv5/tools/compiler/c6000/bin/ 58 export PATH=$PATH:/c/Program\ Files/Texas\ Instruments/ccsv5/tools/compiler/c6000/bin/
59 3) variable PFORM_LIB_DIR should be set the directory of the Platform Library root, e.g. 59 3) variable PFORM_LIB_DIR should be set the directory of the Platform Library root, e.g.
60 Linux bash shell: 60 Linux bash shell:
61 export PFORM_LIB_DIR=pdk_C66xx_1_0_0_10-rc1/packages/ti/platform 61 export PFORM_LIB_DIR=pdk_C66xx_1_0_0_10/packages/ti/platform
62 MSYS bash shell: 62 MSYS bash shell:
63 export PFORM_LIB_DIR='"C:/Program Files/Texas Instruments/pdk_C66xx_1_0_0_10-rc1/packages/ti/platform"' 63 export PFORM_LIB_DIR='"C:/Program Files/Texas Instruments/pdk_C66xx_1_0_0_10/packages/ti/platform"'
64 64
65 The makefile for building the norwriter is in the directory "tools/writer/nor/evmc66xxl" 65 The makefile for building the norwriter is in the directory "tools/writer/nor/evmc66xxl"
66 Following are the steps to build norwriter, e.g.: 66 Following are the steps to build norwriter, e.g.:
diff --git a/writer/nor/evmc6670l/.cproject b/writer/nor/evmc6670l/.cproject
index 60c2a77..ba440bd 100644
--- a/writer/nor/evmc6670l/.cproject
+++ b/writer/nor/evmc6670l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6670:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/norwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/norwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/writer/nor/evmc6678l/.ccsproject b/writer/nor/evmc6678l/.ccsproject
index 79d3116..5cecea3 100644
--- a/writer/nor/evmc6678l/.ccsproject
+++ b/writer/nor/evmc6678l/.ccsproject
@@ -4,7 +4,7 @@
4<projectOptions> 4<projectOptions>
5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/> 5<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.CustomC6000Device"/>
6<deviceEndianness value="little"/> 6<deviceEndianness value="little"/>
7<codegenToolVersion value="7.2.0"/> 7<codegenToolVersion value="7.2.1"/>
8<isElfFormat value="true"/> 8<isElfFormat value="true"/>
9<rts value="rts6600_elf.lib"/> 9<rts value="rts6600_elf.lib"/>
10</projectOptions> 10</projectOptions>
diff --git a/writer/nor/evmc6678l/.cproject b/writer/nor/evmc6678l/.cproject
index 921842a..a8e48a8 100644
--- a/writer/nor/evmc6678l/.cproject
+++ b/writer/nor/evmc6678l/.cproject
@@ -26,10 +26,10 @@
26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/> 26 <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.0.1"/>
27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/> 27 <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rts6600_elf.lib"/>
28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/> 28 <listOptionValue builtIn="false" value="XDC_VERSION=3.20.08.88"/>
29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.10;"/> 29 <listOptionValue builtIn="false" value="RTSC_PRODUCTS=com.ti.biosmcsdk.pdk.C6678L:1.0.0.11;"/>
30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/> 30 <listOptionValue builtIn="false" value="OUTPUT_TYPE=rtscApplication:executable"/>
31 </option> 31 </option>
32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.0" valueType="string"/> 32 <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1263633169" name="Code Generation tools version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.2.1" valueType="string"/>
33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/> 33 <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug.30003368" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.targetPlatformDebug"/>
34 <builder buildPath="${workspace_loc:/norwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/> 34 <builder buildPath="${workspace_loc:/norwriter/Debug}" id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug.1571910857" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.builderDebug"/>
35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug"> 35 <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug.1787566966" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.2.exe.compilerDebug">
diff --git a/writer/nor/include/types.h b/writer/nor/include/types.h
index 3fcbcb0..6fc6648 100644
--- a/writer/nor/include/types.h
+++ b/writer/nor/include/types.h
@@ -38,6 +38,8 @@
38#ifndef _TYPES_H 38#ifndef _TYPES_H
39#define _TYPES_H 39#define _TYPES_H
40 40
41typedef uint32_t Bool;
42
41#define FALSE 0 43#define FALSE 0
42#define TRUE 1 44#define TRUE 1
43 45
diff --git a/writer/nor/src/norwriter.c b/writer/nor/src/norwriter.c
index c8847ee..485453f 100644
--- a/writer/nor/src/norwriter.c
+++ b/writer/nor/src/norwriter.c
@@ -45,7 +45,6 @@
45#include <string.h> 45#include <string.h>
46#include "platform.h" 46#include "platform.h"
47#include "types.h" 47#include "types.h"
48#include "ti/csl/csl_semAux.h"
49 48
50/* NOR writer utility version */ 49/* NOR writer utility version */
51char version[] = "01.00.00.02"; 50char version[] = "01.00.00.02";
@@ -100,23 +99,11 @@ void Osal_platformFree (uint8_t *dataPtr, uint32_t num_bytes)
100 99
101void Osal_platformSpiCsEnter(void) 100void Osal_platformSpiCsEnter(void)
102{ 101{
103 /* Get the hardware semaphore.
104 *
105 * Acquire Multi core CPPI synchronization lock
106 */
107 while ((CSL_semAcquireDirect (3)) == 0);
108
109 return; 102 return;
110} 103}
111 104
112void Osal_platformSpiCsExit (void) 105void Osal_platformSpiCsExit (void)
113{ 106{
114 /* Release the hardware semaphore
115 *
116 * Release multi-core lock.
117 */
118 CSL_semReleaseSemaphore (3);
119
120 return; 107 return;
121} 108}
122 109