OpenCores
URL https://opencores.org/ocsvn/c0or1k/c0or1k/trunk

Subversion Repositories c0or1k

[/] [c0or1k/] [trunk/] [config/] [cml/] [container_ruleset.template] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 drasko
symbols
2
CONT%(cn)d_TYPE_LINUX           'Linux Container'
3
CONT%(cn)d_TYPE_BAREMETAL       'Baremetal Container'
4
CONT%(cn)d_TYPE_POSIX           'POSIX Container'
5
CONT%(cn)d_OPT_NAME             'Container Name'
6
 
7
CONTAINERS              'Number of containers'
8
 
9
CONT%(cn)d_PHYSMEM_REGIONS      'Container %(cn)d Number of Physical Regions'
10
CONT%(cn)d_PHYS0_START  'Container %(cn)d Physical Region 0 Start Address'
11
CONT%(cn)d_PHYS0_END    'Container %(cn)d Physical Region 0 End Address'
12
CONT%(cn)d_PHYS1_START  'Container %(cn)d Physical Region 1 Start Address'
13
CONT%(cn)d_PHYS1_END    'Container %(cn)d Physical Region 1 End Address'
14
CONT%(cn)d_PHYS2_START  'Container %(cn)d Physical Region 2 Start Address'
15
CONT%(cn)d_PHYS2_END    'Container %(cn)d Physical Region 2 End Address'
16
CONT%(cn)d_PHYS3_START  'Container %(cn)d Physical Region 3 Start Address'
17
CONT%(cn)d_PHYS3_END    'Container %(cn)d Physical Region 3 End Address'
18
 
19
symbols
20
CONT%(cn)d_VIRTMEM_REGIONS      'Container %(cn)d Number of Virtual Regions'
21
CONT%(cn)d_VIRT0_START  'Container %(cn)d Virtual Region 0 Start Address'
22
CONT%(cn)d_VIRT0_END    'Container %(cn)d Virtual Region 0 End Address'
23
CONT%(cn)d_VIRT1_START  'Container %(cn)d Virtual Region 1 Start Address'
24
CONT%(cn)d_VIRT1_END    'Container %(cn)d Virtual Region 1 End Address'
25
CONT%(cn)d_VIRT2_START  'Container %(cn)d Virtual Region 2 Start Address'
26
CONT%(cn)d_VIRT2_END    'Container %(cn)d Virtual Region 2 End Address'
27
CONT%(cn)d_VIRT3_START  'Container %(cn)d Virtual Region 3 Start Address'
28
CONT%(cn)d_VIRT3_END    'Container %(cn)d Virtual Region 3 End Address'
29
CONT%(cn)d_VIRT4_START  'Container %(cn)d Virtual Region 4 Start Address'
30
CONT%(cn)d_VIRT4_END    'Container %(cn)d Virtual Region 4 End Address'
31
CONT%(cn)d_VIRT5_START  'Container %(cn)d Virtual Region 5 Start Address'
32
CONT%(cn)d_VIRT5_END    'Container %(cn)d Virtual Region 5 End Address'
33
 
34
# FIXME: We dont need to pass PAGER_LMA and PAGER_VMA to config.h now
35
# as we are using them just to derive other symbols, in this file only
36
CONT%(cn)d_PAGER_LMA            'Container %(cn)d Pager LMA'
37
CONT%(cn)d_PAGER_VMA            'Container %(cn)d Pager VMA'
38
 
39
CONT%(cn)d_PAGER_SHM_START      'Container %(cn)d Shared Mappings Region Start'
40
CONT%(cn)d_PAGER_SHM_END        'Container %(cn)d Shared Mappings Region End'
41
CONT%(cn)d_PAGER_TASK_START     'Container %(cn)d Task Address Space Region Start'
42
CONT%(cn)d_PAGER_TASK_END       'Container %(cn)d Task Address Space Region End'
43
CONT%(cn)d_PAGER_UTCB_START     'Container %(cn)d UTCB Mappings Region Start'
44
CONT%(cn)d_PAGER_UTCB_END       'Container %(cn)d UTCB Mappings Region End'
45
CONT%(cn)d_LINUX_ZRELADDR       'Container %(cn)d Linux ZRELADDR Parameter'
46
CONT%(cn)d_LINUX_PAGE_OFFSET    'Container %(cn)d Linux PAGE_OFFSET Parameter'
47
CONT%(cn)d_LINUX_PHYS_OFFSET    'Container %(cn)d Linux PHYS_OFFSET Parameter'
48
CONT%(cn)d_LINUX_ROOTFS_ADDRESS 'Container %(cn)d Linux ROOTFS Address'
49
 
50
default CONT%(cn)d_PAGER_LMA            from CONT%(cn)d_PHYS0_START
51
default CONT%(cn)d_PAGER_VMA            from CONT%(cn)d_VIRT0_START
52
default CONT%(cn)d_PAGER_SHM_START      from CONT%(cn)d_VIRT1_START
53
default CONT%(cn)d_PAGER_SHM_END        from CONT%(cn)d_VIRT1_END
54
default CONT%(cn)d_PAGER_TASK_START     from CONT%(cn)d_VIRT2_START
55
default CONT%(cn)d_PAGER_TASK_END       from CONT%(cn)d_VIRT2_END
56
default CONT%(cn)d_PAGER_UTCB_START     from CONT%(cn)d_VIRT3_START
57
default CONT%(cn)d_PAGER_UTCB_END       from CONT%(cn)d_VIRT3_END
58
default CONT%(cn)d_LINUX_ZRELADDR       from (CONT%(cn)d_LINUX_PHYS_OFFSET + 0x8000)
59
default CONT%(cn)d_LINUX_PAGE_OFFSET    from CONT%(cn)d_VIRT0_START
60
default CONT%(cn)d_LINUX_PHYS_OFFSET    from CONT%(cn)d_PHYS0_START
61
default CONT%(cn)d_LINUX_ROOTFS_ADDRESS from (CONT%(cn)d_LINUX_PHYS_OFFSET + 0x500000)
62
 
