/* * Copyright 2016 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. * */ environment['xdc.cfg.check.fatal'] = 'false'; /******************************************************************** ************************** BIOS Modules **************************** ********************************************************************/ var Memory = xdc.useModule('xdc.runtime.Memory'); var BIOS = xdc.useModule('ti.sysbios.BIOS'); var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem'); var Task = xdc.useModule('ti.sysbios.knl.Task'); var Idle = xdc.useModule('ti.sysbios.knl.Idle'); var SEM = xdc.useModule('ti.sysbios.knl.Semaphore'); var Event = xdc.useModule('ti.sysbios.knl.Event'); var Hwi = xdc.useModule('ti.sysbios.family.c64p.Hwi'); var System = xdc.useModule('xdc.runtime.System'); var SysStd = xdc.useModule('xdc.runtime.SysStd'); var EventCombiner = xdc.useModule('ti.sysbios.family.c64p.EventCombiner'); var Load = xdc.useModule('ti.sysbios.utils.Load'); System.SupportProxy = SysStd; /* * Enable Event Groups here and registering of ISR for specific GEM INTC is done * using EventCombiner_dispatchPlug() and Hwi_eventMap() APIs */ EventCombiner.eventGroupHwiNum[0] = 7; EventCombiner.eventGroupHwiNum[1] = 8; EventCombiner.eventGroupHwiNum[2] = 9; EventCombiner.eventGroupHwiNum[3] = 10; /* Default Heap Creation: Local L2 memory */ var heapMemParams = new HeapMem.Params(); heapMemParams.size = 20*1024; heapMemParams.sectionName = "systemHeap"; Program.global.heap0 = HeapMem.create(heapMemParams); Memory.defaultHeapInstance = Program.global.heap0; /* Enable BIOS Task Scheduler */ BIOS.taskEnabled = true; /* do not call update for load - Application will call it at inter-frame boundary */ Load.updateInIdle = false; /* Install idle function to sleep the DSP (using IDLE instruction). Note above Load.updateInIdle is false which allows to sleep the DSP in idle. Also, no other book-keeping etc functions should be installed in the idle thread */ Idle.addFunc('&MmwDemo_sleep'); /* var Defaults = xdc.useModule('xdc.runtime.Defaults'); var Log = xdc.useModule('xdc.runtime.Log'); var LoggerBuf = xdc.useModule('xdc.runtime.LoggerBuf'); var loggerBufParams = new LoggerBuf.Params(); loggerBufParams.numEntries = 1024; var logger0 = LoggerBuf.create(loggerBufParams); Defaults.common$.logger = logger0; var Diags = xdc.useModule('xdc.runtime.Diags'); Hwi.common$.logger = logger0; Hwi.common$.diags_USER1 = Diags.RUNTIME_ON; Hwi.common$.diags_USER2 = Diags.RUNTIME_ON; */ /* Task.common$.diags_USER1 = Diags.ALWAYS_ON; Task.common$.diags_USER2 = Diags.ALWAYS_ON; */ //Program.sectMap[".vecs"] = "VECTORS"; /* Some options to reduce BIOS code and data size, see BIOS User Guide section "Minimizing the Application Footprint" */ System.maxAtexitHandlers = 0; BIOS.swiEnabled = false; /* We don't use SWIs */ BIOS.libType = BIOS.LibType_Custom; /* Compile BIOS with size optimization at level 0. Note this line must be after "BIOS.libType = " statements (which overrides customCCOpts) to take effect. */ BIOS.customCCOpts += "-ms0"; //print(BIOS.customCCOpts); Task.defaultStackSize = 1500; Task.idleTaskStackSize = 800; Program.stack = 1048; /* for isr context */ var Text = xdc.useModule('xdc.runtime.Text'); Text.isLoaded = false;