1 /*
2 * Copyright (c) 2010, Texas Instruments Incorporated
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 * */
32 /*!
33 * ======== MEMTCM ========
34 * IRES Resman and Protocol Implementation to manager ARM TCM memory on DM365
35 *
36 */
37 @Template("./MEMTCM.xdt")
38
39 metaonly module MEMTCM {
40
41 /*
42 * ======== cmemBlockId ========
43 * Block-id should be the same as that used by CMEM to represent the TCM
44 * memory block. This blockId is used to allocate memory from TCM
45 * (via CMEM). For e.g, if the insmod command of CMEM is as follows for TCM:
46 * insmod cmem.ko allowOverlap=1 phys_start_1=0x00001000
47 * phys_end_1=0x00008000 pools_1=1x28672
48 * then the cmemBlockId should be set to 1, etc.
49 */
50 config Int cmemBlockId;
51
52 /*!
53 * ======== ipcKeyBase ========
54 * Linux only. Base value of keys of Linux IPC objects used by
55 * MEMTCM. The IPC objects created by MEMTCM will use keys starting
56 * at this
57 * value, and incrementing with each new object. There are currently
58 * three IPC objects, so keys in the range of ipcKeyBase to ipcKeyBase + 2
59 * will be reserved for MEMTCM. The default value of ipcKeyBase is
60 * ascii code for "MCTM".
61 *
62 * WARNING: This value should only be changed if it conflicts with
63 * another IPC key in the system that cannot be changed. If this value
64 * is changed, all programs using VICP2 that will be run simultaneously
65 * must have the ipcKeyBase configured to the new value.
66 * @_nodoc
67 */
68 config UInt ipcKeyBase = 0x4D43544D;
69
70
71 /* @_nodoc */
72 const Bool autoRegister = true;
73
74 /* @_nodoc */
75 config bool debug = false;
76
77 /* @_nodoc */
78 config bool trace = false;
79 }
80
81 /*
82 * @(#) ti.sdo.fc.ires.memtcm; 1, 0, 0,45; 12-1-2010 17:25:17; /db/atree/library/trees/fc/fc-p01x/src/ xlibrary
83
84 */
85