63
default CONT%(cn)d_VIRTMEM_REGIONS from (CONT%(cn)d_TYPE_POSIX==y ? 4 : 1)
64
default CONT%(cn)d_PHYSMEM_REGIONS from 1
65
 
66
# Define limits on virtual and physical memory regions of a _single_ container 0. Too much code!
67
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT1_START CONT%(cn)d_VIRT1_END
68
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT2_START CONT%(cn)d_VIRT2_END
69
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT3_START CONT%(cn)d_VIRT3_END
70
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT4_START CONT%(cn)d_VIRT4_END
71
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
72
 
73
when CONT%(cn)d_VIRTMEM_REGIONS < 3 suppress CONT%(cn)d_VIRT2_START CONT%(cn)d_VIRT2_END
74
when CONT%(cn)d_VIRTMEM_REGIONS < 3 suppress CONT%(cn)d_VIRT3_START CONT%(cn)d_VIRT3_END
75
when CONT%(cn)d_VIRTMEM_REGIONS < 3 suppress CONT%(cn)d_VIRT4_START CONT%(cn)d_VIRT4_END
76
when CONT%(cn)d_VIRTMEM_REGIONS < 3 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
77
 
78
when CONT%(cn)d_VIRTMEM_REGIONS < 4 suppress CONT%(cn)d_VIRT3_START CONT%(cn)d_VIRT3_END
79
when CONT%(cn)d_VIRTMEM_REGIONS < 4 suppress CONT%(cn)d_VIRT4_START CONT%(cn)d_VIRT4_END
80
when CONT%(cn)d_VIRTMEM_REGIONS < 4 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
81
 
82
when CONT%(cn)d_VIRTMEM_REGIONS < 5 suppress CONT%(cn)d_VIRT4_START CONT%(cn)d_VIRT4_END
83
when CONT%(cn)d_VIRTMEM_REGIONS < 5 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
84
 
85
when CONT%(cn)d_VIRTMEM_REGIONS < 6 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
86
 
87
 
88
when CONT%(cn)d_PHYSMEM_REGIONS < 2 suppress CONT%(cn)d_PHYS1_START CONT%(cn)d_PHYS1_END
89
when CONT%(cn)d_PHYSMEM_REGIONS < 2 suppress CONT%(cn)d_PHYS2_START CONT%(cn)d_PHYS2_END
90
when CONT%(cn)d_PHYSMEM_REGIONS < 2 suppress CONT%(cn)d_PHYS3_START CONT%(cn)d_PHYS3_END
91
 
92
when CONT%(cn)d_PHYSMEM_REGIONS < 3 suppress CONT%(cn)d_PHYS2_START CONT%(cn)d_PHYS2_END
93
when CONT%(cn)d_PHYSMEM_REGIONS < 3 suppress CONT%(cn)d_PHYS3_START CONT%(cn)d_PHYS3_END
94
 
95
when CONT%(cn)d_PHYSMEM_REGIONS < 4 suppress CONT%(cn)d_PHYS3_START CONT%(cn)d_PHYS3_END
96
 
97
# We assume kernel uses 0x0 - 0x40000 physical RAM.
98
# Physical Regions for containers should start after kernel.
99
require CONT%(cn)d_PHYS0_START >= 0x40000
100
require CONT%(cn)d_PHYS1_START >= 0x40000
101
require CONT%(cn)d_PHYS2_START >= 0x40000
102
require CONT%(cn)d_PHYS3_START >= 0x40000
103
 
104
# TODO: We can add check for end address of physical region to be
105
# less than RAM SIZE, need to find out RAM SIZE?
106
 
107
# Rules for Linux kernel parameters
108
require CONT%(cn)d_LINUX_ZRELADDR > CONT%(cn)d_LINUX_PHYS_OFFSET + 0x8000
109
 
110
# TODO: Do we want to check if PAGER_LMA/VMA lies in allocated memory regions
111
default CONT%(cn)d_PHYS0_START from ((%(cn)d == 0 ? 0x100000 : (0x100000 + %(cn)d * 0x1000000)) + RAM_BASE_PLAT)
112
default CONT%(cn)d_PHYS0_END    from (CONT%(cn)d_PHYS0_START + 0xD00000)
113
default CONT%(cn)d_PHYS1_START  from CONT%(cn)d_PHYS0_END
114
default CONT%(cn)d_PHYS1_END    from (CONT%(cn)d_PHYS1_START + 0x100000)
115
default CONT%(cn)d_PHYS2_START  from CONT%(cn)d_PHYS1_END
116
default CONT%(cn)d_PHYS2_END    from (CONT%(cn)d_PHYS2_START + 0x100000)
117
default CONT%(cn)d_PHYS3_START  from CONT%(cn)d_PHYS2_END
118
default CONT%(cn)d_PHYS3_END    from (CONT%(cn)d_PHYS3_START + 0x100000)
119
 
