summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 295978c)
raw | patch | inline | side by side (parent: 295978c)
author | Justin Sobota <jsobota@ti.com> | |
Fri, 8 Feb 2013 23:49:05 +0000 (18:49 -0500) | ||
committer | Justin Sobota <jsobota@ti.com> | |
Fri, 8 Feb 2013 23:49:05 +0000 (18:49 -0500) |
13 files changed:
build/buildlib.xs | patch | blob | history | |
config.bld | patch | blob | history | |
package.bld | patch | blob | history | |
package.xdc | patch | blob | history | |
package.xs | patch | blob | history | |
release.bat | [new file with mode: 0644] | patch | blob |
rm.h | patch | blob | history | |
setupenv.bat | patch | blob | history | |
src/rm.c | patch | blob | history | |
test/k2h/c66/bios/rmK2HC66BiosTestProject.txt | patch | blob | history | |
test/k2h/c66/bios/rm_test.cfg | [moved from test/rm_test.cfg with 97% similarity] | patch | blob | history |
test/k2k/c66/bios/rmK2KC66BiosTestProject.txt | patch | blob | history | |
test/k2k/c66/bios/rm_test.cfg | [new file with mode: 0644] | patch | blob |
diff --git a/build/buildlib.xs b/build/buildlib.xs
index 4934b5a6745894e38b6b67030dcb00a9cb5da3c9..648548e02aab857533a2e497e9c04ff6d260bad9 100644 (file)
--- a/build/buildlib.xs
+++ b/build/buildlib.xs
/* libmakefile.writeLine("INTERNALDEFS = -D"+stringname.replace(/\./g,"_")+" -Dxdc_target_types__=ti/targets/std.h -DMAKEFILE_BUILD -eo.$(OBJEXT) -ea.$(AOBJEXT) -fr=$(@D) -fs=$(@D) -ppa -ppd=$@.dep");*/\r
libmakefile.writeLine("INTERNALDEFS = -D"+stringname.replace(/\./g,"_")+" -DMAKEFILE_BUILD -eo.$(OBJEXT) -ea.$(AOBJEXT) -fr=$(@D) -fs=$(@D) -ppa -ppd=$@.dep");\r
libmakefile.writeLine("INTERNALLINKDEFS = -o $@ -m $@.map");\r
- libmakefile.writeLine("OBJDIR = $(LIBDIR)"); \r
+ libmakefile.writeLine("OBJDIR = $(LIBDIR)/obj"); \r
\r
return libmakefile;\r
\r
@@ -383,16 +383,17 @@ function makeAddObjects(srcString, makefilename, srcfiles, flags,fileExt, target
var makefilelocal;\r
function buildLibrary (libOptions, libName, target, libFiles) \r
{\r
- var lldFullLibraryPath = "./lib/" + libName;\r
- var lldFullLibraryPathMake = "$(LIBDIR)/" + libName;\r
+ var lldFullLibraryPath = "./lib/c66/" + libName;\r
+ var lldFullBuildPath = "./build/c66/" + libName;\r
+ var lldFullLibraryPathMake = "$(LIBDIR)/" + "c66/" + libName;\r
\r
/* Create Main make file in the root of package folder */\r
makefilelocal = createMake(makefilelocal);\r
\r
/* Write the rule to make library in main makefile */\r
- lib = lldFullLibraryPath+".a"+target.suffix;\r
+ lib = lldFullBuildPath+".a"+target.suffix;\r
libMake = lldFullLibraryPathMake+".a"+target.suffix;\r
- var objectPath= "./package/lib/"+lldFullLibraryPath;\r
+ var objectPath= "./package/"+lldFullBuildPath;\r
makefilelocal.writeLine("\n\n# Make rule to create "+libMake+" library");\r
makefilelocal.writeLine(".libraries: "+ libMake);\r
makefilelocal.writeLine(libMake+": FORCE\n\t$(MAKE) -f "+lib+".mk $@"); \r
if(afiles.length > 0)\r
{ \r
makeAddObjects("COMMONSRC",makefilelib,afiles,libOptions,"asm",target);\r
- librule += " $(COMMONSRCSOBJS)"; \r
+ librule += " $(COMMONSRCASMOBJS)"; \r
}\r
if(safiles.length > 0)\r
{ \r
\r
makefilelib.writeLine(librule);\r
makefilelib.writeLine("\t@echo archiving $? into $@ ...");\r
+ makefilelib.writeLine("\tif [ ! -d $(LIBDIR)/c66 ]; then $(MKDIR) $(LIBDIR)/c66 ; fi;"); \r
makefilelib.writeLine("\t$(ARIN) $@ $?");\r
makefilelib.close(); \r
\r
- /* Create the library file and add all the objects to the file. */\r
- var lib = Pkg.addLibrary(lldFullLibraryPath, target, libOptions);\r
-\r
- lib.addObjects (libFiles);\r
-\r
/* Create the Epilogue; which executes after all the builds are completed. \r
* This is used to generate the benchmark information for the built library. \r
* Also add the benchmarking information file to the package. */\r
Pkg.makeEpilogue += "\n\t sectti.exe tmp.xml > " + lldFullLibraryPath + ".a" + target.suffix + "_size.txt";\r
Pkg.makeEpilogue += "\n\t $(RM) tmp.xml\n\n";\r
Pkg.otherFiles[Pkg.otherFiles.length++] = lldFullLibraryPath + ".a" + target.suffix + "_size.txt";\r
- Pkg.otherFiles[Pkg.otherFiles.length++] = lldFullLibraryPath + ".a" + target.suffix + ".mk";\r
+ Pkg.otherFiles[Pkg.otherFiles.length++] = lldFullBuildPath + ".a" + target.suffix + ".mk";\r
+ Pkg.otherFiles[Pkg.otherFiles.length++] = lldFullLibraryPath + ".a" + target.suffix;\r
\r
/* We need to clean after ourselves; extend the 'clean' target to take care of this. */\r
- Pkg.makeEpilogue += "clean::\n\t";\r
- Pkg.makeEpilogue += "$(RM) " + lldFullLibraryPath + ".a" + target.suffix + "_size.txt\n\n";\r
+ Pkg.makeEpilogue += "clean::\n";\r
+ Pkg.makeEpilogue += "\t$(RM) " + lldFullBuildPath + ".a" + target.suffix + "_size.txt\n"; \r
+ Pkg.makeEpilogue += "\t$(RMDIR) " + "$(LIBDIR)/" + "c66/ \n\n";\r
\r
return lib;\r
}\r
Pkg.makeEpilogue += "\t tar -C " + "\"" + newPkgRep + "\"" + " -cf packages/" + pkgName + "_mini.tar " + \r
packageName + "simpleC66LE.mak " + packageName + "simpleC66BE.mak\n";\r
\r
+\r
/* Step2: Add the exported header files to the package */\r
var includeFiles = libUtility.listAllFiles (".h", ".", false);\r
for (var k = 0 ; k < includeFiles.length; k++)\r
diff --git a/config.bld b/config.bld
index 393e28de84eaa7bb9e07382e896e9c2cfe337145..4f921514de767439d9f926c8ff004639faa70fbd 100644 (file)
--- a/config.bld
+++ b/config.bld
var lldIncludePath = " -i" + lldPath + "/src" + " -i" + lldPath + " -i" + lldPath + "/test" + " -i" + lldPath + "/util/libfdt";\r
\r
/* Configure the RM Release Version Information */\r
-var lldReleaseVersion = [02,00,00,00];\r
+/* 3 steps: remove SPACE and TAB, convert to string and split to make array */\r
+var lldReleaseVersion = (""+Pkg.version.replace(/\s/g, "")).split(',');\r
\r
/* RM Coverity Analysis: Check the environment variable to determine if Static\r
* Analysis has to be done on the RM Code base or not? */\r
\r
/* List all the build targets here. */\r
Build.targets = [ C66LE, C66BE ];\r
-\r
diff --git a/package.bld b/package.bld
index 7befa1239c88df2dbbeb7938fb07204b65ded910..306acf524ccd8f39227056ef72dad7109258a91f 100644 (file)
--- a/package.bld
+++ b/package.bld
Pkg.makeEpilogue += "\t tar -xf ./packages/" + lldRTSCFileName + ".tar" + " -Ctmp/packages \n";\r
Pkg.makeEpilogue += "\t installjammer " + InstallJammerVersion + PackageBaseDir + WinInstallDir + \r
" --output-dir packages/ --build install/rm.mpi\n";\r
- Pkg.makeEpilogue += "\t -$(RMDIR) /S /Q tmp\n\n";\r
+ Pkg.makeEpilogue += "\t -$(RMDIR) tmp\n\n";\r
+}\r
\r
- /* We need to clean after ourselves; extend the 'clean' target to take care of this. */\r
- Pkg.makeEpilogue += "clean::\n";\r
- Pkg.makeEpilogue += "\t $(RM) packages/*.exe\n";\r
- Pkg.makeEpilogue += "\t $(RM) packages/*.bin\n";\r
+/* We need to clean after ourselves; extend the 'clean' target to take care of this. */\r
+Pkg.makeEpilogue += "clean::\n";\r
+Pkg.makeEpilogue += "\t -$(RM) docs/Doxyfile Settings.xdc rmver.h\n";\r
+Pkg.makeEpilogue += "\t -$(RM) makefile\n";\r
+Pkg.makeEpilogue += "\t -$(RMDIR) docs/doxygen\n";\r
+if (lldInstallType == "SETUP")\r
+{\r
+ Pkg.makeEpilogue += "\t -$(RM) packages/*.exe\n";\r
+ Pkg.makeEpilogue += "\t -$(RM) packages/*.bin\n";\r
+ Pkg.makeEpilogue += "\t -$(RMDIR) eclipse\n\n";\r
+}\r
+if (miniBuild == "ON")\r
+{\r
+ Pkg.makeEpilogue += "\t -$(RM) simpleC66LE.mak\n";\r
+ Pkg.makeEpilogue += "\t -$(RM) simpleC66BE.mak\n";\r
}\r
- \r
diff --git a/package.xdc b/package.xdc
index da62e2bf8056626aa82d55852186d07dadc0c170..8e57aabaa6f5a072d364ee0bbfee22b90f774095 100644 (file)
--- a/package.xdc
+++ b/package.xdc
package ti.drv.rm[2, 0, 0, 0] {\r
module Settings;\r
}\r
-\r
diff --git a/package.xs b/package.xs
index e488a957624b4f4c970356107b445249594d75df..37b1ffcf83c33839055f33b72e9c23a9c7fac7ad 100644 (file)
--- a/package.xs
+++ b/package.xs
\r
function getLibs(prog)\r
{\r
- var suffix;\r
+ var suffix = prog.build.target.suffix;\r
\r
- /* find a compatible suffix */\r
- if ("findSuffix" in prog.build.target) {\r
- suffix = prog.build.target.findSuffix(this);\r
- }\r
- else {\r
- suffix = prog.build.target.suffix;\r
+ var name = this.$name + ".a" + suffix;\r
+\r
+ /* Read LIBDIR variable */\r
+ var lib = java.lang.System.getenv("LIBDIR");\r
+\r
+ /* If NULL, default to "lib" folder */\r
+ if (lib == null)\r
+ {\r
+ lib = "./lib";\r
+ } else {\r
+ print ("\tSystem environment LIBDIR variable defined : " + lib);\r
}\r
\r
- var name = this.$name + ".a" + suffix;\r
- var lib = "";\r
+ /* Get target folder, if applicable */\r
+ if ( java.lang.String(suffix).contains('66') )\r
+ lib = lib + "/c66";\r
\r
- lib = "lib/" + name;\r
+ /* Get library name with path */\r
+ lib = lib + "/" + name;\r
if (java.io.File(this.packageBase + lib).exists()) {\r
- return lib;\r
+ return lib;\r
}\r
\r
- /* could not find any library, throw exception */\r
- throw Error("Library not found: " + name);\r
+ /* Could not find any library, throw exception */\r
+ throw new Error("\tLibrary not found: " + this.packageBase + lib);\r
}\r
\r
/*\r
diff --git a/release.bat b/release.bat
--- /dev/null
+++ b/release.bat
@@ -0,0 +1,3 @@
+xdc clean -PR .
+xdc -PR .
+xdc release
index d74afb4c4b64f0b8d77c262dd9dbe8735c31126b..e41967289eb2bda043899d510cfcdbcc417ec365 100644 (file)
--- a/rm.h
+++ b/rm.h
/* Standard includes */
#include <stdint.h>
-/* RM version */
-#include <ti/drv/rm/rmver.h>
-
/** @mainpage Resource Manager
*
* @section intro Introduction
diff --git a/setupenv.bat b/setupenv.bat
index f5a6564224a147cf3d6d07fd6c764b093c1e7501..10d62976f5c748b54835faa7849098b1aae78302 100644 (file)
--- a/setupenv.bat
+++ b/setupenv.bat
\r
IF DEFINED PARTNO GOTO partno_defined\r
@REM Configure the Part Number\r
-set PARTNO=TCI6614\r
+set PARTNO=keystone2\r
:partno_Defined\r
\r
IF DEFINED PDK_INSTALL_PATH GOTO pdk_defined\r
-set PDK_INSTALL_PATH=C:/ti/pdk_tci6614_1_00_00_11/packages\r
+set PDK_INSTALL_PATH=C:\ti\pdk_keystone2_1_00_00_07\packages\r
:pdk_defined\r
\r
@REM ---------------------------------\r
@REM Enabling MINI PACKAGE to be Built\r
@REM ---------------------------------\r
-set MINI_PACKAGE=ON\r
+set MINI_PACKAGE=OFF\r
@echo MINI PACKAGE is set to %MINI_PACKAGE%\r
\r
@REM This is the base location for the various tools. \r
REM - None\r
\r
@REM Specify the XDC Tool Path\r
-set XDC_INSTALL_PATH=C:/ti/xdctools_3_23_03_53\r
+set XDC_INSTALL_PATH=C:/ti/xdctools_3_24_05_48\r
set XDCPATH=../../..;%XDC_INSTALL_PATH%/packages\r
\r
@REM Configure the XDCPATH\r
set PATH=%PATH%;T:\gen\InstallJammer\v1_2_05\r
\r
set PATH=%PATH%;%XDCCGROOT%\bin\r
-set PATH=%PATH%;T:\SDOApps\cg_xml\cg_xml_v2_20_00\bin\r
-set PATH=%PATH%;T:\ti_pdsp_cgen\20091120\r
+set PATH=%PATH%;T:\SDOApps\cg_xml\cg_xml_v2_30_00\bin\r
+set PATH=%PATH%;T:\ti_pdsp_cgen\20111216\r
\r
@REM Third Party Tools: HTML Help compiler.\r
set PATH=%PATH%;T:\Doxygen\HTML_Help_Workshop\10-01-2007\r
\r
@echo RM LLD Build Environment Configured \r
@echo ---------------------------------------\r
-\r
diff --git a/src/rm.c b/src/rm.c
index 9900a28817d0f8b74636bb103d2b0494ba588ae7..8972186ad07b810f9139751f77649662233c14f7 100644 (file)
--- a/src/rm.c
+++ b/src/rm.c
\r
/* RM external includes */\r
#include <ti/drv/rm/rm.h>\r
+#include <ti/drv/rm/rmver.h>\r
#include <ti/drv/rm/rm_services.h>\r
#include <ti/drv/rm/rm_transport.h>\r
\r
diff --git a/test/k2h/c66/bios/rmK2HC66BiosTestProject.txt b/test/k2h/c66/bios/rmK2HC66BiosTestProject.txt
index 03ceae60c2421c39a6ac69ccf80c0a44e306a451..be768d9a1f16bebc1f94ef864deb20fa45467b85 100644 (file)
-ccs.linkFile "PDK_INSTALL_PATH/ti/drv/rm/test/rm_test.c"
-ccs.linkFile "PDK_INSTALL_PATH/ti/drv/rm/test/rm_osal.c"
--ccs.linkFile "PDK_INSTALL_PATH/ti/drv/rm/test/rm_test.cfg"
+-ccs.linkFile "PDK_INSTALL_PATH/ti/drv/rm/test/k2h/c66/bios/rm_test.cfg"
-ccs.setCompilerOptions "-mv6600 -g -DDEVICE_K2H --diag_warning=225 -I${PDK_INSTALL_PATH}/ti/drv/rm"
-rtsc.enableRtsc
similarity index 97%
rename from test/rm_test.cfg
rename to test/k2h/c66/bios/rm_test.cfg
index cc7c4a32e3937487fecfc0c0aaeaa7898e936119..7f6dd12eb9a2e6aa8c8d2cc820125f4943a3d6c7 100644 (file)
rename from test/rm_test.cfg
rename to test/k2h/c66/bios/rm_test.cfg
index cc7c4a32e3937487fecfc0c0aaeaa7898e936119..7f6dd12eb9a2e6aa8c8d2cc820125f4943a3d6c7 100644 (file)
--- a/test/rm_test.cfg
});
/* PDK packages */
-var Csl = xdc.loadPackage('ti.csl');
+var devType = "k2h"
+var Csl = xdc.useModule('ti.csl.Settings');
+Csl.deviceType = devType;
var Rm = xdc.loadPackage('ti.drv.rm');
diff --git a/test/k2k/c66/bios/rmK2KC66BiosTestProject.txt b/test/k2k/c66/bios/rmK2KC66BiosTestProject.txt
index 000e2255a3a4a1ec99774edbee8270756bbecb17..2240808170bb82848baa5a2cdeb5c52682b20f33 100644 (file)
-ccs.linkFile "PDK_INSTALL_PATH/ti/drv/rm/test/rm_test.c"
-ccs.linkFile "PDK_INSTALL_PATH/ti/drv/rm/test/rm_osal.c"
--ccs.linkFile "PDK_INSTALL_PATH/ti/drv/rm/test/rm_test.cfg"
+-ccs.linkFile "PDK_INSTALL_PATH/ti/drv/rm/test/k2k/c66/bios/rm_test.cfg"
-ccs.setCompilerOptions "-mv6600 -g -DDEVICE_K2K --diag_warning=225 -I${PDK_INSTALL_PATH}/ti/drv/rm"
-rtsc.enableRtsc
diff --git a/test/k2k/c66/bios/rm_test.cfg b/test/k2k/c66/bios/rm_test.cfg
--- /dev/null
@@ -0,0 +1,100 @@
+/*
+ * Copyright (c) 2012-2013, Texas Instruments Incorporated
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of Texas Instruments Incorporated nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+ * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ * */
+
+var MultiProc = xdc.useModule('ti.sdo.utils.MultiProc');
+
+/*
+ * Get the list of names that the build device supports.
+ * I.e. ["CORE0", "CORE1", "CORE2" ... ]
+ */
+// var nameList = MultiProc.getDeviceProcNames();
+var nameList = ["CORE0", "CORE1"];
+
+/*
+ * Since this is a single-image example, we don't (at build-time) which
+ * processor we're building for. We therefore supply 'null'
+ * as the local procName and allow IPC to set the local procId at runtime.
+ */
+MultiProc.setConfig(null, nameList);
+
+/*
+ * The SysStd System provider is a good one to use for debugging
+ * but does not have the best performance. Use xdc.runtime.SysMin
+ * for better performance.
+ */
+var System = xdc.useModule('xdc.runtime.System');
+var SysStd = xdc.useModule('xdc.runtime.SysStd');
+System.SupportProxy = SysStd;
+
+/* Modules explicitly used in the application */
+var MessageQ = xdc.useModule('ti.sdo.ipc.MessageQ');
+var Ipc = xdc.useModule('ti.sdo.ipc.Ipc');
+var HeapBufMP = xdc.useModule('ti.sdo.ipc.heaps.HeapBufMP');
+var MultiProc = xdc.useModule('ti.sdo.utils.MultiProc');
+
+/* BIOS/XDC modules */
+var BIOS = xdc.useModule('ti.sysbios.BIOS');
+BIOS.heapSize = 0x10000;
+var Task = xdc.useModule('ti.sysbios.knl.Task');
+
+Program.sectMap[".syncObj"] = new Program.SectionSpec();
+Program.sectMap[".syncObj"] = "MSMCSRAM";
+
+/* Synchronize all processors (this will be done in Ipc_start) */
+Ipc.procSync = Ipc.ProcSync_ALL;
+
+/* Shared Memory base address and length */
+var SHAREDMEM = 0x0C000000;
+var SHAREDMEMSIZE = 0x00100000;
+
+/*
+ * Need to define the shared region. The IPC modules use this
+ * to make portable pointers. All processors need to add this
+ * call with their base address of the shared memory region.
+ * If the processor cannot access the memory, do not add it.
+ */
+var SharedRegion = xdc.useModule('ti.sdo.ipc.SharedRegion');
+SharedRegion.setEntryMeta(0,
+ { base: SHAREDMEM,
+ len: SHAREDMEMSIZE,
+ ownerProcId: 0,
+ isValid: true,
+ name: "DDR2 RAM",
+ });
+
+/* PDK packages */
+var devType = "k2k"
+var Csl = xdc.useModule('ti.csl.Settings');
+Csl.deviceType = devType;
+var Rm = xdc.loadPackage('ti.drv.rm');
+
+