Removed otp_writer. Delivered as part of mcsdk-security repo
authorJustin Sobota <jsobota@ti.com>
Mon, 1 Jun 2015 17:36:19 +0000 (13:36 -0400)
committerJustin Sobota <jsobota@ti.com>
Mon, 1 Jun 2015 17:36:19 +0000 (13:36 -0400)
otp_writer/.ccsproject [deleted file]
otp_writer/.cproject [deleted file]
otp_writer/.project [deleted file]
otp_writer/include/otp_pvt.h [deleted file]
otp_writer/link.cmd [deleted file]
otp_writer/main.c [deleted file]
otp_writer/otp.c [deleted file]
otp_writer/otp.h [deleted file]

diff --git a/otp_writer/.ccsproject b/otp_writer/.ccsproject
deleted file mode 100644 (file)
index beca121..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?ccsproject version="1.0"?>
-
-<projectOptions>
-<deviceVariant value="com.ti.ccstudio.deviceModel.C6000.GenericC62xxDevice"/>
-<deviceEndianness value="little"/>
-<codegenToolVersion value="7.3.1"/>
-<isElfFormat value="false"/>
-<connection value=""/>
-<rts value="libc.a"/>
-<templateProperties value="id=com.ti.common.project.core.emptyProjectTemplate,"/>
-</projectOptions>
diff --git a/otp_writer/.cproject b/otp_writer/.cproject
deleted file mode 100644 (file)
index 0fa48c2..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?fileVersion 4.0.0?>
-
-<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
-       <storageModule configRelations="2" moduleId="org.eclipse.cdt.core.settings">
-               <cconfiguration id="com.ti.ccstudio.buildDefinitions.C6000.Debug.68754957">
-                       <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.C6000.Debug.68754957" moduleId="org.eclipse.cdt.core.settings" name="Debug">
-                               <externalSettings/>
-                               <extensions>
-                                       <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/>
-                                       <extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-                                       <extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-                                       <extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-                               </extensions>
-                       </storageModule>
-                       <storageModule moduleId="cdtBuildSystem" version="4.0.0">
-                               <configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" id="com.ti.ccstudio.buildDefinitions.C6000.Debug.68754957" name="Debug" parent="com.ti.ccstudio.buildDefinitions.C6000.Debug">
-                                       <folderInfo id="com.ti.ccstudio.buildDefinitions.C6000.Debug.68754957." name="/" resourcePath="">
-                                               <toolChain id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.DebugToolchain.1330604072" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.linkerDebug.1021713172">
-                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.182878084" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
-                                                               <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=com.ti.ccstudio.deviceModel.C6000.GenericC66xxDevice"/>
-                                                               <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
-                                                               <listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
-                                                               <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.1.0.01"/>
-                                                               <listOptionValue builtIn="false" value="LINKER_COMMAND_FILE=lnk.cmd"/>
-                                                               <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
-                                                               <listOptionValue builtIn="false" value="OUTPUT_TYPE=executable"/>
-                                                       </option>
-                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.178390750" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.3.1" valueType="string"/>
-                                                       <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.targetPlatformDebug.1234041750" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.targetPlatformDebug"/>
-                                                       <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.builderDebug.1852888120" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.builderDebug"/>
-                                                       <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.compilerDebug.982799291" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.compilerDebug">
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.SILICON_VERSION.227968619" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.SILICON_VERSION" value="6600" valueType="string"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DEBUGGING_MODEL.1657573367" name="Debugging model" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.INCLUDE_PATH.1190490087" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.INCLUDE_PATH" valueType="includePath">
-                                                                       <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>
-                                                                       <listOptionValue builtIn="false" value="&quot;C:\ti\pdk_tci6614_1_00_00_08\packages&quot;"/>
-                                                                       <listOptionValue builtIn="false" value="&quot;C:\ti\sc_mcsdk_bios_2_00_00_08\tools\otp_writer&quot;"/>
-                                                               </option>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DISPLAY_ERROR_NUMBER.1524997492" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DIAG_WARNING.1927565943" name="Treat diagnostic &lt;id&gt; as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DIAG_WARNING" valueType="stringList">
-                                                                       <listOptionValue builtIn="false" value="225"/>
-                                                               </option>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.ABI.2117530082" name="Application binary interface (coffabi, eabi) (--abi)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.ABI.eabi" valueType="enumerated"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.BIG_ENDIAN.367066059" name="Generate big endian code (--big_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.BIG_ENDIAN" value="false" valueType="boolean"/>
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__C_SRCS.194844736" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__C_SRCS"/>
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__CPP_SRCS.627889908" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__CPP_SRCS"/>
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__ASM_SRCS.1081521522" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__ASM_SRCS"/>
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__ASM2_SRCS.812325148" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__ASM2_SRCS"/>
-                                                       </tool>
-                                                       <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.linkerDebug.1021713172" name="C6000 Linker" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.linkerDebug">
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.OUTPUT_FILE.248447126" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.OUTPUT_FILE" value="&quot;${ProjName}.out&quot;" valueType="string"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.MAP_FILE.2025825296" name="Input and output sections listed into &lt;file&gt; (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.MAP_FILE" value="&quot;${ProjName}.map&quot;" valueType="string"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.SEARCH_PATH.2079140210" name="Add &lt;dir&gt; to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.SEARCH_PATH" valueType="stringList">
-                                                                       <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/lib&quot;"/>
-                                                                       <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>
-                                                               </option>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.LIBRARY.1302770187" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.LIBRARY" valueType="libs">
-                                                                       <listOptionValue builtIn="false" value="&quot;libc.a&quot;"/>
-                                                               </option>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.INITIALIZATION_MODEL.1117698313" name="Initialization model" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.INITIALIZATION_MODEL" value="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.INITIALIZATION_MODEL.RAM_MODEL" valueType="enumerated"/>
-                                                       </tool>
-                                               </toolChain>
-                                       </folderInfo>
-                               </configuration>
-                       </storageModule>
-                       <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
-               </cconfiguration>
-               <cconfiguration id="com.ti.ccstudio.buildDefinitions.C6000.Release.1849456258">
-                       <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.C6000.Release.1849456258" moduleId="org.eclipse.cdt.core.settings" name="Release">
-                               <externalSettings/>
-                               <extensions>
-                                       <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/>
-                                       <extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-                                       <extension id="com.ti.ccstudio.errorparser.LinkErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-                                       <extension id="com.ti.ccstudio.errorparser.AsmErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-                               </extensions>
-                       </storageModule>
-                       <storageModule moduleId="cdtBuildSystem" version="4.0.0">
-                               <configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" id="com.ti.ccstudio.buildDefinitions.C6000.Release.1849456258" name="Release" parent="com.ti.ccstudio.buildDefinitions.C6000.Release">
-                                       <folderInfo id="com.ti.ccstudio.buildDefinitions.C6000.Release.1849456258." name="/" resourcePath="">
-                                               <toolChain id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.ReleaseToolchain.735374597" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.ReleaseToolchain" targetTool="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.linkerRelease.1276338252">
-                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1452356825" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
-                                                               <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=com.ti.ccstudio.deviceModel.C6000.GenericC62xxDevice"/>
-                                                               <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
-                                                               <listOptionValue builtIn="false" value="OUTPUT_FORMAT=COFF"/>
-                                                               <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.1.0.01"/>
-                                                               <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>
-                                                               <listOptionValue builtIn="false" value="OUTPUT_TYPE=executable"/>
-                                                       </option>
-                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1579593947" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="7.3.1" valueType="string"/>
-                                                       <targetPlatform id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.targetPlatformRelease.1192165857" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.targetPlatformRelease"/>
-                                                       <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.builderRelease.919676456" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.builderRelease"/>
-                                                       <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.compilerRelease.1457954161" name="C6000 Compiler" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.compilerRelease">
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.SILICON_VERSION.939078045" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.SILICON_VERSION" value="6200" valueType="string"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DIAG_WARNING.52865566" name="Treat diagnostic &lt;id&gt; as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DIAG_WARNING" valueType="stringList">
-                                                                       <listOptionValue builtIn="false" value="225"/>
-                                                               </option>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DISPLAY_ERROR_NUMBER.1474265879" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.INCLUDE_PATH.1345769681" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.INCLUDE_PATH" valueType="includePath">
-                                                                       <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>
-                                                               </option>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.ABI.1942510320" name="Application binary interface (coffabi, eabi) (--abi)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.C6000_7.3.compilerID.ABI.coffabi" valueType="enumerated"/>
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__C_SRCS.794851940" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__C_SRCS"/>
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__CPP_SRCS.2103512664" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__CPP_SRCS"/>
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__ASM_SRCS.744255409" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__ASM_SRCS"/>
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__ASM2_SRCS.2015370181" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.compiler.inputType__ASM2_SRCS"/>
-                                                       </tool>
-                                                       <tool id="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.linkerRelease.1276338252" name="C6000 Linker" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.exe.linkerRelease">
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.OUTPUT_FILE.1756133827" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.OUTPUT_FILE" value="&quot;${ProjName}.out&quot;" valueType="string"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.MAP_FILE.1383036878" name="Input and output sections listed into &lt;file&gt; (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.MAP_FILE" value="&quot;${ProjName}.map&quot;" valueType="string"/>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.LIBRARY.1037889192" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.LIBRARY" valueType="libs">
-                                                                       <listOptionValue builtIn="false" value="&quot;libc.a&quot;"/>
-                                                               </option>
-                                                               <option id="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.SEARCH_PATH.1805737845" name="Add &lt;dir&gt; to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.C6000_7.3.linkerID.SEARCH_PATH" valueType="stringList">
-                                                                       <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/lib&quot;"/>
-                                                                       <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>
-                                                               </option>
-                                                       </tool>
-                                               </toolChain>
-                                       </folderInfo>
-                                       <sourceEntries>
-                                               <entry excluding="lnk.cmd" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
-                                       </sourceEntries>
-                               </configuration>
-                       </storageModule>
-                       <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
-               </cconfiguration>
-       </storageModule>
-       <storageModule moduleId="cdtBuildSystem" version="4.0.0">
-               <project id="OTP_Writer.com.ti.ccstudio.buildDefinitions.C6000.ProjectType.412704714" name="C6000" projectType="com.ti.ccstudio.buildDefinitions.C6000.ProjectType"/>
-       </storageModule>
-       <storageModule moduleId="refreshScope"/>
-       <storageModule moduleId="org.eclipse.cdt.core.language.mapping">
-               <project-mappings>
-                       <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.asmSource" language="com.ti.ccstudio.core.TIASMLanguage"/>
-                       <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cHeader" language="com.ti.ccstudio.core.TIGCCLanguage"/>
-                       <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cSource" language="com.ti.ccstudio.core.TIGCCLanguage"/>
-                       <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxHeader" language="com.ti.ccstudio.core.TIGPPLanguage"/>
-                       <content-type-mapping configuration="" content-type="org.eclipse.cdt.core.cxxSource" language="com.ti.ccstudio.core.TIGPPLanguage"/>
-               </project-mappings>
-       </storageModule>
-       <storageModule moduleId="scannerConfiguration"/>
-</cproject>
diff --git a/otp_writer/.project b/otp_writer/.project
deleted file mode 100644 (file)
index e7c12de..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-       <name>OTP_Writer</name>
-       <comment></comment>
-       <projects>
-       </projects>
-       <buildSpec>
-               <buildCommand>
-                       <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
-                       <arguments>
-                               <dictionary>
-                                       <key>?name?</key>
-                                       <value></value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.append_environment</key>
-                                       <value>true</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.autoBuildTarget</key>
-                                       <value>all</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.buildArguments</key>
-                                       <value>-k</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.buildCommand</key>
-                                       <value>${CCS_UTILS_DIR}/bin/gmake</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.buildLocation</key>
-                                       <value>${BuildDirectory}</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
-                                       <value>clean</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.contents</key>
-                                       <value>org.eclipse.cdt.make.core.activeConfigSettings</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.enableAutoBuild</key>
-                                       <value>true</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.enableCleanBuild</key>
-                                       <value>true</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.enableFullBuild</key>
-                                       <value>true</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.fullBuildTarget</key>
-                                       <value>all</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.stopOnError</key>
-                                       <value>false</value>
-                               </dictionary>
-                               <dictionary>
-                                       <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
-                                       <value>true</value>
-                               </dictionary>
-                       </arguments>
-               </buildCommand>
-               <buildCommand>
-                       <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
-                       <triggers>full,incremental,</triggers>
-                       <arguments>
-                       </arguments>
-               </buildCommand>
-       </buildSpec>
-       <natures>
-               <nature>com.ti.ccstudio.core.ccsNature</nature>
-               <nature>org.eclipse.cdt.core.cnature</nature>
-               <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
-               <nature>org.eclipse.cdt.core.ccnature</nature>
-               <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
-       </natures>
-</projectDescription>
diff --git a/otp_writer/include/otp_pvt.h b/otp_writer/include/otp_pvt.h
deleted file mode 100644 (file)
index 6307272..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- *  file  otp_pvt.h
- *
- *  Private API and data structures for OTP driver.
- *
- *  ============================================================================
- *      (C) Copyright 2012, Texas Instruments, Inc.
- * 
- *  Redistribution and use in source and binary forms, with or without 
- *  modification, are permitted provided that the following conditions 
- *  are met:
- *
- *    Redistributions of source code must retain the above copyright 
- *    notice, this list of conditions and the following disclaimer.
- *
- *    Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the 
- *    documentation and/or other materials provided with the   
- *    distribution.
- *
- *    Neither the name of Texas Instruments Incorporated nor the names of
- *    its contributors may be used to endorse or promote products derived
- *    from this software without specific prior written permission.
- *
- *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
- *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
- *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
- *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
- *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
- *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- *  \par
-*/
-
-#ifndef OTP_PVT_H_
-#define OTP_PVT_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include "otp.h"
-
-/* EFUSE defines */
-#define EFUSE_JTAG_BLOCK ((Uint16) 0)
-#define EFUSE_JTAG_ROW  ((Uint16) 0xA)
-#define EFUSE_JTAG_SIZE_32BIT_WORDS  ((Uint16) 1)
-#define EFUSE_PUBLIC_PRIVATE_ENABLE_BLOCK  ((Uint16) 0)
-#define EFUSE_PUBLIC_PRIVATE_ENABLE_ROW ((Uint16) 0x9)
-#define EFUSE_PUBLIC_PRIVATE_ENABLE_SIZE_32BIT_WORDS  ((Uint16) 1)
-#define EFUSE_SMEK_BLOCK  ((Uint16) 0)
-#define EFUSE_SMEK_ROW  ((Uint16) 0x15)
-#define EFUSE_SMPK_BLOCK  ((Uint16) 0)
-#define EFUSE_SMPK_ROW  ((Uint16) 0x1F)
-/* FuseROM 0 contains the first 17.5 OTP keys: Key Mgr 0, Key 0 - Key Mgr 1, Key 0
-  * Half of Key Mgr 1, Key 1 is contained in FuseROM 0 and the other half in FurseROM 1
-  * FuseROM 1 contains the last 14.5 keys: Key Mgr 1, Key 2 - Key Mgr 1, Key 15 */
-#define EFUSE_OTP_1_BLOCK  ((Uint16) 0)
-#define EFUSE_OTP_1_BASE_ROW ((Uint16) 0x65)  /* Key Mgr 0, Key 0 - half of 
-                                                                                      * Key Mgr 1, Key 1 */
-#define EFUSE_OTP_2_BLOCK  ((Uint16) 1)                                                                                      
-#define EFUSE_OTP_2_BASE_ROW ((Uint16) 0x3E)  /* half of Key Mgr 1, Key 1 - 
-                                                                                      * Key Mgr 1, Key 15 */                                                                                      
-#define EFUSE_OTP_SIZE_32BIT_WORDS ((Uint16) 4)  /* 4 key words */
-
-/* EFUSE JTAG defines */
-#define EFUSE_JTAG_OPEN ((Uint32) 0x00000000)
-#define EFUSE_JTAG_PROTECTED ((Uint32) 0x00000001)
-#define EFUSE_JTAG_DISABLED  ((Uint32) 0x00000003)
-
-/* eFuse controller instructions */
-#define EFUSE_INSTRUCTION_NOOP  ((Uint32) 0x00000000)
-#define EFUSE_INSTRUCTION_READ  ((Uint32) 0x04000000)
-#define EFUSE_INSTRUCTION_PROGRAM  ((Uint32) 0x07000000)
-
-/* eFuse Address register block defines */
-#define EFUSE_ADDRESS_FUSEROM_BLOCK_0  ((Uint32) 0x00000000)
-#define EFUSE_ADDRESS_FUSEROM_BLOCK_1  ((Uint32) 0x00000800)
-
-/* eFuse key code */
-#define EFUSE_KEY_CODE ((Uint32) 0x96969696)
-
-/* eFuse data register upper defines */
-#define EFUSE_DATA_UPPER_NO_REP_NO_PROT ((Uint32) 0x00000000)
-#define EFUSE_DATA_UPPER_NO_REP_WR_PROT  ((Uint32) 0x00000001)
-#define EFUSE_DATA_UPPER_NO_REP_WR_RD_PROT  ((Uint32) 0x00000002)
-#define EFUSE_DATA_UPPER_ROW_REP  ((Uint32) 0x00000003)
-
-/* eFuse read register defines */
-#define EFUSE_READ_READ_DATA_BIT ((Uint32) 0x00000004)
-#define EFUSE_CLOCK_READ_PULSE_WIDTH ((Uint32) 0x000000E0)  /* Currently set to 14*sys_clk_period */
-
-/* eFuse program register defines */
-/* Current program write configuration sets:
-  * Bits 10:0 - 113 (0x71) for the strobe pulse width
-  * Bits 14:11 - write iterations is cleared, will be OR'd in from write API parameter
-  * Bit 15 - program signal
-  * Bits 31:17 - 64 clock pulse stall width */
-#define EFUSE_PROGRAM_WRITE_CONFIG ((Uint32) 0x00808071)
-/* Current program read configuration sets:
-  * Bits 10:0 - 14 (0x0E) for the strobe pulse width
-  * Bits 14:11 - write iterations is cleared, will be OR'd in from write API parameter
-  * Bit 15 - program signal
-  * Bits 31:17 - 64 clock pulse stall width */
-#define EFUSE_PROGRAM_READ_CONFIG ((Uint32) 0x0080800E)
-#define EFUSE_PROGRAM_WR_ATTEMPT_SHIFT ((Uint16) 11)
-
-/* eFuse error status register defines */
-#define EFUSE_ERROR_STATUS_NUM_FUSE_CHAINS ((Uint16) 4)
-#define EFUSE_ERROR_STATUS_MASK ((Uint32) 0x1F)  /* all errors are 5 bits */
-/* Macro for  extracting each fuse chain's status on a write operation. 
-  * There are 8 bits between fuse chain error status fields */
-#define EFUSE_ERROR_STATUS_WRITE(errorStatus, fuseChain) (  \
-                            (errorStatus >> (fuseChain * 8)) & EFUSE_ERROR_STATUS_MASK)
-/* Macro for  extracting each fuse chain's status on a read operation. 
-  * There are 6 bits between fuse chain error status fields */
-#define EFUSE_ERROR_STATUS_READ(errorStatus, fuseChain) (  \
-                            (errorStatus >> (fuseChain * 6)) & EFUSE_ERROR_STATUS_MASK)
-
-/* OTP Key Boundaries */
-#define EFUSE_MAX_KEY_MGRS 2
-#define EFUSE_MAX_KEYS_PER_MGR 16
-
-#define EFUSE_OTP_KEY_CHECK(mgr, key)  ((mgr >= EFUSE_MAX_KEY_MGRS) || \
-                                                                       (key >= EFUSE_MAX_KEYS_PER_MGR))
-
-/* OTP control register overlay structure */
-typedef struct  {
-       Uint32 otpSysStatus_Instruction;
-       Uint32 otpInstructionDumpword;
-       Uint32 otpAddress;
-       Uint32 otpDataLower;
-       Uint32 otpSysConfig;
-       Uint32 otpDataUpper;
-       Uint32 otpAccumulator;
-       Uint32 otpBoundary;
-       Uint32 otpKeyFlag;
-       Uint32 otpKey;
-       Uint32 otpRelease;
-       Uint32 otpPins;
-       Uint32 otpCra;
-       Uint32 otpRead;
-       Uint32 otpProgram;
-       Uint32 otpErrorStatus;
-} Otp_ControlOverlay;
-
-Otp_Status Otp_write (Uint32 *data, Uint16 size, Uint16 fuseRomBlock, 
-                                  Uint16 fuseRomRow, Otp_writeCfg *otpWrCfg);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* OTP_PVT_H_ */
diff --git a/otp_writer/link.cmd b/otp_writer/link.cmd
deleted file mode 100644 (file)
index dae336b..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-
---args 0x0
--heap  0x0
--stack 0x1000
-
-MEMORY
-{
-    L2SRAM (RWX) : org = 0x800000, len = 0x100000
-    MSMCSRAM (RWX) : org = 0xc000000, len = 0x200000
-    DDR3 : org = 0xa0000000, len = 0x20000000
-}
-
-SECTIONS
-{
-    .text: load >> L2SRAM
-    .ti.decompress: load > L2SRAM
-    .stack: load > L2SRAM
-    GROUP: load > L2SRAM
-    {
-        .bss:
-        .neardata:
-        .rodata:
-    }
-    .cinit: load > L2SRAM
-    .pinit: load >> L2SRAM
-    .init_array: load > L2SRAM
-    .const: load >> L2SRAM
-    .data: load >> L2SRAM
-    .fardata: load >> L2SRAM
-    .switch: load >> L2SRAM
-    .sysmem: load > L2SRAM
-    .far: load >> L2SRAM
-    .args: load > L2SRAM align = 0x4, fill = 0 {_argsize = 0x0; }
-    .cio: load >> L2SRAM
-    .ti.handler_table: load > L2SRAM
-    .testtoc: load >> MSMCSRAM
-}
diff --git a/otp_writer/main.c b/otp_writer/main.c
deleted file mode 100644 (file)
index 9abae77..0000000
+++ /dev/null
@@ -1,235 +0,0 @@
-/**
- *   @file  main.c
- *
- *   @brief   
- *      OTP Writer main.  Used to unlock JTAG and write customer SMEK and SMPK keys
- *      to the EFUSE.
- *
- *  \par
- *  ============================================================================
- *  @n   (C) Copyright 2012, Texas Instruments, Inc.
- * 
- *  Redistribution and use in source and binary forms, with or without 
- *  modification, are permitted provided that the following conditions 
- *  are met:
- *
- *    Redistributions of source code must retain the above copyright 
- *    notice, this list of conditions and the following disclaimer.
- *
- *    Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the 
- *    documentation and/or other materials provided with the   
- *    distribution.
- *
- *    Neither the name of Texas Instruments Incorporated nor the names of
- *    its contributors may be used to endorse or promote products derived
- *    from this software without specific prior written permission.
- *
- *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
- *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
- *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
- *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
- *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
- *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- *  \par
-*/
-
-/* Standard includes */
-#include <stdio.h>
-#include <string.h>
-
-/* CSL types */
-#include <ti/csl/tistdtypes.h>
-
-/* OTP includes */
-#include "otp.h"
-
-extern Uint32 dataArr_smpk[];
-extern Uint32 dataArr_smek[];
-
-/* TOC Header Defines */
-#define TOC_HEADER_ADDRESS ((Uint32) 0x0C000000)
-#define TOC_HEADER_IMAGE_SIZE_FIELD  ((Uint32) 4)
-#define TOC_HEADER_RESERVED_FIELD  ((Uint32) 8)
-#define TOC_HEADER_LOAD_ADDR_FIELD  ((Uint32) 16)
-#define TOC_HEADER_STRING_FIELD  ((Uint32) 20)
-
-/* Key File Defines */
-#define KEY_FILE_ID_JTAG  ((Uint32) 0x00000001)
-#define KEY_FILE_ID_SMEK  ((Uint32) 0x00000002)
-#define KEY_FILE_ID_SMPK  ((Uint32) 0x00000003)
-
-#define KEY_FILE_OPEN_JTAG ((Uint32) 0x00000001)
-
-/* JTAG unlock address */
-#define SEC_TAP_EN  *((volatile unsigned int *)0x02500028)
-
-void main (void)
-{
-    Uint32 *tocHdrPtr = &testTocHeader[0];  /* (Uint32 *) TOC_HEADER_ADDRESS; */
-    Char *tocHdrStrPtr;
-    Char *tocHdrName = "2ND";
-    Uint32 *tocHdrResFields = tocHdrPtr + (TOC_HEADER_RESERVED_FIELD/4);
-    Uint32 *keyFilePtr;
-    Uint32 keyFileSizeBytes; 
-    Uint32 keyFileEndAddr;
-    Otp_writeCfg otpWrCfg;
-    Otp_Status otpStatus;
-
-    /* Image data load address (4th 32-bit word) */
-    if (*(tocHdrPtr + (TOC_HEADER_LOAD_ADDR_FIELD/4)))
-    {
-        /* Return if the load address field of the image data is populated.  When the
-          * load address field is populated an image is to be run.  Keys are not supposed
-          * to be written */
-        return;
-    }
-
-    /* Assign the TOC header string pointer to the first string section in the 
-     * TOC header (5th 32-bit word) */
-    tocHdrStrPtr = (Char *) (TOC_HEADER_ADDRESS + TOC_HEADER_STRING_FIELD);
-
-    /* Return if "2ND" string is not in the TOC header */
-    if (strncmp(tocHdrStrPtr, tocHdrName, 3))
-    {
-        return;
-    }
-
-    /* Key file offset is first entry in TOC header (1st 32-bit word) */
-    /* Initialize to start of TOC header prior to adding offset and 
-      * add offset from TOC header */
-    keyFilePtr = (Uint32 *) (TOC_HEADER_ADDRESS + *tocHdrPtr);
-    
-    /* Key file size is second entry in TOC header (2nd 32-bit word) */
-    tocHdrPtr++;
-    keyFileSizeBytes = *tocHdrPtr;
-
-    if ((keyFileSizeBytes % 4) != 0)
-    {
-        /* Key file should be multiple of four bytes */
-        return;
-    }
-
-    /* Get end of Key File for parsing */
-    keyFileEndAddr = (Uint32) keyFilePtr + keyFileSizeBytes;
-
-    /* Parse key file and program keys */
-    while (((Uint32) keyFilePtr) != keyFileEndAddr)
-    {
-        /* Clear the OTP status */
-        otpStatus = Otp_status_INSTRUCTION_SUCCESSFUL;
-      
-        if (*keyFilePtr == KEY_FILE_ID_JTAG)
-        {
-            /* Check length */
-            keyFilePtr++;
-            if ((*keyFilePtr) != 0x1)
-            {
-                /* Should only be 1 byte for JTAG command */
-                return;
-            }
-
-            /* Get JTAG command */
-            keyFilePtr++;
-            if ((*keyFilePtr) == KEY_FILE_OPEN_JTAG)
-            {
-                /* Allow emulation access */
-                SEC_TAP_EN = 0xffffffff;
-
-                /* Also allow ARM debug access */
-                *((unsigned int *)0x2620630) = 0x1fff;
-            }
-
-            /* Go to next Key File entry */
-            keyFilePtr++;
-        }
-        else if ((*keyFilePtr) == KEY_FILE_ID_SMEK)
-        {
-            /* Check length */
-            keyFilePtr++;
-            if ((*keyFilePtr) != (OTP_SMEK_SIZE_32BIT_WORDS * 4))
-            {
-                /* WIPE IF ERROR?! */
-              
-                /* SMEK should be 20 bytes total - 4 bytes ECC + 16 data bytes */
-                return;
-            }
-
-            /* Send the data to the OTP driver */
-            keyFilePtr++;
-            /* FOR TESTING DO NOT WRITE OR READ PROTECT */
-#if 0            
-            otpWrCfg.maxWrAttempts = 7;
-            otpWrCfg.writeProtect = 0;
-            otpWrCfg.readProtect = 0;
-            otpStatus = Otp_smekWrite (&keyFilePtr[0], &otpWrCfg);
-#endif
-            /* Use first of reserved fields to return SMEK status to Host */
-            *tocHdrResFields = (Uint32) otpStatus;
-
-            /* Wipe SMEK out of memory */
-            memset((void *)&keyFilePtr[0], 0, (OTP_SMEK_SIZE_32BIT_WORDS * 4));
-
-            /* Go to next Key File entry */
-            keyFilePtr += OTP_SMEK_SIZE_32BIT_WORDS;
-        }
-        else if ((*keyFilePtr) == KEY_FILE_ID_SMPK)
-        {
-            /* Check length */
-            keyFilePtr++;
-            if ((*keyFilePtr) != (OTP_SMPK_SIZE_32BIT_WORDS * 4))
-            {
-                /* WIPE IF ERROR?! */
-              
-                /* SMPK should be 40 bytes total - 8 bytes ECC + 32 data bytes */
-                return;
-            }
-
-            /* Send the data to the OTP driver */
-            keyFilePtr++;
-            /* FOR TESTING DO NOT WRITE OR READ PROTECT */
-#if 0            
-            otpWrCfg.maxWrAttempts = 7;
-            otpWrCfg.writeProtect = 0;
-            otpWrCfg.readProtect = 0;
-            otpStatus = Otp_smpkWrite (&keyFilePtr[0], &otpWrCfg);
-#endif
-            /* Use second of reserved fields to return SMEK status to Host */
-            tocHdrResFields++;
-            *tocHdrResFields = (Uint32) otpStatus;
-
-            /* Wipe SMPK out of memory */
-            memset((void *)&keyFilePtr[0], 0, (OTP_SMPK_SIZE_32BIT_WORDS * 4));
-           
-            /* Go to next Key File entry */
-            keyFilePtr += OTP_SMPK_SIZE_32BIT_WORDS;
-        }
-        else
-        { 
-            /* Skip any other types */
-            Uint32 keyFileEntrySizeWords;
-
-            /* Get entry size and round up to nearest 32-bit word */
-            keyFilePtr++;
-            keyFileEntrySizeWords = (*keyFilePtr) / 4;
-            if (((*keyFilePtr) % 4) != 0)
-            {
-                keyFileEntrySizeWords++;
-            }
-
-            /* Jump to next Key File entry */
-            keyFilePtr++;
-            keyFilePtr += keyFileEntrySizeWords;
-        }
-    }
-
-
-    for (;;){}
-
-}
diff --git a/otp_writer/otp.c b/otp_writer/otp.c
deleted file mode 100644 (file)
index 974ae57..0000000
+++ /dev/null
@@ -1,350 +0,0 @@
-/**
- *   @file  otp.c
- *
- *   @brief   
- *      This is the OTP driver file.
- *
- *  \par
- *  ============================================================================
- *  @n   (C) Copyright 2012, Texas Instruments, Inc.
- * 
- *  Redistribution and use in source and binary forms, with or without 
- *  modification, are permitted provided that the following conditions 
- *  are met:
- *
- *    Redistributions of source code must retain the above copyright 
- *    notice, this list of conditions and the following disclaimer.
- *
- *    Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the 
- *    documentation and/or other materials provided with the   
- *    distribution.
- *
- *    Neither the name of Texas Instruments Incorporated nor the names of
- *    its contributors may be used to endorse or promote products derived
- *    from this software without specific prior written permission.
- *
- *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
- *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
- *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
- *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
- *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
- *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- *  \par
-*/
-
-/* Standard includes */
-#include <stdio.h>
-#include <stdint.h>
-
-/* OTP includes */
-#include "otp.h"
-#include "include/otp_pvt.h"
-
-/**********************************************************************
- ************************** Globals ***********************************
- **********************************************************************/
-
-/* OTP (EFUSE) control registers according to SPRS671B - TMS320TCI6614 Data Manual */
-volatile Otp_ControlOverlay *otpControlRegs = (Otp_ControlOverlay *) 0x02522000;
-
-/* Mapping of Key Mgr Keys to their respective rows in the fuseROMs.  There are two key
-  * Mgrs and 16 keys per Key Mgr */
-const Uint16 otp_KeyMgrKeyToFuseRowMap[EFUSE_MAX_KEY_MGRS][EFUSE_MAX_KEYS_PER_MGR] = {{0x23, 0x27, 0x2B, 0x2F, 
-                                                                                      0x33, 0x37, 0x3B, 0x3F, 
-                                                                                      0x43, 0x47, 0x4B, 0x4F, 
-                                                                                      0x53, 0x57, 0x5B, 0x5F},
-                                                                                     {0x63, 0x06, 0x0A, 0x0E, 
-                                                                                      0x12, 0x16, 0x1A, 0x1E, 
-                                                                                      0x22, 0x26, 0x2A, 0x2E, 
-                                                                                      0x32, 0x36, 0x3A, 0x3E}};
-
-/**********************************************************************
- ********************** Internal Functions *********************************
- **********************************************************************/
-void Otp_delay (void)
-{
-    Uint32 i;
-
-    for(i = 0; i < 100000; i++)
-    {
-        asm(" NOP 9 ");
-    }
-}
-
-Otp_Status Otp_checkForWriteError (Uint32 errorStatus)
-{
-    Uint16 i;
-    Uint32 extractedErrorStatus = Otp_status_INSTRUCTION_SUCCESSFUL;
-
-    /* Return the first fuse chain error */
-    for (i = 0; i < EFUSE_ERROR_STATUS_NUM_FUSE_CHAINS; i++)
-    {
-        if (extractedErrorStatus = EFUSE_ERROR_STATUS_WRITE(errorStatus, i))
-        {
-            return ((Otp_Status) extractedErrorStatus);
-        }
-    }
-
-    /* If no error found return the extracedErrorStatus anyway, which will be instruction successful */
-    return ((Otp_Status) extractedErrorStatus);
-}
-
-Otp_Status Otp_checkForReadError (Uint32 errorStatus)
-{
-    Uint16 i;
-    Uint32 extractedErrorStatus = Otp_status_INSTRUCTION_SUCCESSFUL;
-
-    /* Return the first fuse chain error */
-    for (i = 0; i < EFUSE_ERROR_STATUS_NUM_FUSE_CHAINS; i++)
-    {
-        if (extractedErrorStatus = EFUSE_ERROR_STATUS_READ(errorStatus, i))
-        {
-            return ((Otp_Status) extractedErrorStatus);
-        }
-    }
-
-    /* If no error found return the extracedErrorStatus anyway, which will be instruction successful */
-    return ((Otp_Status) extractedErrorStatus);
-}
-
-Otp_Status Otp_write (Uint32 *data, Uint16 size, Uint16 fuseRomBlock, 
-                                     Uint16 fuseRomRow, Otp_writeCfg *otpWrCfg)
-{
-    Uint32 i;
-    Uint32 status;
-    Uint32 bitReversedData;
-    Uint32 rowAddress;
-    Uint32 readData;
-
-    /* Make sure if read protection is requested to be set that write protection is set as well */
-    if (otpWrCfg->readProtect && !otpWrCfg->writeProtect)
-    {
-        return (Otp_status_READ_PROTECT_WITHOUT_WRITE_PROTECT);
-    }
-
-    /* Configure the OTP registers for write/read */
-
-    /* Set key code which protects fuseROM during power-up */
-    otpControlRegs->otpKey= EFUSE_KEY_CODE;
-    /* Set the read data bit and the read pulse width */
-    otpControlRegs->otpRead = (EFUSE_CLOCK_READ_PULSE_WIDTH|EFUSE_READ_READ_DATA_BIT);
-
-    /* Perform the number of writes specified in the size parameter */
-    for(i = 0; i < size; i++)
-    {
-        /* Configure the eFuse control registers for write */
-
-        /* Clear the error status register before each write and read */
-        otpControlRegs->otpErrorStatus = 0x00000000;
-
-        /* Start with the specified eFuse row address and work backwards */
-        rowAddress = fuseRomRow-i;
-
-        /* Choose the fuseROM block based on the input parameter and set
-         * the address register */
-        if (fuseRomBlock == EFUSE_OTP_2_BLOCK)
-        {
-            rowAddress |= EFUSE_ADDRESS_FUSEROM_BLOCK_1;
-        }
-        otpControlRegs->otpAddress = rowAddress;
-
-#if 1
-        /* TEST READ */
-
-        /* Clear the data lower register since the read data will be placed there */
-        otpControlRegs->otpDataLower = 0x00000000;
-
-        /* Set the program register for read adding in the write attempts */
-        otpControlRegs->otpProgram = (EFUSE_PROGRAM_READ_CONFIG |
-                                                       (otpWrCfg->maxWrAttempts << EFUSE_PROGRAM_WR_ATTEMPT_SHIFT));
-        /* Peform the read from the row address that was just written to */
-        otpControlRegs->otpInstructionDumpword = (EFUSE_INSTRUCTION_READ|rowAddress);
-
-        /* Allow time for the read to occur */
-        Otp_delay();
-
-        /* Check for an error during read.  Return if error occurred */
-        if (status = Otp_checkForReadError(otpControlRegs->otpErrorStatus))
-        {
-           return ((Otp_Status) status);
-        }
-
-        /* Compare the read data with what was originally written */
-        readData = _bitr(otpControlRegs->otpDataLower);
-        printf("read data %x\n", readData);
-
-        /* Clear the error status register before each write and read */
-        otpControlRegs->otpErrorStatus = 0x00000000;
-#endif
-
-        /* Set the program register for write adding in the write attempts */
-        otpControlRegs->otpProgram = (EFUSE_PROGRAM_WRITE_CONFIG |
-                                                       (otpWrCfg->maxWrAttempts << EFUSE_PROGRAM_WR_ATTEMPT_SHIFT));
-
-
-        /* Configure the data upper and lower registers with the data and protection 
-         * settings.  Reverse the bit order of the data word to be written.  All eFuse chain bits
-         * are reversed */
-        bitReversedData = _bitr(data[i]);
-        otpControlRegs->otpDataLower = bitReversedData;
-        if (otpWrCfg->writeProtect && otpWrCfg->readProtect)
-        {
-            otpControlRegs->otpDataUpper = EFUSE_DATA_UPPER_NO_REP_WR_RD_PROT;
-        }
-        else if (otpWrCfg->writeProtect)
-        {
-            otpControlRegs->otpDataUpper = EFUSE_DATA_UPPER_NO_REP_WR_PROT;
-        }
-        else
-        {
-            otpControlRegs->otpDataUpper = 0x00000000;
-        }
-
-        /* Perform the write by writing the "write" command to the instruction register */
-        otpControlRegs->otpInstructionDumpword = EFUSE_INSTRUCTION_PROGRAM;
-
-        /* Allow time for the write to occur */
-        Otp_delay();
-
-        /* Check for an error during write.  Return if error occurred */
-        if (status = Otp_checkForWriteError(otpControlRegs->otpErrorStatus))
-        {
-            return ((Otp_Status) status);
-        }
-
-        /* Read back from the location to make sure the data was written */
-
-        /* Clear the error status register before each write and read */
-        otpControlRegs->otpErrorStatus = 0x00000000;
-
-        /* Clear the data lower register since the read data will be placed there */
-        otpControlRegs->otpDataLower = 0x00000000;
-
-        /* Set the program register for read adding in the write attempts */
-        otpControlRegs->otpProgram = (EFUSE_PROGRAM_READ_CONFIG |
-                                                       (otpWrCfg->maxWrAttempts << EFUSE_PROGRAM_WR_ATTEMPT_SHIFT));
-        /* Peform the read from the row address that was just written to */
-        otpControlRegs->otpInstructionDumpword = (EFUSE_INSTRUCTION_READ|rowAddress);
-
-        /* Allow time for the read to occur */
-        Otp_delay();
-
-        /* Check for an error during read.  Return if error occurred */
-        if (status = Otp_checkForReadError(otpControlRegs->otpErrorStatus))
-        {
-            return ((Otp_Status) status);
-        }
-
-        /* Compare the read data with what was originally written */
-        readData = _bitr(otpControlRegs->otpDataLower);
-        if (readData != data[i])
-        {
-            return(Otp_status_READ_DATA_NOT_SAME_AS_WRITTEN);
-        }
-    }
-
-    /* Clear the program register when all writes and reads are complete */
-    otpControlRegs->otpProgram = 0x00000000;
-
-    return (Otp_status_INSTRUCTION_SUCCESSFUL);
-}
-
-/**********************************************************************
- *********************** Application visible APIs ***************************
- **********************************************************************/
-Otp_Status Otp_smekWrite (Uint32 *smekDataPtr, Otp_writeCfg *otpWrCfg)
-{
-    return (Otp_write(smekDataPtr, OTP_SMEK_SIZE_32BIT_WORDS, EFUSE_SMEK_BLOCK,
-                                 EFUSE_SMEK_ROW, otpWrCfg));
-}
-
-Otp_Status Otp_smpkWrite (Uint32 *smpkDataPtr, Otp_writeCfg *otpWrCfg)
-{
-    return (Otp_write(smpkDataPtr, OTP_SMPK_SIZE_32BIT_WORDS, EFUSE_SMPK_BLOCK,
-                                 EFUSE_SMPK_ROW, otpWrCfg));
-}
-
-Otp_Status Otp_otpWrite (Uint32 *otpDataPtr, Uint16 otpKeyMgr, Uint16 otpKey, 
-                                            Otp_writeCfg *otpWrCfg)
-{
-    Uint16 otpKeyBlock;
-    Uint16 otpKeyRow = otp_KeyMgrKeyToFuseRowMap[otpKeyMgr][otpKey];
-    Otp_Status retVal;
-
-    if (EFUSE_OTP_KEY_CHECK(otpKeyMgr, otpKey))
-    {
-        return (Otp_status_KEY_MGR_OR_KEY_OUT_OF_RANGE);
-    }
-
-    /* All Key Mgr 0 keys are in fuseROM block 0, as well as Key Mgr 1, Key 0 */
-    if ((otpKeyMgr == 0) || ((otpKeyMgr == 1) && (otpKey == 0)))
-    {
-        /* Find the row for the key to be programmed */
-        otpKeyBlock = EFUSE_OTP_1_BLOCK;
-        return (Otp_write(otpDataPtr, EFUSE_OTP_SIZE_32BIT_WORDS, otpKeyBlock,
-                                     otpKeyRow, otpWrCfg));
-        
-    }
-    else if ((otpKeyMgr == 1) && (otpKey == 1))
-    {
-        /* Key Mgr 1, Key 1 is split between two fuseROM blocks.  Need to write half of the key to
-          * each block */
-
-        /* Write the second fuseROM block first */
-        otpKeyBlock = EFUSE_OTP_2_BLOCK;
-        if (retVal = Otp_write(&otpDataPtr[2], (EFUSE_OTP_SIZE_32BIT_WORDS/2), otpKeyBlock,
-                               otpKeyRow, otpWrCfg))
-        {
-          /* Error during first write */
-          return (retVal);
-        }
-
-        /* Complete the second half of the write.  Row should be last row in fuseROM 0 */
-        otpKeyBlock = EFUSE_OTP_1_BLOCK;
-        otpKeyRow = EFUSE_OTP_1_BASE_ROW;
-        return (Otp_write(otpDataPtr, (EFUSE_OTP_SIZE_32BIT_WORDS/2), otpKeyBlock,
-                                     otpKeyRow, otpWrCfg));
-    }
-    else
-    {
-        /* Handle remaining Keys in Key Mgr 1 */
-        otpKeyBlock = EFUSE_OTP_2_BLOCK;
-        return (Otp_write(otpDataPtr, EFUSE_OTP_SIZE_32BIT_WORDS, otpKeyBlock,
-                                     otpKeyRow, otpWrCfg));
-    }
-}
-
-
-Otp_Status Otp_otpSetPrivate (Uint16 otpKeyMgr, Uint16 otpKey, Otp_writeCfg *otpWrCfg)
-{
-    Uint32 setPrivateVal = 0x00000000;
-
-    if (EFUSE_OTP_KEY_CHECK(otpKeyMgr, otpKey))
-    {
-        return (Otp_status_KEY_MGR_OR_KEY_OUT_OF_RANGE);
-    }
-
-    /* Form the value to write into the eFuse to set the private bit for the 
-      * OTP key specified.  Any bits that are 0 will not be reflected in the eFuse
-      * when the write occurs
-      *
-      * Bit 31 sets Key Mgr 1 - Key 15 to private
-      * Bit 30 sets Key Mgr 1 - Key 14 to private
-      * ...
-      * Bit 1 sets Key Mgr 0 - Key 1 to private
-      * Bit 0 sets Key Mgr 0 - Key 0 to private */
-    setPrivateVal = 0x1 << (otpKey << otpKeyMgr);
-
-    return (Otp_write(&setPrivateVal, EFUSE_PUBLIC_PRIVATE_ENABLE_SIZE_32BIT_WORDS,
-                                  EFUSE_PUBLIC_PRIVATE_ENABLE_BLOCK, EFUSE_PUBLIC_PRIVATE_ENABLE_ROW,
-                                  otpWrCfg));
-      
-}
-
diff --git a/otp_writer/otp.h b/otp_writer/otp.h
deleted file mode 100644 (file)
index 185b88e..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- *  file  otp.h
- *
- *  API and data structures for OTP driver.
- *
- *  ============================================================================
- *      (C) Copyright 2012, Texas Instruments, Inc.
- * 
- *  Redistribution and use in source and binary forms, with or without 
- *  modification, are permitted provided that the following conditions 
- *  are met:
- *
- *    Redistributions of source code must retain the above copyright 
- *    notice, this list of conditions and the following disclaimer.
- *
- *    Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the 
- *    documentation and/or other materials provided with the   
- *    distribution.
- *
- *    Neither the name of Texas Instruments Incorporated nor the names of
- *    its contributors may be used to endorse or promote products derived
- *    from this software without specific prior written permission.
- *
- *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
- *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
- *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
- *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
- *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
- *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- *  \par
-*/
-
-#ifndef OTP_H_
-#define OTP_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <ti/csl/tistdtypes.h>
-
-/* SMEK, SMPK Defines */
-#define OTP_SMEK_SIZE_32BIT_WORDS ((Uint16) 5)  /* 4 key words + 1 ECC word */
-#define OTP_SMPK_SIZE_32BIT_WORDS ((Uint16) 10) /* 8 hash words + 2 ECC words */
-
-/* eFuse Programming defines */
-#define OTP_MAX_WRITE_ATTEMPTS ((Uint16) 0xF)
-
-/* OTP status */
-typedef enum {
-    /* EFUSE return codes */
-
-    /** No error - Instruction completed successfully */
-    Otp_status_INSTRUCTION_SUCCESSFUL = 0,
-    /** Error: Time-out */
-    Otp_status_TIMEOUT = 1,
-    /** Error: Autoload - Not enough data to fill scan chain  */
-    Otp_status_AUTOLOAD_NOT_ENOUGH_DATA = 2,
-    /** Error: Autoload - Wrong signature */
-    Otp_status_AUTOLOAD_WRONG_SIGNATURE = 3,
-    /** Error: Autoload or program operation interrupted */
-    Otp_status_PROGRAM_INTERRUPTION = 4,
-    
-    /** Value of 5 not used */
-    
-    /** Error: Write protection bit is set */
-    Otp_status_WRITE_PROTECT_SET = 6,
-    /** Error: Exceeded max write attempts allowed */
-    Otp_status_EXCEEDED_MAX_WR_ATTEMPTS = 7,
-    /** Error: Exceeded max control bit write attempts allowed */
-    Otp_status_EXCEEDED_MAX_CNTRL_BIT_WR_ATTEMPTS = 8,
-    /** Error: Some found to be set by test unprogrammed instruction */
-    Otp_status_TEST_RAW_SOME_BIT_SET = 9,
-        
-    /** Value of 10 not used */
-    
-    /** Error: Exceeded max CRA write attempts allowed */
-    Otp_status_EXCEEDED_MAX_CRA_WR_ATTEMTPS = 11,
-    /** Error: Address previously programmed with same data */
-    Otp_status_ADDRESS_PROGRAMMED_WITH_SAME_DATA = 12,
-    /** Inform: Program_compare_disable set when programming. */
-    Otp_status_PROGRAM_COMP_DISABLE_SET_DURING_WR = 13,
-    /** Error: Program aborted due to no row repair but repair bit set */
-    Otp_status_ABORT_PROGRAM_INVALID_ROW_REPAIR = 14,
-    /** Error: Program instruction executed with improper key value */
-    Otp_status_IMPROPER_KEY_VALUE = 15,
-            
-    /** Values of 16 and 17 not used */
-    
-    /** Error: Autoload operation incomplete */
-    Otp_status_INCOMPLETE_AUTOLOAD = 18,
-    /** Error: Autoload last row stuck */
-    Otp_status_AUTOLOAD_LAST_ROW_STUCK = 19,
-
-    /* OTP Driver error codes */
-
-    /** Error: The Key Mgr or Key specified is out of the hardware's range */
-    Otp_status_KEY_MGR_OR_KEY_OUT_OF_RANGE = 20,
-    /** Error: A read protect on a row was attempted without write protect being
-      *            set as well */
-    Otp_status_READ_PROTECT_WITHOUT_WRITE_PROTECT = 21,
-    /** Error: Data read from eFuse just after write was not the same.  Write error */
-    Otp_status_READ_DATA_NOT_SAME_AS_WRITTEN = 22
-} Otp_Status;
-
-typedef struct
-{
-    Uint16 maxWrAttempts;
-    /* Once writeProtect is set no further private bit settings can occur.
-      * readProtect cannot be set without writeProtect.  An error will be returned if this is attempted */
-    Bool writeProtect;
-    Bool readProtect;
-} Otp_writeCfg;
-
-/* SMEK APIs */
-extern Otp_Status Otp_smekWrite (Uint32 *smekDataPtr, Otp_writeCfg *otpWrCfg);
-
-/* SMPK APIs */
-extern Otp_Status Otp_smpkWrite (Uint32 *smpkDataPtr, Otp_writeCfg *otpWrCfg);
-
-/* OTP APIs */
-extern Otp_Status Otp_otpWrite (Uint32 *otpDataPtr, Uint16 otpKeyMgr, Uint16 otpKey, 
-                                                      Otp_writeCfg *otpWrCfg);
-extern Otp_Status Otp_otpSetPrivate (Uint16 otpKeyMgr, Uint16 otpKey, Otp_writeCfg *otpWrCfg);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* OTP_H_ */
-