120
default CONT%(cn)d_VIRT0_START  from (%(cn)d == 0 ? 0xa0000000 : (0xa0000000 + %(cn)d * 0x10000000))
121
default CONT%(cn)d_VIRT0_END    from (CONT%(cn)d_VIRT0_START + 0x10000000)
122
default CONT%(cn)d_VIRT1_START  from (%(cn)d == 0 ? 0x80000000 : (0x80000000 + %(cn)d * 0x8000000))
123
default CONT%(cn)d_VIRT1_END    from (CONT%(cn)d_VIRT1_START + 0x8000000)
124
default CONT%(cn)d_VIRT2_START  from (%(cn)d == 0 ? 0x40000000 : (0x40000000 + %(cn)d * 0x10000000))
125
default CONT%(cn)d_VIRT2_END    from (CONT%(cn)d_VIRT2_START + 0x10000000)
126
default CONT%(cn)d_VIRT3_START  from (%(cn)d == 0 ? 0xf8100000 : (0xf8100000 + %(cn)d * 0x100000))
127
default CONT%(cn)d_VIRT3_END    from (CONT%(cn)d_VIRT3_START + 0x100000)
128
default CONT%(cn)d_VIRT4_START  from (%(cn)d == 0 ? 0x10000000 : (0x10000000 + %(cn)d * 0x10000000))
129
default CONT%(cn)d_VIRT4_END    from (CONT%(cn)d_VIRT4_START + 0x10000000)
130
default CONT%(cn)d_VIRT5_START  from 0xe0000000
131
default CONT%(cn)d_VIRT5_END    from 0xf0000000
132
 
133
default CONT%(cn)d_OPT_NAME from
134
(CONT%(cn)d_TYPE_LINUX==y) ? "linux%(cn)d" :
135
((CONT%(cn)d_TYPE_POSIX==y) ? "posix%(cn)d" :
136
((CONT%(cn)d_BAREMETAL_PROJ_HELLO_WORLD==y) ? "hello_world%(cn)d" :
137
((CONT%(cn)d_BAREMETAL_PROJ_THREADS_DEMO==y) ? "thread_demo%(cn)d" :
138
((CONT%(cn)d_BAREMETAL_PROJ_TEST_SUITE==y) ? "test_suite%(cn)d" :
139
((CONT%(cn)d_BAREMETAL_PROJ_UART_SERVICE==y) ? "uart_service%(cn)d" :
140
((CONT%(cn)d_BAREMETAL_PROJ_KMI_SERVICE==y) ? "kmi_service%(cn)d" :
141
((CONT%(cn)d_BAREMETAL_PROJ_TIMER_SERVICE==y) ? "timer_service%(cn)d" : "empty%(cn)d")))))))
142
 
143
when CONT%(cn)d_TYPE_LINUX==y suppress cont%(cn)d_default_pager_params
144
unless CONT%(cn)d_TYPE_POSIX==y suppress cont%(cn)d_posix_pager_params
145
unless CONT%(cn)d_TYPE_LINUX==y suppress cont%(cn)d_linux_pager_params
146
unless CONT%(cn)d_TYPE_BAREMETAL==y suppress cont%(cn)d_baremetal_params
147
 
148
# derive symbols, for cinfo.c, depending on the type of container selected
149
derive CONT%(cn)d_PAGER_LOAD_ADDR from (CONT%(cn)d_TYPE_LINUX==y) ? CONT%(cn)d_LINUX_PHYS_OFFSET : CONT%(cn)d_PAGER_LMA
150
derive CONT%(cn)d_PAGER_VIRT_ADDR from (CONT%(cn)d_TYPE_LINUX==y) ? CONT%(cn)d_LINUX_PAGE_OFFSET : CONT%(cn)d_PAGER_VMA
151
derive CONT%(cn)d_START_PC_ADDR from (CONT%(cn)d_TYPE_LINUX != y) ? CONT%(cn)d_PAGER_VMA : (CONT%(cn)d_LINUX_PAGE_OFFSET + CONT%(cn)d_LINUX_ZRELADDR - CONT%(cn)d_LINUX_PHYS_OFFSET)
152
 
153
symbols
154
cont%(cn)d_menu         'Container %(cn)d Parameters'
155
cont%(cn)d_physmem_list 'Container %(cn)d Physical Memory Regions (Capabilities)'
156
cont%(cn)d_virtmem_list 'Container %(cn)d Virtual Memory Regions (Capabilities)'
157
cont%(cn)d_device_list  'Container %(cn)d Devices (Capabilities)'
158
container%(cn)d_type    'Container %(cn)d Type'
159
container%(cn)d_options 'Container %(cn)d Options'
160
 
161
cont%(cn)d_linux_pager_params   'Container %(cn)d Linux Pager Parameters'
162
cont%(cn)d_default_pager_params 'Container %(cn)d Default Pager Parameters'
163
cont%(cn)d_posix_pager_params   'Container %(cn)d POSIX Pager Parameters'
164
 
165
cont%(cn)d_baremetal_params             'Baremetal Project'
166
CONT%(cn)d_BAREMETAL_PROJ_EMPTY         'Empty Project'
167
CONT%(cn)d_BAREMETAL_PROJ_HELLO_WORLD   'Hello World'
168
CONT%(cn)d_BAREMETAL_PROJ_THREADS_DEMO  'Thread Library Demo'
169
CONT%(cn)d_BAREMETAL_PROJ_TEST_SUITE    'Microkernel Tests'
170
CONT%(cn)d_BAREMETAL_PROJ_UART_SERVICE  'UART Service'
171
CONT%(cn)d_BAREMETAL_PROJ_TIMER_SERVICE 'Timer Service'
172
CONT%(cn)d_BAREMETAL_PROJ_KMI_SERVICE   'Keyboard Mouse Service'
173
 
174
choices cont%(cn)d_baremetal_params
175
        CONT%(cn)d_BAREMETAL_PROJ_EMPTY
176
        CONT%(cn)d_BAREMETAL_PROJ_HELLO_WORLD
177
        CONT%(cn)d_BAREMETAL_PROJ_THREADS_DEMO
178
        CONT%(cn)d_BAREMETAL_PROJ_TEST_SUITE
179
        CONT%(cn)d_BAREMETAL_PROJ_UART_SERVICE
180
        CONT%(cn)d_BAREMETAL_PROJ_TIMER_SERVICE
181
        CONT%(cn)d_BAREMETAL_PROJ_KMI_SERVICE
182
        default CONT%(cn)d_BAREMETAL_PROJ_EMPTY
183
 
184
menu cont%(cn)d_default_pager_params
185
        CONT%(cn)d_PAGER_LMA@
