summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 4632450)
raw | patch | inline | side by side (parent: 4632450)
author | Benjamin Mouchard <b-mouchard@ti.com> | |
Mon, 20 Apr 2015 09:38:01 +0000 (11:38 +0200) | ||
committer | Benjamin Mouchard <b-mouchard@ti.com> | |
Mon, 20 Apr 2015 09:38:01 +0000 (11:38 +0200) |
test/iqn2aid/src/aidSysBios.c | patch | blob | history | |
test/lte/k2l/c66/iqn2SecureLteDfeK2LTestProject.txt | [new file with mode: 0644] | patch | blob |
test/utils/cslUtils.c | patch | blob | history | |
test/utils/cslUtils.h | patch | blob | history | |
test/utils/iqn2_bios_secure.cfg | [new file with mode: 0644] | patch | blob |
test/wcdma/k2l/c66/iqn2SecureWcdmaDfeK2LTestProject.txt | [new file with mode: 0644] | patch | blob |
index b19fa9b3376c8507abd2d4518abc36d4f24b2053..08b9a2856f234eeb24db069ed8b76dcb2832f446 100644 (file)
#include <ti/sysbios/BIOS.h>
#include <ti/sysbios/knl/Task.h>
#include <ti/sysbios/knl/Swi.h>
+#include <ti/sysbios/family/c64p/Hwi.h>
#include <stdlib.h>
#include <string.h>
#include <ti/drv/qmss/qmss_drv.h>
#include <ti/drv/dfe/dfe_drv.h>
+#if SECDEV ==1
+#include <ti/sk/sk.h>
+#endif
+
#include <ti/drv/iqn2/test/utils/cslUtils.h>
#include <ti/drv/iqn2/test/utils/mnavUtils.h>
#include <ti/drv/iqn2/test/utils/lteUtilsMulti.h>
NUM_AXCS_LTE80_AID, //number of LTE80 AxC.
};
+#if SECDEV==1
+/* Secure context for SK */
+#pragma DATA_SECTION(scwp,".neardata");
+static int scwp, skErrCode;
+#endif
+
volatile unsigned int testcheck = 1; // reports pass fail at the end of the test
void exceptionWcdmaSwi();
#endif
+#if SECDEV==1
+int registerScwpWrap (void)
+{
+ SK_registerSCWP(&scwp, 1);
+ scwp = SK_allocSC(0, 0xffffffff);
+ return 0;
+}
+#endif
+
// Register/Memory Read/Write Functions
void reg_write_32(Uint32 addr,uint32_t write_data)
{
eeWcdmaSwi = Swi_create(exceptionWcdmaSwi, &swiParams, NULL);
#endif
+#if SECDEV==1
+ registerScwpWrap();
+#endif
BIOS_start();
}
#endif
#ifdef USERM
UTILS_resetRm();
+#endif
+#if SECDEV==1
+ skErrCode = SK_freeSC(scwp);
#endif
System_abort("End of Program!!\n");
diff --git a/test/lte/k2l/c66/iqn2SecureLteDfeK2LTestProject.txt b/test/lte/k2l/c66/iqn2SecureLteDfeK2LTestProject.txt
--- /dev/null
@@ -0,0 +1,28 @@
+ -ccs.configurations K2L_LBACK K2L_LBACK_lte10 K2L_LBACK_lte15
+ -ccs.setCompilerOptions " -DDEVICE_K2L -DLTE_RATE=20 -DLTE_ONLY -DDFE_BB_LOOPBACK=1 -DDFE_RATE=20 -DUSESYSBIOS -DSECDEV=1 " @configurations K2L_LBACK
+ -ccs.setCompilerOptions " -DDEVICE_K2L -DLTE_RATE=10 -DLTE_ONLY -DDFE_BB_LOOPBACK=1 -DDFE_RATE=10 -DUSESYSBIOS -DSECDEV=1 " @configurations K2L_LBACK_lte10
+ -ccs.setCompilerOptions " -DDEVICE_K2L -DLTE_RATE=15 -DLTE_ONLY -DDFE_BB_LOOPBACK=1 -DDFE_RATE=10 -DUSESYSBIOS -DSECDEV=1 " @configurations K2L_LBACK_lte15
+ -ccs.setCompilerOptions "-I${CG_TOOL_ROOT}/include "
+ -ccs.setCompilerOptions "-I${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/utils "
+ -ccs.setCompilerOptions "-I${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/iqn2fl/include "
+ -ccs.setCompilerOptions "-I${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/lte/config "
+ -ccs.setCompilerOptions "-I${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/iqn2aid/src "
+ -ccs.setCompilerOptions "-mv6600 -g --mem_model:data=far "
+ -ccs.setLinkerOptions "-i${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/utils"
+ -ccs.setLinkerOptions "-i${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/iqn2fl"
+ -ccs.setLinkerOptions "--stack_size=0x20000 --heap_size=0x20000"
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/iqn2aid/src/aidSysBios.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/cslUtils.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/mnavUtils.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/lteUtilsMulti.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/iqn2_osal.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/load_dfe.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/start_dfe.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/open_dfe.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/dfe_syncgen.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/cpp_simple_test.c @configuration K2L_LBACK
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/iqn2fl/dfe_init_lte.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/iqn2_bios_secure.cfg
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/iqn2_bios.cmd
+ -rtsc.enableRtsc
+
\ No newline at end of file
diff --git a/test/utils/cslUtils.c b/test/utils/cslUtils.c
index 02a72c50560338dd8a17d4cf9b64aa14358a8a27..d0041760702871a939534dfaa387fa90111ed987 100644 (file)
--- a/test/utils/cslUtils.c
+++ b/test/utils/cslUtils.c
void
UTILS_iqn2IntcSetup()
{
- CicRegs[0]= (CSL_CPINTCRegs * ) CSL_CIC_0_REGS; //CSL_CP_INTC_0_REGS;
-// CicRegs[1]= (CSL_CPINTCRegs * ) CSL_CIC_1_REGS; //CSL_CP_INTC_1_REGS;
- CicRegs[2]= (CSL_CPINTCRegs * ) CSL_CIC_2_REGS; //CSL_CP_INTC_2_REGS;
-
- CicRegs[0]->ENABLE_CLR_INDEX_REG = CSL_CPINTC_ENABLE_CLR_INDEX_REG_RESETVAL;
- CicRegs[1]->ENABLE_CLR_INDEX_REG = CSL_CPINTC_ENABLE_CLR_INDEX_REG_RESETVAL;
- CicRegs[2]->ENABLE_CLR_INDEX_REG = CSL_CPINTC_ENABLE_CLR_INDEX_REG_RESETVAL;
-
- //Clear all events
- IntcRegs->EVTCLR[0]= 0xFFFFFFFF;
- IntcRegs->EVTCLR[1]= 0xFFFFFFFF;
- IntcRegs->EVTCLR[2]= 0xFFFFFFFF;
- IntcRegs->EVTCLR[3]= 0xFFFFFFFF;
/* Routing Iqn2 exception event thru INTC0 */
hIntc0Handle = CSL_CPINTC_open(0); // handle for INTC0
CSL_CPINTC_disableAllHostInterrupt(hIntc0Handle);
CSL_CPINTC_setNestingMode(hIntc0Handle, CPINTC_NO_NESTING);
CSL_CPINTC_mapSystemIntrToChannel (hIntc0Handle, CSL_CIC0_IQNET_PKTDMA_STARVE , 8); // assuming core0
+ CSL_CPINTC_clearSysInterrupt (hIntc0Handle, CSL_CIC0_IQNET_PKTDMA_STARVE );
CSL_CPINTC_enableSysInterrupt (hIntc0Handle, CSL_CIC0_IQNET_PKTDMA_STARVE );
#ifndef USESYSBIOS
// Disable Interrupts
key = _disable_interrupts();
- // Cleanup the prefetch buffer.
- CSL_XMC_invalidatePrefetchBuffer();
-
- // Change cache sizes
- CACHE_setL1DSize (CACHE_L1_32KCACHE);
- CACHE_setL1PSize (CACHE_L1_32KCACHE);
+ ti_sysbios_family_c66_Cache_invPrefetchBuffer();
+ Cache_setMar((xdc_Ptr*)0x0c000000,0x00200000,Cache_Mar_ENABLE);
// Reenable Interrupts.
_restore_interrupts(key);
// Disable Interrupts
key = _disable_interrupts();
- // Cleanup the prefetch buffer also.
- CSL_XMC_invalidatePrefetchBuffer();
-
- // Invalidate the cache.
- CACHE_invL1d(ptr, size, CACHE_FENCE_WAIT);
+ ti_sysbios_family_c66_Cache_invPrefetchBuffer();
+ Cache_inv((void *)ptr, size, Cache_Type_ALL, 1);
asm (" nop 4");
asm (" nop 4");
key = _disable_interrupts();
// Writeback the contents of the cache.
- CACHE_wbL1d(ptr, size, CACHE_FENCE_WAIT);
+ Cache_wb((void *)ptr, size, Cache_Type_ALL, 1);
asm (" nop 4");
asm (" nop 4");
key = _disable_interrupts();
// Writeback and Invalidate the contents of the cache.
- CACHE_wbInvL1d(ptr, size, CACHE_FENCE_WAIT);
+ Cache_wbInv((void *)ptr, size, Cache_Type_ALL, 1);
asm (" nop 4");
asm (" nop 4");
diff --git a/test/utils/cslUtils.h b/test/utils/cslUtils.h
index ff8dc65d9a91a0372fe4cbf9d420b7b194548c0a..f61ae1b1f72e19e3b6f6fbef48c864290abf32e0 100644 (file)
--- a/test/utils/cslUtils.h
+++ b/test/utils/cslUtils.h
#include <ti/csl/cslr_device.h>
#ifdef _TMS320C6X
-#include <ti/csl/csl_cache.h>
-#include <ti/csl/csl_cacheAux.h>
+#include <ti/sysbios/family/c66/Cache.h>
#include <ti/csl/csl_xmcAux.h>
#include <ti/csl/src/intc/csl_intc.h>
#include <ti/csl/csl_tmr.h>
diff --git a/test/utils/iqn2_bios_secure.cfg b/test/utils/iqn2_bios_secure.cfg
--- /dev/null
@@ -0,0 +1,109 @@
+/*
+ * Copyright 2013 by Texas Instruments Incorporated.
+ *
+ * All rights reserved. Property of Texas Instruments Incorporated.
+ * Restricted rights to use, duplicate or disclose this code are
+ * granted through contract.
+ *
+ */
+
+/* THIS FILE WAS GENERATED BY ti.sysbios.genx */
+
+/*
+ * ======== iqn2_test.cfg ========
+ *
+ */
+
+environment['xdc.cfg.check.fatal'] = 'false';
+
+var Program = xdc.useModule('xdc.cfg.Program');
+
+/* define stack and heap sizes */
+Program.stack = 0x20000;
+Program.heap = 0x20000;
+
+var BIOS = xdc.useModule('ti.sysbios.BIOS');
+BIOS.useSK = true;
+BIOS.libType = BIOS.LibType_Custom;
+
+var Task = xdc.useModule('ti.sysbios.knl.Task');
+var Semaphore = xdc.useModule('ti.sysbios.knl.Semaphore');
+var Swi = xdc.useModule('ti.sysbios.knl.Swi');
+var Hwi = xdc.useModule('ti.sysbios.family.c64p.Hwi');
+var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
+var Memory = xdc.useModule('xdc.runtime.Memory');
+
+var Cache = xdc.useModule('ti.sysbios.family.c66.Cache');
+/* Modules needed to use EDMA3 LLD */
+var ECM = xdc.useModule('ti.sysbios.family.c64p.EventCombiner');
+xdc.useModule('ti.sysbios.family.c66.tci66xx.CpIntc');
+xdc.useModule('ti.sysbios.hal.Cache');
+
+var EDMA = xdc.loadPackage('ti.sdo.edma3.drv');
+
+var System = xdc.useModule('xdc.runtime.System');
+SysStd = xdc.useModule('xdc.runtime.SysStd');
+System.SupportProxy = SysStd;
+
+var name = "iqn2test";
+
+/* Load and use the CPPI, QMSS & CSL packages */
+var devType = "k2l"
+var cslSettings = xdc.useModule ('ti.csl.Settings');
+cslSettings.deviceType = devType;
+
+var Cppi = xdc.loadPackage('ti.drv.cppi');
+var Qmss = xdc.loadPackage('ti.drv.qmss');
+var Iqn2 = xdc.loadPackage('ti.drv.iqn2');
+var Dfe = xdc.loadPackage('ti.drv.dfe');
+/*var DspLib = xdc.loadPackage('ti.dsplib');*/
+print(Program.platform.$name);
+if (Program.platform.$name.match(/evmTCI6630/)) {
+ var Platform = xdc.loadPackage('ti.platforms.evmTCI6630K2L');
+}
+/****** IPC - Shared Memory Settings ********/
+/* IPC packages */
+var Ipc = xdc.useModule('ti.sdo.ipc.Ipc');
+var Settings = xdc.module('ti.sdo.ipc.family.Settings');
+var ListMP = xdc.useModule('ti.sdo.ipc.ListMP');
+var GateMP = xdc.useModule('ti.sdo.ipc.GateMP');
+var SharedRegion = xdc.useModule('ti.sdo.ipc.SharedRegion');
+var HeapMemMP = xdc.useModule('ti.sdo.ipc.heaps.HeapMemMP');
+var MultiProc = xdc.useModule('ti.sdo.utils.MultiProc');
+
+var memmap = Program.cpu.memoryMap;
+
+/* Configure the shared memory heap for shared memory allocations required by the
+* CPPI and QMSS Libraries */
+//SharedRegion.translate = false;
+
+/* Create a shared memory heap */
+//MultiProc.setConfig(null, ["CORE0", "CORE1"]);
+MultiProc.setConfig(null, ["CORE0", "CORE1", "CORE2", "CORE3"]);
+
+/* Synchronize all processors (this will be done in Ipc_start) */
+Ipc.procSync = Ipc.ProcSync_ALL;
+
+/* To avoid wasting shared memory for Notify and MessageQ transports */
+for (var i = 0; i < MultiProc.numProcessors; i++) {
+ Ipc.setEntryMeta({
+ remoteProcId: i,
+ setupNotify: false,
+ setupMessageQ: false,
+ });
+}
+
+/* Create a shared memory */
+/*SharedRegion.setEntryMeta(0,
+* { base: 0x0C010000,
+* len: 0x00100000,
+* ownerProcId: 0,
+* isValid: true,
+* name: "sharemem",
+* });
+*/
+
+/*
+ * @(#) ti.sysbios.genx; 2, 0, 0, 0,275; 4-29-2009 15:45:06; /db/vtree/library/trees/avala/avala-k25x/src/
+ */
+
diff --git a/test/wcdma/k2l/c66/iqn2SecureWcdmaDfeK2LTestProject.txt b/test/wcdma/k2l/c66/iqn2SecureWcdmaDfeK2LTestProject.txt
--- /dev/null
@@ -0,0 +1,24 @@
+ -ccs.configurations K2L_LBACK K2L_LBACK_UL
+ -ccs.setCompilerOptions " -DDEVICE_K2L -DWCDMA_ONLY -DUSESYSBIOS -DDFE_BB_LOOPBACK=1 -DSECDEV=1 " @configurations K2L_LBACK
+ -ccs.setCompilerOptions " -DDEVICE_K2L -DWCDMA_UL -DWCDMA_ONLY -DUSESYSBIOS -DDFE_BB_LOOPBACK=1 -DSECDEV=1 " @configurations K2L_LBACK_UL
+ -ccs.setCompilerOptions "-I${CG_TOOL_ROOT}/include "
+ -ccs.setCompilerOptions "-I${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/utils "
+ -ccs.setCompilerOptions "-I${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/iqn2fl/include "
+ -ccs.setCompilerOptions "-I${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/wcdma/config "
+ -ccs.setCompilerOptions "-mv6600 -g --mem_model:data=far "
+ -ccs.setLinkerOptions "-i${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/utils"
+ -ccs.setLinkerOptions "-i${IQN2_INSTALL_PATH}/ti/drv/iqn2/test/iqn2fl"
+ -ccs.setLinkerOptions "--stack_size=0x20000 --heap_size=0x20000"
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/load_dfe.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/start_dfe.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/open_dfe.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/dfe_syncgen.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/cslUtils.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/wcdmaUtils.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/iqn2_osal.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/iqn2aid/src/aidSysBios.c
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/iqn2_bios_secure.cfg
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/utils/iqn2_bios.cmd
+ -ccs.linkFile IQN2_INSTALL_PATH/ti/drv/iqn2/test/iqn2fl/dfe_init_wcdma.c
+ -rtsc.enableRtsc
+
\ No newline at end of file