]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/pdk.git/blob - packages/ti/transport/ndk/nimu/example/CCLink/am572x/m4/bios/cclink_idkAM572x.cfg
transport: add to PDK
[processor-sdk/pdk.git] / packages / ti / transport / ndk / nimu / example / CCLink / am572x / m4 / bios / cclink_idkAM572x.cfg
1 /**
2  *  \file   nimu_idk.cfg
3  *
4  *  \brief  Sysbios config file for nimu example project on AM572x GP EVM.
5  *
6  */
8 /*
9  * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
10  *
11  * Redistribution and use in source and binary forms, with or without
12  * modification, are permitted provided that the following conditions
13  * are met:
14  *
15  * Redistributions of source code must retain the above copyright
16  * notice, this list of conditions and the following disclaimer.
17  *
18  * Redistributions in binary form must reproduce the above copyright
19  * notice, this list of conditions and the following disclaimer in the
20  * documentation and/or other materials provided with the
21  * distribution.
22  *
23  * Neither the name of Texas Instruments Incorporated nor the names of
24  * its contributors may be used to endorse or promote products derived
25  * from this software without specific prior written permission.
26  *
27  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
28  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
29  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
31  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
32  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
33  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
34  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
35  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
36  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
37  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
38  *
39  */
40 /* ================ General configuration ================ */
41 var enableStaticIP         = 1;
42 var mode = Program.build.cfgArgs.MODE;
44 var Defaults            = xdc.useModule('xdc.runtime.Defaults');
45 var Diags                       = xdc.useModule('xdc.runtime.Diags');
46 var Error                       = xdc.useModule('xdc.runtime.Error');
47 var Log                         = xdc.useModule('xdc.runtime.Log');
48 var LoggerBuf           = xdc.useModule('xdc.runtime.LoggerBuf');
49 var Main                        = xdc.useModule('xdc.runtime.Main');
50 var System                      = xdc.useModule('xdc.runtime.System');
51 var Text                        = xdc.useModule('xdc.runtime.Text');
52 var Timer = xdc.useModule('ti.sysbios.timers.dmtimer.Timer');
53 var Task                        = xdc.useModule('ti.sysbios.knl.Task');
54 var Mailbox = xdc.useModule('ti.sysbios.knl.Mailbox');
55 var Semaphore           = xdc.useModule('ti.sysbios.knl.Semaphore');
56 var SysMin                      = xdc.useModule('xdc.runtime.SysMin');
57 /* NDK modules */
58 var Global                      = xdc.useModule('ti.ndk.config.Global');
59 var Ip                          = xdc.useModule('ti.ndk.config.Ip');
60 var Tcp             = xdc.useModule('ti.ndk.config.Tcp');
61 var Udp             = xdc.useModule('ti.ndk.config.Udp');
62 var Telnet          = xdc.useModule('ti.ndk.config.Telnet');
63 /* 
64  * Program.argSize sets the size of the .args section. 
65  * The examples don't use command line args so argSize is set to 0.
66  */
67 /* Program.argSize = 0x0; */
69 /*
70  * Uncomment this line to globally disable Asserts.
71  * All modules inherit the default from the 'Defaults' module.  You
72  * can override these defaults on a per-module basis using Module.common$. 
73  * Disabling Asserts will save code space and improve runtime performance.
74 Defaults.common$.diags_ASSERT = Diags.ALWAYS_OFF;
75  */
77 /*
78  * Uncomment this line to keep module names from being loaded on the target.
79  * The module name strings are placed in the .const section. Setting this
80  * parameter to false will save space in the .const section.  Error and
81  * Assert messages will contain an "unknown module" prefix instead
82  * of the actual module name.
83 Defaults.common$.namedModule = false;
84  */
86 /*
87  * Minimize exit handler array in System.  The System module includes
88  * an array of functions that are registered with System_atexit() to be
89  * called by System_exit().
90  */
91 System.maxAtexitHandlers = 4;       
93 /* 
94  * Uncomment this line to disable the Error print function.  
95  * We lose error information when this is disabled since the errors are
96  * not printed.  Disabling the raiseHook will save some code space if
97  * your app is not using System_printf() since the Error_print() function
98  * calls System_printf().
99 Error.raiseHook = null;
100  */
102 /* 
103  * Uncomment this line to keep Error, Assert, and Log strings from being
104  * loaded on the target.  These strings are placed in the .const section.
105  * Setting this parameter to false will save space in the .const section.
106  * Error, Assert and Log message will print raw ids and args instead of
107  * a formatted message.
108 Text.isLoaded = false;
109  */
111 /*
112  * Uncomment this line to disable the output of characters by SysMin
113  * when the program exits.  SysMin writes characters to a circular buffer.
114  * This buffer can be viewed using the SysMin Output view in ROV.
115 SysMin.flushAtExit = false;
116  */
118 /* 
119  * Create and install logger for the whole system
120  */
121 var loggerBufParams = new LoggerBuf.Params();
122 loggerBufParams.numEntries = 16;
123 var logger0 = LoggerBuf.create(loggerBufParams);
124 Defaults.common$.logger = logger0;
125 Main.common$.diags_INFO = Diags.ALWAYS_ON;
127 System.SupportProxy = SysMin;
129 /* ================ BIOS configuration ================ */
131 var BIOS = xdc.useModule('ti.sysbios.BIOS');
132 /*
133  * Build a custom SYS/BIOS library from sources.
134  */
135 BIOS.libType = BIOS.LibType_Custom;
136  
137 /*
138  * The BIOS module will create the default heap for the system.
139  * Specify the size of this default heap.
140  */
141 BIOS.heapSize = 0xB0000;
145 if (enableStaticIP)
147     /* Settings for static IP configuration */
148         Ip.ResolveIP = false;
149         Ip.CallByIP = false;
150         Ip.autoIp = false;
151 if (mode == "master")
153     Ip.address = "192.168.3.100";
155 else
157     Ip.address = "192.168.3.4";
159     Ip.mask = "255.255.255.0";
160     Ip.gatewayIpAddr = "192.168.3.1";
162 else
164     Ip.dhcpClientMode = Ip.CIS_FLG_IFIDXVALID;
167 Global.ndkTickPeriod = 100;
168 Global.kernTaskPriLevel = 11;
169 Global.serviceReportHook = null;
170 Global.IPv6 = false;
171 Global.enableCodeGeneration = true;
172 Global.pktNumFrameBufs = 192;
174 Task.defaultStackSize = 4096;
175 Task.idleTaskStackSize = 4096;
177 /* ================ Driver configuration ================ */
178 var socType           = "am572x";
179 /*use CSL package*/
180 var Csl = xdc.loadPackage('ti.csl');
181 Csl.Settings.deviceType = socType;
183 /* Load the OSAL package */ 
184 var osType = "tirtos";
185 var Osal = xdc.useModule('ti.osal.Settings');
186 Osal.osType = osType;
189 /* Load the UART package */ 
190 var Uart                        = xdc.loadPackage('ti.drv.uart');
191 /* Load the I2c package */ 
192 var I2c                         = xdc.loadPackage('ti.drv.i2c');
193 /* Load the PRUSS package */ 
194 var Pruss = xdc.loadPackage('ti.drv.pruss');
195 Pruss.Settings.socType  = socType;
197 /* Load the board package */
198 var Board = xdc.loadPackage('ti.board');
199 Board.Settings.boardName = "idkAM572x";
201 /* Load Profiling package */
202 var Utils = xdc.loadPackage('ti.utils.profiling');
204 /* Load the Emac package */
205 var Emac = xdc.loadPackage('ti.drv.emac');
206 Emac.Settings.socType  = socType;
209 /* Load the nimu package */
210 var Nimu                = xdc.loadPackage('ti.transport.ndk.nimu');
211 Nimu.Settings.socType  = socType;
213 /* Enable cache */
214 var Cache       = xdc.useModule('ti.sysbios.hal.unicache.Cache');
215 Cache.enableCache = true;
216 /* Use AMMU module */
217 var AMMU            = xdc.useModule('ti.sysbios.hal.ammu.AMMU');
219 /* Large PAGE */
220 AMMU.largePages[0].pageEnabled = AMMU.Enable_YES;
221 AMMU.largePages[0].logicalAddress = 0x40000000;
222 AMMU.largePages[0].translatedAddress = 0x40000000;
223 AMMU.largePages[0].translationEnabled = AMMU.Enable_YES;
224 AMMU.largePages[0].size = AMMU.Large_512M;
225 AMMU.largePages[0].L1_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
226 AMMU.largePages[0].L1_posted = AMMU.PostedPolicy_NON_POSTED;
227 AMMU.largePages[0].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
228 AMMU.largePages[0].L2_posted = AMMU.PostedPolicy_NON_POSTED;
230 AMMU.largePages[1].pageEnabled = AMMU.Enable_YES;
231 AMMU.largePages[1].logicalAddress = 0x80000000;
232 AMMU.largePages[1].translatedAddress = 0x80000000;
233 AMMU.largePages[1].translationEnabled = AMMU.Enable_YES;
234 AMMU.largePages[1].size = AMMU.Large_512M;
235 AMMU.largePages[1].L1_writePolicy = AMMU.WritePolicy_WRITE_BACK;
236 AMMU.largePages[1].L1_allocate = AMMU.AllocatePolicy_ALLOCATE;
237 AMMU.largePages[1].L1_cacheable = AMMU.CachePolicy_CACHEABLE;
238 AMMU.largePages[1].L1_posted = AMMU.PostedPolicy_POSTED;
239 AMMU.largePages[1].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
240 AMMU.largePages[1].L2_posted = AMMU.PostedPolicy_NON_POSTED;
242 AMMU.largePages[2].pageEnabled = AMMU.Enable_YES;
243 AMMU.largePages[2].logicalAddress = 0xA0000000;
244 AMMU.largePages[2].translatedAddress = 0xA0000000;
245 AMMU.largePages[2].translationEnabled = AMMU.Enable_YES;
246 AMMU.largePages[2].size = AMMU.Large_512M;
247 AMMU.largePages[2].L1_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
248 AMMU.largePages[2].L1_posted = AMMU.PostedPolicy_NON_POSTED;
249 AMMU.largePages[2].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
250 AMMU.largePages[2].L2_posted = AMMU.PostedPolicy_NON_POSTED;
252 AMMU.largePages[3].pageEnabled = AMMU.Enable_YES;
253 AMMU.largePages[3].logicalAddress = 0x60000000;
254 AMMU.largePages[3].translatedAddress = 0x40000000;
255 AMMU.largePages[3].translationEnabled = AMMU.Enable_YES;
256 AMMU.largePages[3].size = AMMU.Large_512M;
257 AMMU.largePages[3].L1_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
258 AMMU.largePages[3].L1_posted = AMMU.PostedPolicy_NON_POSTED;
259 AMMU.largePages[3].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
260 AMMU.largePages[3].L2_posted = AMMU.PostedPolicy_NON_POSTED;
262 /* Medium Page */
263 AMMU.mediumPages[0].pageEnabled = AMMU.Enable_YES;
264 AMMU.mediumPages[0].logicalAddress = 0x00300000;
265 AMMU.mediumPages[0].translatedAddress = 0x40300000;
266 AMMU.mediumPages[0].translationEnabled = AMMU.Enable_YES;
267 AMMU.mediumPages[0].size = AMMU.Medium_256K;
269 AMMU.mediumPages[1].pageEnabled = AMMU.Enable_YES;
270 AMMU.mediumPages[1].logicalAddress = 0x00400000;
271 AMMU.mediumPages[1].translatedAddress = 0x40400000;
272 AMMU.mediumPages[1].translationEnabled = AMMU.Enable_YES;
273 AMMU.mediumPages[1].size = AMMU.Medium_256K;
274 AMMU.mediumPages[1].L1_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
275 AMMU.mediumPages[1].L1_posted = AMMU.PostedPolicy_POSTED;
276 AMMU.mediumPages[1].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
277 AMMU.mediumPages[1].L2_posted = AMMU.PostedPolicy_NON_POSTED;
279 /* Small Page */
280 AMMU.smallPages[0].pageEnabled = AMMU.Enable_YES;
281 AMMU.smallPages[0].logicalAddress = 0x00000000;
282 AMMU.smallPages[0].translatedAddress = 0x55020000;
283 AMMU.smallPages[0].translationEnabled = AMMU.Enable_YES;
284 AMMU.smallPages[0].size = AMMU.Small_16K;
285 AMMU.smallPages[0].volatileQualifier = AMMU.Volatile_FOLLOW;
286 AMMU.smallPages[0].L1_cacheable = AMMU.CachePolicy_CACHEABLE;
287 AMMU.smallPages[0].L1_posted = AMMU.PostedPolicy_NON_POSTED;
288 AMMU.smallPages[0].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
289 AMMU.smallPages[0].L2_posted = AMMU.PostedPolicy_NON_POSTED;
291 AMMU.smallPages[1].pageEnabled = AMMU.Enable_YES;
292 AMMU.smallPages[1].logicalAddress = 0x40000000;
293 AMMU.smallPages[1].translatedAddress = 0x55080000;
294 AMMU.smallPages[1].translationEnabled = AMMU.Enable_YES;
295 AMMU.smallPages[1].size = AMMU.Small_16K;
296 AMMU.smallPages[1].volatileQualifier = AMMU.Volatile_FOLLOW;
297 AMMU.smallPages[1].L1_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
298 AMMU.smallPages[1].L1_posted = AMMU.PostedPolicy_NON_POSTED;
299 AMMU.smallPages[1].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
300 AMMU.smallPages[1].L2_posted = AMMU.PostedPolicy_NON_POSTED;
302 AMMU.smallPages[2].pageEnabled = AMMU.Enable_YES;
303 AMMU.smallPages[2].logicalAddress = 0x00004000;
304 AMMU.smallPages[2].translatedAddress = 0x55024000;
305 AMMU.smallPages[2].translationEnabled = AMMU.Enable_YES;
306 AMMU.smallPages[2].size = AMMU.Small_16K;
307 AMMU.smallPages[2].L1_cacheable = AMMU.CachePolicy_CACHEABLE;
308 AMMU.smallPages[2].L1_posted = AMMU.PostedPolicy_NON_POSTED;
309 AMMU.smallPages[2].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
310 AMMU.smallPages[2].L2_posted = AMMU.PostedPolicy_NON_POSTED;
312 AMMU.smallPages[3].pageEnabled = AMMU.Enable_YES;
313 AMMU.smallPages[3].logicalAddress = 0x00008000;
314 AMMU.smallPages[3].translatedAddress = 0x55028000;
315 AMMU.smallPages[3].translationEnabled = AMMU.Enable_YES;
316 AMMU.smallPages[3].size = AMMU.Small_16K;
317 AMMU.smallPages[3].L1_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
318 AMMU.smallPages[3].L1_posted = AMMU.PostedPolicy_NON_POSTED;
319 AMMU.smallPages[3].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
320 AMMU.smallPages[3].L2_posted = AMMU.PostedPolicy_NON_POSTED;
322 AMMU.smallPages[4].pageEnabled = AMMU.Enable_YES;
323 AMMU.smallPages[4].logicalAddress = 0x20000000;
324 AMMU.smallPages[4].translatedAddress = 0x55020000;
325 AMMU.smallPages[4].translationEnabled = AMMU.Enable_YES;
326 AMMU.smallPages[4].size = AMMU.Small_16K;
327 AMMU.smallPages[4].L1_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
328 AMMU.smallPages[4].L1_posted = AMMU.PostedPolicy_NON_POSTED;
329 AMMU.smallPages[4].L2_cacheable = AMMU.CachePolicy_NON_CACHEABLE;
330 AMMU.smallPages[4].L2_posted = AMMU.PostedPolicy_NON_POSTED;