186
        CONT%(cn)d_PAGER_VMA@
187
 
188
menu cont%(cn)d_posix_pager_params
189
        CONT%(cn)d_PAGER_SHM_START@
190
        CONT%(cn)d_PAGER_SHM_END@
191
        CONT%(cn)d_PAGER_TASK_START@
192
        CONT%(cn)d_PAGER_TASK_END@
193
        CONT%(cn)d_PAGER_UTCB_START@
194
        CONT%(cn)d_PAGER_UTCB_END@
195
 
196
menu cont%(cn)d_linux_pager_params
197
        CONT%(cn)d_LINUX_PHYS_OFFSET@
198
        CONT%(cn)d_LINUX_ZRELADDR@
199
        CONT%(cn)d_LINUX_ROOTFS_ADDRESS@
200
        CONT%(cn)d_LINUX_PAGE_OFFSET@
201
 
202
menu cont%(cn)d_virtmem_list
203
        CONT%(cn)d_VIRTMEM_REGIONS%
204
        CONT%(cn)d_VIRT0_START@
205
        CONT%(cn)d_VIRT0_END@
206
        CONT%(cn)d_VIRT1_START@
207
        CONT%(cn)d_VIRT1_END@
208
        CONT%(cn)d_VIRT2_START@
209
        CONT%(cn)d_VIRT2_END@
210
        CONT%(cn)d_VIRT3_START@
211
        CONT%(cn)d_VIRT3_END@
212
        CONT%(cn)d_VIRT4_START@
213
        CONT%(cn)d_VIRT4_END@
214
        CONT%(cn)d_VIRT5_START@
215
        CONT%(cn)d_VIRT5_END@
216
 
217
menu cont%(cn)d_physmem_list
218
        CONT%(cn)d_PHYSMEM_REGIONS%
219
        CONT%(cn)d_PHYS0_START@
220
        CONT%(cn)d_PHYS0_END@
221
        CONT%(cn)d_PHYS1_START@
222
        CONT%(cn)d_PHYS1_END@
223
        CONT%(cn)d_PHYS2_START@
224
        CONT%(cn)d_PHYS2_END@
225
        CONT%(cn)d_PHYS3_START@
226
        CONT%(cn)d_PHYS3_END@
227
 
228
#
229
# Device menu and options per container
230
#
231
# FIXME: All this is to be moved to a per-platform description file.
232
#
233
symbols
234
cont%(cn)d_cap_device_uart1             'Container %(cn)d UART1 Menu'
235
cont%(cn)d_cap_device_uart2             'Container %(cn)d UART2 Menu'
236
cont%(cn)d_cap_device_uart3             'Container %(cn)d UART3 Menu'
237
cont%(cn)d_cap_device_timer1            'Container %(cn)d TIMER23 Menu'
238
cont%(cn)d_cap_device_keyboard0         'Container %(cn)d KEYBOARD0 Menu'
239
cont%(cn)d_cap_device_mouse0            'Container %(cn)d MOUSE0 Menu'
240
cont%(cn)d_cap_device_clcd0             'Container %(cn)d CLCD0 Menu'
241
 
242
CONT%(cn)d_CAP_DEVICE_UART1_USE         'Container %(cn)d UART1 Enable'
243
CONT%(cn)d_CAP_DEVICE_UART2_USE         'Container %(cn)d UART2 Enable'
244
CONT%(cn)d_CAP_DEVICE_UART3_USE         'Container %(cn)d UART3 Enable'
245
CONT%(cn)d_CAP_DEVICE_TIMER1_USE        'Container %(cn)d TIMER23 Enable'
246
CONT%(cn)d_CAP_DEVICE_KEYBOARD0_USE     'Container %(cn)d KEYBOARD0 Enable'
247
CONT%(cn)d_CAP_DEVICE_MOUSE0_USE        'Container %(cn)d MOUSE0 Enable'
248
CONT%(cn)d_CAP_DEVICE_CLCD0_USE         'Container %(cn)d CLCD0 Enable'
249
 
250
default CONT%(cn)d_CAP_DEVICE_UART1_USE         from n
251
default CONT%(cn)d_CAP_DEVICE_UART2_USE         from n
252
default CONT%(cn)d_CAP_DEVICE_UART3_USE         from n
253
default CONT%(cn)d_CAP_DEVICE_TIMER1_USE        from n
254
default CONT%(cn)d_CAP_DEVICE_KEYBOARD0_USE     from n
255
default CONT%(cn)d_CAP_DEVICE_MOUSE0_USE        from n
256
default CONT%(cn)d_CAP_DEVICE_CLCD0_USE         from n
257
 
258
menu cont%(cn)d_cap_device_uart1
259
        CONT%(cn)d_CAP_DEVICE_UART1_USE
260
 
261
menu cont%(cn)d_cap_device_uart2
262
        CONT%(cn)d_CAP_DEVICE_UART2_USE
263
 
264
menu cont%(cn)d_cap_device_uart3
265
        CONT%(cn)d_CAP_DEVICE_UART3_USE
266
 
267
menu cont%(cn)d_cap_device_timer1
268
        CONT%(cn)d_CAP_DEVICE_TIMER1_USE
269
 
270
menu cont%(cn)d_cap_device_keyboard0
271
        CONT%(cn)d_CAP_DEVICE_KEYBOARD0_USE
272
 
273
menu cont%(cn)d_cap_device_mouse0
274
        CONT%(cn)d_CAP_DEVICE_MOUSE0_USE
275
 
276
menu cont%(cn)d_cap_device_clcd0
277
        CONT%(cn)d_CAP_DEVICE_CLCD0_USE
278
 
279
menu cont%(cn)d_device_list
280
        cont%(cn)d_cap_device_uart1
281
        cont%(cn)d_cap_device_uart2
282
        cont%(cn)d_cap_device_uart3
283
        cont%(cn)d_cap_device_clcd0
284
        cont%(cn)d_cap_device_timer1
285
        cont%(cn)d_cap_device_keyboard0
286
        cont%(cn)d_cap_device_mouse0
287
 
288
#
289
# Settings for Custom Capabilities
290
#
291
choices cont%(cn)d_cap_custom0_type
292
        CONT%(cn)d_CAP_CUSTOM0_IPC_TYPE
293
        CONT%(cn)d_CAP_CUSTOM0_TCTRL_TYPE
294
        CONT%(cn)d_CAP_CUSTOM0_EXREGS_TYPE
295
        CONT%(cn)d_CAP_CUSTOM0_CAPCTRL_TYPE
296
        default CONT%(cn)d_CAP_CUSTOM0_IPC_TYPE
297
 
298
choices cont%(cn)d_cap_custom1_type
299
        CONT%(cn)d_CAP_CUSTOM1_IPC_TYPE
300
        CONT%(cn)d_CAP_CUSTOM1_TCTRL_TYPE
301
        CONT%(cn)d_CAP_CUSTOM1_EXREGS_TYPE
302
        CONT%(cn)d_CAP_CUSTOM1_CAPCTRL_TYPE
303
        default CONT%(cn)d_CAP_CUSTOM1_IPC_TYPE
304
 
305
choices cont%(cn)d_cap_custom2_type
306
        CONT%(cn)d_CAP_CUSTOM2_IPC_TYPE
307
        CONT%(cn)d_CAP_CUSTOM2_TCTRL_TYPE
308
        CONT%(cn)d_CAP_CUSTOM2_EXREGS_TYPE
309
        CONT%(cn)d_CAP_CUSTOM2_CAPCTRL_TYPE
310
        default CONT%(cn)d_CAP_CUSTOM2_IPC_TYPE
311
 
312
choices cont%(cn)d_cap_custom3_type
313
        CONT%(cn)d_CAP_CUSTOM3_IPC_TYPE
314
        CONT%(cn)d_CAP_CUSTOM3_TCTRL_TYPE
315
        CONT%(cn)d_CAP_CUSTOM3_EXREGS_TYPE
316
        CONT%(cn)d_CAP_CUSTOM3_CAPCTRL_TYPE
317
        default CONT%(cn)d_CAP_CUSTOM3_IPC_TYPE
318
 
319
default CONT%(cn)d_CAP_CUSTOM0_USE      from n
320
default CONT%(cn)d_CAP_CUSTOM1_USE      from n
321
default CONT%(cn)d_CAP_CUSTOM2_USE      from n
322
default CONT%(cn)d_CAP_CUSTOM3_USE      from n
323
 
324
menu cont%(cn)d_cap_custom0
325
        CONT%(cn)d_CAP_CUSTOM0_USE
326
        cont%(cn)d_cap_custom0_type
327
        CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER
328
        CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE
329
        CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER
330
        CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER
331
        CONT%(cn)d_CAP_CUSTOM0_TARGET%
332
 
333
menu cont%(cn)d_cap_custom1
334
        CONT%(cn)d_CAP_CUSTOM1_USE
335
        cont%(cn)d_cap_custom1_type
336
        CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER
337
        CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE
338
        CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER
339
        CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER
340
        CONT%(cn)d_CAP_CUSTOM1_TARGET%
341
 
342
menu cont%(cn)d_cap_custom2
343
        CONT%(cn)d_CAP_CUSTOM2_USE
344
        cont%(cn)d_cap_custom2_type
345
        CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER
346
        CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE
347
        CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER
348
        CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER
349
        CONT%(cn)d_CAP_CUSTOM2_TARGET%
350
 
351
menu cont%(cn)d_cap_custom3
352
        CONT%(cn)d_CAP_CUSTOM3_USE
353
        cont%(cn)d_cap_custom3_type
354
        CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER
355
        CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE
356
        CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER
357
        CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER
358
        CONT%(cn)d_CAP_CUSTOM3_TARGET%
359
 
360
choicegroup CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER
361
            CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER
362
            CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE
363
            CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER
364
            default CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER from y
365
 
366
choicegroup CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER
367
            CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER
368
            CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE
369
            CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER
370
            default CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER from y
371
 
372
choicegroup CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER
373
            CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER
374
            CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE
375
            CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER
376
            default CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER from y
377
 
378
choicegroup CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER
379
            CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER
380
            CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE
381
            CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER
382
            default CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER from y
383
 
384
when CONT%(cn)d_CAP_CUSTOM0_USE == n
385
        suppress cont%(cn)d_cap_custom0_type
386
                 CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER
387
                 CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE
388
                 CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER
389
                 CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER
390
                 CONT%(cn)d_CAP_CUSTOM0_TARGET
391
 
392
when CONT%(cn)d_CAP_CUSTOM1_USE == n
393
        suppress cont%(cn)d_cap_custom1_type
394
                 CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER
395
                 CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE
396
                 CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER
397
                 CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER
398
                 CONT%(cn)d_CAP_CUSTOM1_TARGET
399
 
400
when CONT%(cn)d_CAP_CUSTOM2_USE == n
401
        suppress cont%(cn)d_cap_custom2_type
402
                 CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER
403
                 CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE
404
                 CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER
405
                 CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER
406
                 CONT%(cn)d_CAP_CUSTOM2_TARGET
407
 
408
when CONT%(cn)d_CAP_CUSTOM3_USE == n
409
        suppress cont%(cn)d_cap_custom3_type
410
                 CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER
411
                 CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE
412
                 CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER
413
                 CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER
414
                 CONT%(cn)d_CAP_CUSTOM3_TARGET
415
 
416
when CONT%(cn)d_CAP_CUSTOM0_IPC_TYPE == n
417
        suppress CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER
418
                 CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER
419
                 CONT%(cn)d_CAP_CUSTOM0_TARGET
420
 
421
when CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER or
422
     CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE
423
        suppress CONT%(cn)d_CAP_CUSTOM0_TARGET
424
 
425
when CONT%(cn)d_CAP_CUSTOM1_IPC_TYPE == n
426
        suppress CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER
427
                 CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER
428
                 CONT%(cn)d_CAP_CUSTOM1_TARGET
429
 
430
when CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER or
431
     CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE
432
        suppress CONT%(cn)d_CAP_CUSTOM1_TARGET
433
 
434
when CONT%(cn)d_CAP_CUSTOM2_IPC_TYPE == n
435
        suppress CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER
436
                 CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER
437
                 CONT%(cn)d_CAP_CUSTOM2_TARGET
438
 
439
when CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER or
440
     CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE
441
        suppress CONT%(cn)d_CAP_CUSTOM2_TARGET
442
 
443
when CONT%(cn)d_CAP_CUSTOM3_IPC_TYPE == n
444
        suppress CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER
445
                 CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER
446
                 CONT%(cn)d_CAP_CUSTOM3_TARGET
447
 
448
when CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER or
449
     CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE
450
        suppress CONT%(cn)d_CAP_CUSTOM3_TARGET
451
 
452
default CONT%(cn)d_CAP_CUSTOM0_TARGET           from 0
453
default CONT%(cn)d_CAP_CUSTOM1_TARGET           from 0
454
default CONT%(cn)d_CAP_CUSTOM2_TARGET           from 0
455
default CONT%(cn)d_CAP_CUSTOM3_TARGET           from 0
456
 
457
# Symbols for Custom Capabilities
458
symbols
459
CONT%(cn)d_CAP_CUSTOM0_USE                      'Enable this Capability'
460
cont%(cn)d_cap_custom0_type                     'Capability Operation Type'
461
CONT%(cn)d_CAP_CUSTOM0_IPC_TYPE                 'IPC Capability'
462
CONT%(cn)d_CAP_CUSTOM0_TCTRL_TYPE               'Thread Control Capability'
463
CONT%(cn)d_CAP_CUSTOM0_EXREGS_TYPE              'Exchange Registers Capability'
464
CONT%(cn)d_CAP_CUSTOM0_CAPCTRL_TYPE             'Capability Control Capability'
465
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
466
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
467
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
468
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER     'Capability Targets Another Container`s Pager'
469
CONT%(cn)d_CAP_CUSTOM0_TARGET                   'Enter Container ID'
470
 
471
CONT%(cn)d_CAP_CUSTOM1_USE                      'Enable this Capability'
472
cont%(cn)d_cap_custom1_type                     'Capability Operation Type'
473
CONT%(cn)d_CAP_CUSTOM1_IPC_TYPE                 'IPC Capability'
474
CONT%(cn)d_CAP_CUSTOM1_TCTRL_TYPE               'Thread Control Capability'
475
CONT%(cn)d_CAP_CUSTOM1_EXREGS_TYPE              'Exchange Registers Capability'
476
CONT%(cn)d_CAP_CUSTOM1_CAPCTRL_TYPE             'Capability Control Capability'
477
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
478
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
479
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
480
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER     'Capability Targets Another Container`s Pager'
481
CONT%(cn)d_CAP_CUSTOM1_TARGET                   'Enter Container ID'
482
 
483
CONT%(cn)d_CAP_CUSTOM2_USE                      'Enable this Capability'
484
cont%(cn)d_cap_custom2_type                     'Capability Operation Type'
485
CONT%(cn)d_CAP_CUSTOM2_IPC_TYPE                 'IPC Capability'
486
CONT%(cn)d_CAP_CUSTOM2_TCTRL_TYPE               'Thread Control Capability'
487
CONT%(cn)d_CAP_CUSTOM2_EXREGS_TYPE              'Exchange Registers Capability'
488
CONT%(cn)d_CAP_CUSTOM2_CAPCTRL_TYPE             'Capability Control Capability'
489
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
490
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
491
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
492
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER     'Capability Targets Another Container`s Pager'
493
CONT%(cn)d_CAP_CUSTOM2_TARGET                   'Enter Container ID'
494
 
495
CONT%(cn)d_CAP_CUSTOM3_USE                      'Enable this Capability'
496
cont%(cn)d_cap_custom3_type                     'Capability Operation Type'
497
CONT%(cn)d_CAP_CUSTOM3_IPC_TYPE                 'IPC Capability'
498
CONT%(cn)d_CAP_CUSTOM3_TCTRL_TYPE               'Thread Control Capability'
499
CONT%(cn)d_CAP_CUSTOM3_EXREGS_TYPE              'Exchange Registers Capability'
500
CONT%(cn)d_CAP_CUSTOM3_CAPCTRL_TYPE             'Capability Control Capability'
501
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
502
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
503
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
504
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER     'Capability Targets Another Container`s Pager'
505
CONT%(cn)d_CAP_CUSTOM3_TARGET                   'Enter Container ID'
506
 
507
 
508
 
509
# Symbols for Generic Capabilities
510
symbols
511
CONT%(cn)d_CAP_TCTRL_USE                                'Enable this Capability'
512
CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER           'Capability Targets Current Container'
513
CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_PAGER_SPACE         'Capability Targets Current Pager`s Space'
514
 
515
CONT%(cn)d_CAP_EXREGS_USE                               'Enable this Capability'
516
CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER          'Capability Targets Current Container'
517
CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_PAGER_SPACE        'Capability Targets Current Pager`s Space'
518
 
519
CONT%(cn)d_CAP_IPC_USE                                  'Enable this Capability'
520
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER             'Capability Targets Current Container'
521
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE           'Capability Targets Current Pager`s Space'
522
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_CONTAINER             'Capability Targets Another Container'
523
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_PAGER                 'Capability Targets Another Container`s Pager'
524
CONT%(cn)d_CAP_IPC_TARGET                               'Enter Container ID'
525
 
526
CONT%(cn)d_CAP_CAPCTRL_USE                              'Enable this Capability'
527
CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER         'Capability Targets Current Container'
528
CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_PAGER_SPACE       'Capability Targets Current Pager`s Space'
529
 
530
CONT%(cn)d_CAP_IRQCTRL_USE                              'Enable this Capability'
531
CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER         'Capability Targets Current Container'
532
CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_PAGER_SPACE       'Capability Targets Current Pager`s Space'
533
 
534
CONT%(cn)d_CAP_UMUTEX_USE                               'Enable this Capability'
535
CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER          'Capability Targets Current Container'
536
CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_PAGER_SPACE        'Capability Targets Current Pager`s Space'
537
 
538
 
539
 
540
symbols
541
CONT%(cn)d_CAP_THREADPOOL_SIZE  'Number of Threads'
542
CONT%(cn)d_CAP_SPACEPOOL_SIZE   'Number of Address Spaces'
543
CONT%(cn)d_CAP_MAPPOOL_SIZE     'Number of PMD Mappings (E.g. Middle-level Page Tables)'
544
CONT%(cn)d_CAP_MUTEXPOOL_SIZE   'Number of Userspace Mutexes'
545
CONT%(cn)d_CAP_CAPPOOL_SIZE     'Number of Capabilities (Created at run-time via Split, Replicate)'
546
CONT%(cn)d_CAP_THREADPOOL_USE   'Enable this Capability'
547
CONT%(cn)d_CAP_SPACEPOOL_USE    'Enable this Capability'
548
CONT%(cn)d_CAP_MAPPOOL_USE      'Enable this Capability'
549
CONT%(cn)d_CAP_MUTEXPOOL_USE    'Enable this Capability'
550
CONT%(cn)d_CAP_CAPPOOL_USE      'Enable this Capability'
551
 
552
cont%(cn)d_cap_threadpool       'Container %(cn)d Thread Pool Capability'
553
cont%(cn)d_cap_spacepool        'Container %(cn)d Space Pool Capability'
554
cont%(cn)d_cap_mutexpool        'Container %(cn)d Mutex Pool Capability'
555
cont%(cn)d_cap_mappool          'Container %(cn)d Map Pool Capability'
556
cont%(cn)d_cap_cappool          'Container %(cn)d Capability Pool Capability'
557
cont%(cn)d_cap_tctrl            'Container %(cn)d Thread Control Capability'
558
cont%(cn)d_cap_exregs           'Container %(cn)d Exchange Registers Capability'
559
cont%(cn)d_cap_ipc              'Container %(cn)d IPC Capability'
560
cont%(cn)d_cap_capctrl          'Container %(cn)d Capability Control Capability'
561
cont%(cn)d_cap_irqctrl          'Container %(cn)d IRQ Control Capability'
562
cont%(cn)d_cap_umutex           'Container %(cn)d Userspace Mutex Control Capability'
563
cont%(cn)d_cap_custom0          'Container %(cn)d Custom Capability 0 Parameters'
564
cont%(cn)d_cap_custom1          'Container %(cn)d Custom Capability 1 Parameters'
565
cont%(cn)d_cap_custom2          'Container %(cn)d Custom Capability 2 Parameters'
566
cont%(cn)d_cap_custom3          'Container %(cn)d Custom Capability 3 Parameters'
567
 
568
cont%(cn)d_capability_list      'Container %(cn)d Capability List'
569
 
570
default CONT%(cn)d_CAP_THREADPOOL_SIZE  from 64
571
default CONT%(cn)d_CAP_SPACEPOOL_SIZE   from 64
572
default CONT%(cn)d_CAP_MAPPOOL_SIZE     from 800
573
default CONT%(cn)d_CAP_MUTEXPOOL_SIZE   from 100
574
default CONT%(cn)d_CAP_CAPPOOL_SIZE     from 32
575
 
576
default CONT%(cn)d_CAP_THREADPOOL_USE   from y
577
default CONT%(cn)d_CAP_SPACEPOOL_USE    from y
578
default CONT%(cn)d_CAP_MAPPOOL_USE      from y
579
default CONT%(cn)d_CAP_MUTEXPOOL_USE    from y
580
default CONT%(cn)d_CAP_CAPPOOL_USE      from y
581
 
582
# Use Rules for Generic Capabilities
583
when CONT%(cn)d_CAP_THREADPOOL_USE == n
584
        suppress CONT%(cn)d_CAP_THREADPOOL_SIZE
585
when CONT%(cn)d_CAP_SPACEPOOL_USE == n
586
        suppress CONT%(cn)d_CAP_SPACEPOOL_SIZE
587
when CONT%(cn)d_CAP_MAPPOOL_USE == n
588
        suppress CONT%(cn)d_CAP_MAPPOOL_SIZE
589
when CONT%(cn)d_CAP_MUTEXPOOL_USE == n
590
        suppress CONT%(cn)d_CAP_MUTEXPOOL_SIZE
591
when CONT%(cn)d_CAP_CAPPOOL_USE == n
592
        suppress CONT%(cn)d_CAP_CAPPOOL_SIZE
593
 
594
when CONT%(cn)d_CAP_IPC_USE == n
595
        suppress CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER
596
                 CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE
597
                 CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_CONTAINER
598
                 CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_PAGER
599
 
600
when CONT%(cn)d_CAP_EXREGS_USE == n
601
        suppress CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER
602
                 CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_PAGER_SPACE
603
 
604
when CONT%(cn)d_CAP_TCTRL_USE == n
605
        suppress CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER
606
                 CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_PAGER_SPACE
607
 
608
when CONT%(cn)d_CAP_CAPCTRL_USE == n
609
        suppress CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER
610
                 CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_PAGER_SPACE
611
 
612
when CONT%(cn)d_CAP_IRQCTRL_USE == n
613
        suppress CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER
614
                 CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_PAGER_SPACE
615
 
616
when CONT%(cn)d_CAP_UMUTEX_USE == n
617
        suppress CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER
618
                 CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_PAGER_SPACE
619
 
620
when CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER or
621
     CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE
622
        suppress CONT%(cn)d_CAP_IPC_TARGET
623
 
624
choicegroup CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER
625
            CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_CONTAINER
626
            CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE
627
            CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_PAGER
628
            default CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER from y
629
 
630
choicegroup CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER
631
            CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_PAGER_SPACE
632
            default CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER from y
633
 
634
choicegroup CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER
635
            CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_PAGER_SPACE
636
            default CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER from y
637
 
638
choicegroup CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER
639
            CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_PAGER_SPACE
640
            default CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER from y
641
 
642
choicegroup CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER
643
            CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_PAGER_SPACE
644
            default CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER from y
645
 
646
choicegroup CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER
647
            CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_PAGER_SPACE
648
            default CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER from y
649
 
650
default CONT%(cn)d_CAP_TCTRL_USE        from y
651
default CONT%(cn)d_CAP_EXREGS_USE       from y
652
default CONT%(cn)d_CAP_IPC_USE          from y
653
default CONT%(cn)d_CAP_CAPCTRL_USE      from y
654
default CONT%(cn)d_CAP_IRQCTRL_USE      from y
655
default CONT%(cn)d_CAP_UMUTEX_USE       from y
656
 
657
default CONT%(cn)d_CAP_IPC_TARGET       from 0
658
 
659
# Capability Menus
660
menu cont%(cn)d_cap_tctrl
661
        CONT%(cn)d_CAP_TCTRL_USE
662
        CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER
663
        CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_PAGER_SPACE
664
 
665
menu cont%(cn)d_cap_exregs
666
        CONT%(cn)d_CAP_EXREGS_USE
667
        CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER
668
        CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_PAGER_SPACE
669
 
670
menu cont%(cn)d_cap_capctrl
671
        CONT%(cn)d_CAP_CAPCTRL_USE
672
        CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER
673
        CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_PAGER_SPACE
674
 
675
menu cont%(cn)d_cap_umutex
676
        CONT%(cn)d_CAP_UMUTEX_USE
677
        CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER
678
        CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_PAGER_SPACE
679
 
680
menu cont%(cn)d_cap_irqctrl
681
        CONT%(cn)d_CAP_IRQCTRL_USE
682
        CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER
683
        CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_PAGER_SPACE
684
 
685
menu cont%(cn)d_cap_ipc
686
        CONT%(cn)d_CAP_IPC_USE
687
        CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER
688
        CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE
689
        CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_CONTAINER
690
        CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_PAGER
691
        CONT%(cn)d_CAP_IPC_TARGET%
692
 
693
menu cont%(cn)d_cap_threadpool
694
        CONT%(cn)d_CAP_THREADPOOL_USE
695
        CONT%(cn)d_CAP_THREADPOOL_SIZE%
696
 
697
menu cont%(cn)d_cap_spacepool
698
        CONT%(cn)d_CAP_SPACEPOOL_USE
699
        CONT%(cn)d_CAP_SPACEPOOL_SIZE%
700
 
701
menu cont%(cn)d_cap_mappool
702
        CONT%(cn)d_CAP_MAPPOOL_USE
703
        CONT%(cn)d_CAP_MAPPOOL_SIZE%
704
 
705
menu cont%(cn)d_cap_mutexpool
706
        CONT%(cn)d_CAP_MUTEXPOOL_USE
707
        CONT%(cn)d_CAP_MUTEXPOOL_SIZE%
708
 
709
menu cont%(cn)d_cap_cappool
710
        CONT%(cn)d_CAP_CAPPOOL_USE
711
        CONT%(cn)d_CAP_CAPPOOL_SIZE%
712
 
713
menu cont%(cn)d_capability_list
714
        cont%(cn)d_cap_threadpool
715
        cont%(cn)d_cap_spacepool
716
        cont%(cn)d_cap_mutexpool
717
        cont%(cn)d_cap_mappool
718
        cont%(cn)d_cap_cappool
719
        cont%(cn)d_cap_tctrl
720
        cont%(cn)d_cap_exregs
721
        cont%(cn)d_cap_ipc
722
        cont%(cn)d_cap_capctrl
723
        cont%(cn)d_cap_umutex
724
        cont%(cn)d_cap_irqctrl
725
        cont%(cn)d_cap_custom0
726
        cont%(cn)d_cap_custom1
727
        cont%(cn)d_cap_custom2
728
        cont%(cn)d_cap_custom3
729
 
730
menu container%(cn)d_options
731
        CONT%(cn)d_OPT_NAME$
732
        cont%(cn)d_baremetal_params
733
        cont%(cn)d_linux_pager_params
734
        cont%(cn)d_default_pager_params
735
        cont%(cn)d_posix_pager_params
736
        cont%(cn)d_physmem_list
737
        cont%(cn)d_virtmem_list
738
        cont%(cn)d_capability_list
739
        cont%(cn)d_device_list
740
 
741
choices container%(cn)d_type
742
        CONT%(cn)d_TYPE_BAREMETAL
743
        CONT%(cn)d_TYPE_POSIX
744
        CONT%(cn)d_TYPE_LINUX
745
        default CONT%(cn)d_TYPE_BAREMETAL
746
 
747
menu cont%(cn)d_menu
748
        container%(cn)d_type
749
        container%(cn)d_options

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.