Files
codezero/config/cml/container_ruleset.template
Amit Mahajan 988ea49c26 Basic codezero support for clcd device capability added.
1. We are not making a new clcd service container, as we dont want to keep
separate container for each device, ultimately we will have one
container managing all devices.

2. CLCD driver needs to be added.
2010-03-30 22:31:35 +05:30

750 lines
32 KiB
Plaintext

symbols
CONT%(cn)d_TYPE_LINUX 'Linux Container'
CONT%(cn)d_TYPE_BAREMETAL 'Baremetal Container'
CONT%(cn)d_TYPE_POSIX 'POSIX Container'
CONT%(cn)d_OPT_NAME 'Container Name'
CONTAINERS 'Number of containers'
CONT%(cn)d_PHYSMEM_REGIONS 'Container %(cn)d Number of Physical Regions'
CONT%(cn)d_PHYS0_START 'Container %(cn)d Physical Region 0 Start Address'
CONT%(cn)d_PHYS0_END 'Container %(cn)d Physical Region 0 End Address'
CONT%(cn)d_PHYS1_START 'Container %(cn)d Physical Region 1 Start Address'
CONT%(cn)d_PHYS1_END 'Container %(cn)d Physical Region 1 End Address'
CONT%(cn)d_PHYS2_START 'Container %(cn)d Physical Region 2 Start Address'
CONT%(cn)d_PHYS2_END 'Container %(cn)d Physical Region 2 End Address'
CONT%(cn)d_PHYS3_START 'Container %(cn)d Physical Region 3 Start Address'
CONT%(cn)d_PHYS3_END 'Container %(cn)d Physical Region 3 End Address'
symbols
CONT%(cn)d_VIRTMEM_REGIONS 'Container %(cn)d Number of Virtual Regions'
CONT%(cn)d_VIRT0_START 'Container %(cn)d Virtual Region 0 Start Address'
CONT%(cn)d_VIRT0_END 'Container %(cn)d Virtual Region 0 End Address'
CONT%(cn)d_VIRT1_START 'Container %(cn)d Virtual Region 1 Start Address'
CONT%(cn)d_VIRT1_END 'Container %(cn)d Virtual Region 1 End Address'
CONT%(cn)d_VIRT2_START 'Container %(cn)d Virtual Region 2 Start Address'
CONT%(cn)d_VIRT2_END 'Container %(cn)d Virtual Region 2 End Address'
CONT%(cn)d_VIRT3_START 'Container %(cn)d Virtual Region 3 Start Address'
CONT%(cn)d_VIRT3_END 'Container %(cn)d Virtual Region 3 End Address'
CONT%(cn)d_VIRT4_START 'Container %(cn)d Virtual Region 4 Start Address'
CONT%(cn)d_VIRT4_END 'Container %(cn)d Virtual Region 4 End Address'
CONT%(cn)d_VIRT5_START 'Container %(cn)d Virtual Region 5 Start Address'
CONT%(cn)d_VIRT5_END 'Container %(cn)d Virtual Region 5 End Address'
# FIXME: We dont need to pass PAGER_LMA and PAGER_VMA to config.h now
# as we are using them just to derive other symbols, in this file only
CONT%(cn)d_PAGER_LMA 'Container %(cn)d Pager LMA'
CONT%(cn)d_PAGER_VMA 'Container %(cn)d Pager VMA'
CONT%(cn)d_PAGER_SHM_START 'Container %(cn)d Shared Mappings Region Start'
CONT%(cn)d_PAGER_SHM_END 'Container %(cn)d Shared Mappings Region End'
CONT%(cn)d_PAGER_TASK_START 'Container %(cn)d Task Address Space Region Start'
CONT%(cn)d_PAGER_TASK_END 'Container %(cn)d Task Address Space Region End'
CONT%(cn)d_PAGER_UTCB_START 'Container %(cn)d UTCB Mappings Region Start'
CONT%(cn)d_PAGER_UTCB_END 'Container %(cn)d UTCB Mappings Region End'
CONT%(cn)d_LINUX_ZRELADDR 'Container %(cn)d Linux ZRELADDR Parameter'
CONT%(cn)d_LINUX_PAGE_OFFSET 'Container %(cn)d Linux PAGE_OFFSET Parameter'
CONT%(cn)d_LINUX_PHYS_OFFSET 'Container %(cn)d Linux PHYS_OFFSET Parameter'
CONT%(cn)d_LINUX_ROOTFS_ADDRESS 'Container %(cn)d Linux ROOTFS Address'
default CONT%(cn)d_PAGER_LMA from CONT%(cn)d_PHYS0_START
default CONT%(cn)d_PAGER_VMA from CONT%(cn)d_VIRT0_START
default CONT%(cn)d_PAGER_SHM_START from CONT%(cn)d_VIRT1_START
default CONT%(cn)d_PAGER_SHM_END from CONT%(cn)d_VIRT1_END
default CONT%(cn)d_PAGER_TASK_START from CONT%(cn)d_VIRT2_START
default CONT%(cn)d_PAGER_TASK_END from CONT%(cn)d_VIRT2_END
default CONT%(cn)d_PAGER_UTCB_START from CONT%(cn)d_VIRT3_START
default CONT%(cn)d_PAGER_UTCB_END from CONT%(cn)d_VIRT3_END
default CONT%(cn)d_LINUX_ZRELADDR from (CONT%(cn)d_LINUX_PHYS_OFFSET + 0x8000)
default CONT%(cn)d_LINUX_PAGE_OFFSET from CONT%(cn)d_VIRT0_START
default CONT%(cn)d_LINUX_PHYS_OFFSET from CONT%(cn)d_PHYS0_START
default CONT%(cn)d_LINUX_ROOTFS_ADDRESS from (CONT%(cn)d_LINUX_PHYS_OFFSET + 0x500000)
default CONT%(cn)d_VIRTMEM_REGIONS from (CONT%(cn)d_TYPE_POSIX==y ? 4 : 1)
default CONT%(cn)d_PHYSMEM_REGIONS from 1
# Define limits on virtual and physical memory regions of a _single_ container 0. Too much code!
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT1_START CONT%(cn)d_VIRT1_END
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT2_START CONT%(cn)d_VIRT2_END
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT3_START CONT%(cn)d_VIRT3_END
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT4_START CONT%(cn)d_VIRT4_END
when CONT%(cn)d_VIRTMEM_REGIONS < 2 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
when CONT%(cn)d_VIRTMEM_REGIONS < 3 suppress CONT%(cn)d_VIRT2_START CONT%(cn)d_VIRT2_END
when CONT%(cn)d_VIRTMEM_REGIONS < 3 suppress CONT%(cn)d_VIRT3_START CONT%(cn)d_VIRT3_END
when CONT%(cn)d_VIRTMEM_REGIONS < 3 suppress CONT%(cn)d_VIRT4_START CONT%(cn)d_VIRT4_END
when CONT%(cn)d_VIRTMEM_REGIONS < 3 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
when CONT%(cn)d_VIRTMEM_REGIONS < 4 suppress CONT%(cn)d_VIRT3_START CONT%(cn)d_VIRT3_END
when CONT%(cn)d_VIRTMEM_REGIONS < 4 suppress CONT%(cn)d_VIRT4_START CONT%(cn)d_VIRT4_END
when CONT%(cn)d_VIRTMEM_REGIONS < 4 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
when CONT%(cn)d_VIRTMEM_REGIONS < 5 suppress CONT%(cn)d_VIRT4_START CONT%(cn)d_VIRT4_END
when CONT%(cn)d_VIRTMEM_REGIONS < 5 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
when CONT%(cn)d_VIRTMEM_REGIONS < 6 suppress CONT%(cn)d_VIRT5_START CONT%(cn)d_VIRT5_END
when CONT%(cn)d_PHYSMEM_REGIONS < 2 suppress CONT%(cn)d_PHYS1_START CONT%(cn)d_PHYS1_END
when CONT%(cn)d_PHYSMEM_REGIONS < 2 suppress CONT%(cn)d_PHYS2_START CONT%(cn)d_PHYS2_END
when CONT%(cn)d_PHYSMEM_REGIONS < 2 suppress CONT%(cn)d_PHYS3_START CONT%(cn)d_PHYS3_END
when CONT%(cn)d_PHYSMEM_REGIONS < 3 suppress CONT%(cn)d_PHYS2_START CONT%(cn)d_PHYS2_END
when CONT%(cn)d_PHYSMEM_REGIONS < 3 suppress CONT%(cn)d_PHYS3_START CONT%(cn)d_PHYS3_END
when CONT%(cn)d_PHYSMEM_REGIONS < 4 suppress CONT%(cn)d_PHYS3_START CONT%(cn)d_PHYS3_END
# We assume kernel uses 0x0 - 0x40000 physical RAM.
# Physical Regions for containers should start after kernel.
require CONT%(cn)d_PHYS0_START >= 0x40000
require CONT%(cn)d_PHYS1_START >= 0x40000
require CONT%(cn)d_PHYS2_START >= 0x40000
require CONT%(cn)d_PHYS3_START >= 0x40000
# TODO: We can add check for end address of physical region to be
# less than RAM SIZE, need to find out RAM SIZE?
# Rules for Linux kernel parameters
require CONT%(cn)d_LINUX_ZRELADDR > CONT%(cn)d_LINUX_PHYS_OFFSET + 0x8000
# TODO: Do we want to check if PAGER_LMA/VMA lies in allocated memory regions
default CONT%(cn)d_PHYS0_START from ((%(cn)d == 0 ? 0x100000 : (0x100000 + %(cn)d * 0x1000000)) + RAM_BASE_PLAT)
default CONT%(cn)d_PHYS0_END from (CONT%(cn)d_PHYS0_START + 0xD00000)
default CONT%(cn)d_PHYS1_START from CONT%(cn)d_PHYS0_END
default CONT%(cn)d_PHYS1_END from (CONT%(cn)d_PHYS1_START + 0x100000)
default CONT%(cn)d_PHYS2_START from CONT%(cn)d_PHYS1_END
default CONT%(cn)d_PHYS2_END from (CONT%(cn)d_PHYS2_START + 0x100000)
default CONT%(cn)d_PHYS3_START from CONT%(cn)d_PHYS2_END
default CONT%(cn)d_PHYS3_END from (CONT%(cn)d_PHYS3_START + 0x100000)
default CONT%(cn)d_VIRT0_START from (%(cn)d == 0 ? 0xa0000000 : (0xa0000000 + %(cn)d * 0x10000000))
default CONT%(cn)d_VIRT0_END from (CONT%(cn)d_VIRT0_START + 0x10000000)
default CONT%(cn)d_VIRT1_START from (%(cn)d == 0 ? 0x80000000 : (0x80000000 + %(cn)d * 0x8000000))
default CONT%(cn)d_VIRT1_END from (CONT%(cn)d_VIRT1_START + 0x8000000)
default CONT%(cn)d_VIRT2_START from (%(cn)d == 0 ? 0x40000000 : (0x40000000 + %(cn)d * 0x10000000))
default CONT%(cn)d_VIRT2_END from (CONT%(cn)d_VIRT2_START + 0x10000000)
default CONT%(cn)d_VIRT3_START from (%(cn)d == 0 ? 0xf8100000 : (0xf8100000 + %(cn)d * 0x100000))
default CONT%(cn)d_VIRT3_END from (CONT%(cn)d_VIRT3_START + 0x100000)
default CONT%(cn)d_VIRT4_START from (%(cn)d == 0 ? 0x10000000 : (0x10000000 + %(cn)d * 0x10000000))
default CONT%(cn)d_VIRT4_END from (CONT%(cn)d_VIRT4_START + 0x10000000)
default CONT%(cn)d_VIRT5_START from 0xe0000000
default CONT%(cn)d_VIRT5_END from 0xf0000000
default CONT%(cn)d_OPT_NAME from
(CONT%(cn)d_TYPE_LINUX==y) ? "linux%(cn)d" :
((CONT%(cn)d_TYPE_POSIX==y) ? "posix%(cn)d" :
((CONT%(cn)d_BAREMETAL_PROJ_HELLO_WORLD==y) ? "hello_world%(cn)d" :
((CONT%(cn)d_BAREMETAL_PROJ_THREADS_DEMO==y) ? "thread_demo%(cn)d" :
((CONT%(cn)d_BAREMETAL_PROJ_TEST_SUITE==y) ? "test_suite%(cn)d" :
((CONT%(cn)d_BAREMETAL_PROJ_UART_SERVICE==y) ? "uart_service%(cn)d" :
((CONT%(cn)d_BAREMETAL_PROJ_KMI_SERVICE==y) ? "kmi_service%(cn)d" :
((CONT%(cn)d_BAREMETAL_PROJ_TIMER_SERVICE==y) ? "timer_service%(cn)d" : "empty%(cn)d")))))))
when CONT%(cn)d_TYPE_LINUX==y suppress cont%(cn)d_default_pager_params
unless CONT%(cn)d_TYPE_POSIX==y suppress cont%(cn)d_posix_pager_params
unless CONT%(cn)d_TYPE_LINUX==y suppress cont%(cn)d_linux_pager_params
unless CONT%(cn)d_TYPE_BAREMETAL==y suppress cont%(cn)d_baremetal_params
# derive symbols, for cinfo.c, depending on the type of container selected
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
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
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)
symbols
cont%(cn)d_menu 'Container %(cn)d Parameters'
cont%(cn)d_physmem_list 'Container %(cn)d Physical Memory Regions (Capabilities)'
cont%(cn)d_virtmem_list 'Container %(cn)d Virtual Memory Regions (Capabilities)'
cont%(cn)d_device_list 'Container %(cn)d Devices (Capabilities)'
container%(cn)d_type 'Container %(cn)d Type'
container%(cn)d_options 'Container %(cn)d Options'
cont%(cn)d_linux_pager_params 'Container %(cn)d Linux Pager Parameters'
cont%(cn)d_default_pager_params 'Container %(cn)d Default Pager Parameters'
cont%(cn)d_posix_pager_params 'Container %(cn)d POSIX Pager Parameters'
cont%(cn)d_baremetal_params 'Baremetal Project'
CONT%(cn)d_BAREMETAL_PROJ_EMPTY 'Empty Project'
CONT%(cn)d_BAREMETAL_PROJ_HELLO_WORLD 'Hello World'
CONT%(cn)d_BAREMETAL_PROJ_THREADS_DEMO 'Thread Library Demo'
CONT%(cn)d_BAREMETAL_PROJ_TEST_SUITE 'Microkernel Tests'
CONT%(cn)d_BAREMETAL_PROJ_UART_SERVICE 'UART Service'
CONT%(cn)d_BAREMETAL_PROJ_TIMER_SERVICE 'Timer Service'
CONT%(cn)d_BAREMETAL_PROJ_KMI_SERVICE 'Keyboard Mouse Service'
choices cont%(cn)d_baremetal_params
CONT%(cn)d_BAREMETAL_PROJ_EMPTY
CONT%(cn)d_BAREMETAL_PROJ_HELLO_WORLD
CONT%(cn)d_BAREMETAL_PROJ_THREADS_DEMO
CONT%(cn)d_BAREMETAL_PROJ_TEST_SUITE
CONT%(cn)d_BAREMETAL_PROJ_UART_SERVICE
CONT%(cn)d_BAREMETAL_PROJ_TIMER_SERVICE
CONT%(cn)d_BAREMETAL_PROJ_KMI_SERVICE
default CONT%(cn)d_BAREMETAL_PROJ_EMPTY
menu cont%(cn)d_default_pager_params
CONT%(cn)d_PAGER_LMA@
CONT%(cn)d_PAGER_VMA@
menu cont%(cn)d_posix_pager_params
CONT%(cn)d_PAGER_SHM_START@
CONT%(cn)d_PAGER_SHM_END@
CONT%(cn)d_PAGER_TASK_START@
CONT%(cn)d_PAGER_TASK_END@
CONT%(cn)d_PAGER_UTCB_START@
CONT%(cn)d_PAGER_UTCB_END@
menu cont%(cn)d_linux_pager_params
CONT%(cn)d_LINUX_PHYS_OFFSET@
CONT%(cn)d_LINUX_ZRELADDR@
CONT%(cn)d_LINUX_ROOTFS_ADDRESS@
CONT%(cn)d_LINUX_PAGE_OFFSET@
menu cont%(cn)d_virtmem_list
CONT%(cn)d_VIRTMEM_REGIONS%
CONT%(cn)d_VIRT0_START@
CONT%(cn)d_VIRT0_END@
CONT%(cn)d_VIRT1_START@
CONT%(cn)d_VIRT1_END@
CONT%(cn)d_VIRT2_START@
CONT%(cn)d_VIRT2_END@
CONT%(cn)d_VIRT3_START@
CONT%(cn)d_VIRT3_END@
CONT%(cn)d_VIRT4_START@
CONT%(cn)d_VIRT4_END@
CONT%(cn)d_VIRT5_START@
CONT%(cn)d_VIRT5_END@
menu cont%(cn)d_physmem_list
CONT%(cn)d_PHYSMEM_REGIONS%
CONT%(cn)d_PHYS0_START@
CONT%(cn)d_PHYS0_END@
CONT%(cn)d_PHYS1_START@
CONT%(cn)d_PHYS1_END@
CONT%(cn)d_PHYS2_START@
CONT%(cn)d_PHYS2_END@
CONT%(cn)d_PHYS3_START@
CONT%(cn)d_PHYS3_END@
#
# Device menu and options per container
#
# FIXME: All this is to be moved to a per-platform description file.
#
symbols
cont%(cn)d_cap_device_uart1 'Container %(cn)d UART1 Menu'
cont%(cn)d_cap_device_uart2 'Container %(cn)d UART2 Menu'
cont%(cn)d_cap_device_uart3 'Container %(cn)d UART3 Menu'
cont%(cn)d_cap_device_timer1 'Container %(cn)d TIMER23 Menu'
cont%(cn)d_cap_device_keyboard0 'Container %(cn)d KEYBOARD0 Menu'
cont%(cn)d_cap_device_mouse0 'Container %(cn)d MOUSE0 Menu'
cont%(cn)d_cap_device_clcd0 'Container %(cn)d CLCD0 Menu'
CONT%(cn)d_CAP_DEVICE_UART1_USE 'Container %(cn)d UART1 Enable'
CONT%(cn)d_CAP_DEVICE_UART2_USE 'Container %(cn)d UART2 Enable'
CONT%(cn)d_CAP_DEVICE_UART3_USE 'Container %(cn)d UART3 Enable'
CONT%(cn)d_CAP_DEVICE_TIMER1_USE 'Container %(cn)d TIMER23 Enable'
CONT%(cn)d_CAP_DEVICE_KEYBOARD0_USE 'Container %(cn)d KEYBOARD0 Enable'
CONT%(cn)d_CAP_DEVICE_MOUSE0_USE 'Container %(cn)d MOUSE0 Enable'
CONT%(cn)d_CAP_DEVICE_CLCD0_USE 'Container %(cn)d CLCD0 Enable'
default CONT%(cn)d_CAP_DEVICE_UART1_USE from n
default CONT%(cn)d_CAP_DEVICE_UART2_USE from n
default CONT%(cn)d_CAP_DEVICE_UART3_USE from n
default CONT%(cn)d_CAP_DEVICE_TIMER1_USE from n
default CONT%(cn)d_CAP_DEVICE_KEYBOARD0_USE from n
default CONT%(cn)d_CAP_DEVICE_MOUSE0_USE from n
default CONT%(cn)d_CAP_DEVICE_CLCD0_USE from n
menu cont%(cn)d_cap_device_uart1
CONT%(cn)d_CAP_DEVICE_UART1_USE
menu cont%(cn)d_cap_device_uart2
CONT%(cn)d_CAP_DEVICE_UART2_USE
menu cont%(cn)d_cap_device_uart3
CONT%(cn)d_CAP_DEVICE_UART3_USE
menu cont%(cn)d_cap_device_timer1
CONT%(cn)d_CAP_DEVICE_TIMER1_USE
menu cont%(cn)d_cap_device_keyboard0
CONT%(cn)d_CAP_DEVICE_KEYBOARD0_USE
menu cont%(cn)d_cap_device_mouse0
CONT%(cn)d_CAP_DEVICE_MOUSE0_USE
menu cont%(cn)d_cap_device_clcd0
CONT%(cn)d_CAP_DEVICE_CLCD0_USE
menu cont%(cn)d_device_list
cont%(cn)d_cap_device_uart1
cont%(cn)d_cap_device_uart2
cont%(cn)d_cap_device_uart3
cont%(cn)d_cap_device_clcd0
cont%(cn)d_cap_device_timer1
cont%(cn)d_cap_device_keyboard0
cont%(cn)d_cap_device_mouse0
#
# Settings for Custom Capabilities
#
choices cont%(cn)d_cap_custom0_type
CONT%(cn)d_CAP_CUSTOM0_IPC_TYPE
CONT%(cn)d_CAP_CUSTOM0_TCTRL_TYPE
CONT%(cn)d_CAP_CUSTOM0_EXREGS_TYPE
CONT%(cn)d_CAP_CUSTOM0_CAPCTRL_TYPE
default CONT%(cn)d_CAP_CUSTOM0_IPC_TYPE
choices cont%(cn)d_cap_custom1_type
CONT%(cn)d_CAP_CUSTOM1_IPC_TYPE
CONT%(cn)d_CAP_CUSTOM1_TCTRL_TYPE
CONT%(cn)d_CAP_CUSTOM1_EXREGS_TYPE
CONT%(cn)d_CAP_CUSTOM1_CAPCTRL_TYPE
default CONT%(cn)d_CAP_CUSTOM1_IPC_TYPE
choices cont%(cn)d_cap_custom2_type
CONT%(cn)d_CAP_CUSTOM2_IPC_TYPE
CONT%(cn)d_CAP_CUSTOM2_TCTRL_TYPE
CONT%(cn)d_CAP_CUSTOM2_EXREGS_TYPE
CONT%(cn)d_CAP_CUSTOM2_CAPCTRL_TYPE
default CONT%(cn)d_CAP_CUSTOM2_IPC_TYPE
choices cont%(cn)d_cap_custom3_type
CONT%(cn)d_CAP_CUSTOM3_IPC_TYPE
CONT%(cn)d_CAP_CUSTOM3_TCTRL_TYPE
CONT%(cn)d_CAP_CUSTOM3_EXREGS_TYPE
CONT%(cn)d_CAP_CUSTOM3_CAPCTRL_TYPE
default CONT%(cn)d_CAP_CUSTOM3_IPC_TYPE
default CONT%(cn)d_CAP_CUSTOM0_USE from n
default CONT%(cn)d_CAP_CUSTOM1_USE from n
default CONT%(cn)d_CAP_CUSTOM2_USE from n
default CONT%(cn)d_CAP_CUSTOM3_USE from n
menu cont%(cn)d_cap_custom0
CONT%(cn)d_CAP_CUSTOM0_USE
cont%(cn)d_cap_custom0_type
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM0_TARGET%
menu cont%(cn)d_cap_custom1
CONT%(cn)d_CAP_CUSTOM1_USE
cont%(cn)d_cap_custom1_type
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM1_TARGET%
menu cont%(cn)d_cap_custom2
CONT%(cn)d_CAP_CUSTOM2_USE
cont%(cn)d_cap_custom2_type
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM2_TARGET%
menu cont%(cn)d_cap_custom3
CONT%(cn)d_CAP_CUSTOM3_USE
cont%(cn)d_cap_custom3_type
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM3_TARGET%
choicegroup CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER
default CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER from y
choicegroup CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER
default CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER from y
choicegroup CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER
default CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER from y
choicegroup CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER
default CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER from y
when CONT%(cn)d_CAP_CUSTOM0_USE == n
suppress cont%(cn)d_cap_custom0_type
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM0_TARGET
when CONT%(cn)d_CAP_CUSTOM1_USE == n
suppress cont%(cn)d_cap_custom1_type
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM1_TARGET
when CONT%(cn)d_CAP_CUSTOM2_USE == n
suppress cont%(cn)d_cap_custom2_type
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM2_TARGET
when CONT%(cn)d_CAP_CUSTOM3_USE == n
suppress cont%(cn)d_cap_custom3_type
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM3_TARGET
when CONT%(cn)d_CAP_CUSTOM0_IPC_TYPE == n
suppress CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM0_TARGET
when CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER or
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE
suppress CONT%(cn)d_CAP_CUSTOM0_TARGET
when CONT%(cn)d_CAP_CUSTOM1_IPC_TYPE == n
suppress CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM1_TARGET
when CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER or
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE
suppress CONT%(cn)d_CAP_CUSTOM1_TARGET
when CONT%(cn)d_CAP_CUSTOM2_IPC_TYPE == n
suppress CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM2_TARGET
when CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER or
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE
suppress CONT%(cn)d_CAP_CUSTOM2_TARGET
when CONT%(cn)d_CAP_CUSTOM3_IPC_TYPE == n
suppress CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_CUSTOM3_TARGET
when CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER or
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE
suppress CONT%(cn)d_CAP_CUSTOM3_TARGET
default CONT%(cn)d_CAP_CUSTOM0_TARGET from 0
default CONT%(cn)d_CAP_CUSTOM1_TARGET from 0
default CONT%(cn)d_CAP_CUSTOM2_TARGET from 0
default CONT%(cn)d_CAP_CUSTOM3_TARGET from 0
# Symbols for Custom Capabilities
symbols
CONT%(cn)d_CAP_CUSTOM0_USE 'Enable this Capability'
cont%(cn)d_cap_custom0_type 'Capability Operation Type'
CONT%(cn)d_CAP_CUSTOM0_IPC_TYPE 'IPC Capability'
CONT%(cn)d_CAP_CUSTOM0_TCTRL_TYPE 'Thread Control Capability'
CONT%(cn)d_CAP_CUSTOM0_EXREGS_TYPE 'Exchange Registers Capability'
CONT%(cn)d_CAP_CUSTOM0_CAPCTRL_TYPE 'Capability Control Capability'
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_CUSTOM0_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
CONT%(cn)d_CAP_CUSTOM0_TARGET_ANOTHER_PAGER 'Capability Targets Another Container`s Pager'
CONT%(cn)d_CAP_CUSTOM0_TARGET 'Enter Container ID'
CONT%(cn)d_CAP_CUSTOM1_USE 'Enable this Capability'
cont%(cn)d_cap_custom1_type 'Capability Operation Type'
CONT%(cn)d_CAP_CUSTOM1_IPC_TYPE 'IPC Capability'
CONT%(cn)d_CAP_CUSTOM1_TCTRL_TYPE 'Thread Control Capability'
CONT%(cn)d_CAP_CUSTOM1_EXREGS_TYPE 'Exchange Registers Capability'
CONT%(cn)d_CAP_CUSTOM1_CAPCTRL_TYPE 'Capability Control Capability'
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_CUSTOM1_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
CONT%(cn)d_CAP_CUSTOM1_TARGET_ANOTHER_PAGER 'Capability Targets Another Container`s Pager'
CONT%(cn)d_CAP_CUSTOM1_TARGET 'Enter Container ID'
CONT%(cn)d_CAP_CUSTOM2_USE 'Enable this Capability'
cont%(cn)d_cap_custom2_type 'Capability Operation Type'
CONT%(cn)d_CAP_CUSTOM2_IPC_TYPE 'IPC Capability'
CONT%(cn)d_CAP_CUSTOM2_TCTRL_TYPE 'Thread Control Capability'
CONT%(cn)d_CAP_CUSTOM2_EXREGS_TYPE 'Exchange Registers Capability'
CONT%(cn)d_CAP_CUSTOM2_CAPCTRL_TYPE 'Capability Control Capability'
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_CUSTOM2_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
CONT%(cn)d_CAP_CUSTOM2_TARGET_ANOTHER_PAGER 'Capability Targets Another Container`s Pager'
CONT%(cn)d_CAP_CUSTOM2_TARGET 'Enter Container ID'
CONT%(cn)d_CAP_CUSTOM3_USE 'Enable this Capability'
cont%(cn)d_cap_custom3_type 'Capability Operation Type'
CONT%(cn)d_CAP_CUSTOM3_IPC_TYPE 'IPC Capability'
CONT%(cn)d_CAP_CUSTOM3_TCTRL_TYPE 'Thread Control Capability'
CONT%(cn)d_CAP_CUSTOM3_EXREGS_TYPE 'Exchange Registers Capability'
CONT%(cn)d_CAP_CUSTOM3_CAPCTRL_TYPE 'Capability Control Capability'
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_CUSTOM3_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
CONT%(cn)d_CAP_CUSTOM3_TARGET_ANOTHER_PAGER 'Capability Targets Another Container`s Pager'
CONT%(cn)d_CAP_CUSTOM3_TARGET 'Enter Container ID'
# Symbols for Generic Capabilities
symbols
CONT%(cn)d_CAP_TCTRL_USE 'Enable this Capability'
CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_EXREGS_USE 'Enable this Capability'
CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_IPC_USE 'Enable this Capability'
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_CONTAINER 'Capability Targets Another Container'
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_PAGER 'Capability Targets Another Container`s Pager'
CONT%(cn)d_CAP_IPC_TARGET 'Enter Container ID'
CONT%(cn)d_CAP_CAPCTRL_USE 'Enable this Capability'
CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_IRQCTRL_USE 'Enable this Capability'
CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
CONT%(cn)d_CAP_UMUTEX_USE 'Enable this Capability'
CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER 'Capability Targets Current Container'
CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_PAGER_SPACE 'Capability Targets Current Pager`s Space'
symbols
CONT%(cn)d_CAP_THREADPOOL_SIZE 'Number of Threads'
CONT%(cn)d_CAP_SPACEPOOL_SIZE 'Number of Address Spaces'
CONT%(cn)d_CAP_MAPPOOL_SIZE 'Number of PMD Mappings (E.g. Middle-level Page Tables)'
CONT%(cn)d_CAP_MUTEXPOOL_SIZE 'Number of Userspace Mutexes'
CONT%(cn)d_CAP_CAPPOOL_SIZE 'Number of Capabilities (Created at run-time via Split, Replicate)'
CONT%(cn)d_CAP_THREADPOOL_USE 'Enable this Capability'
CONT%(cn)d_CAP_SPACEPOOL_USE 'Enable this Capability'
CONT%(cn)d_CAP_MAPPOOL_USE 'Enable this Capability'
CONT%(cn)d_CAP_MUTEXPOOL_USE 'Enable this Capability'
CONT%(cn)d_CAP_CAPPOOL_USE 'Enable this Capability'
cont%(cn)d_cap_threadpool 'Container %(cn)d Thread Pool Capability'
cont%(cn)d_cap_spacepool 'Container %(cn)d Space Pool Capability'
cont%(cn)d_cap_mutexpool 'Container %(cn)d Mutex Pool Capability'
cont%(cn)d_cap_mappool 'Container %(cn)d Map Pool Capability'
cont%(cn)d_cap_cappool 'Container %(cn)d Capability Pool Capability'
cont%(cn)d_cap_tctrl 'Container %(cn)d Thread Control Capability'
cont%(cn)d_cap_exregs 'Container %(cn)d Exchange Registers Capability'
cont%(cn)d_cap_ipc 'Container %(cn)d IPC Capability'
cont%(cn)d_cap_capctrl 'Container %(cn)d Capability Control Capability'
cont%(cn)d_cap_irqctrl 'Container %(cn)d IRQ Control Capability'
cont%(cn)d_cap_umutex 'Container %(cn)d Userspace Mutex Control Capability'
cont%(cn)d_cap_custom0 'Container %(cn)d Custom Capability 0 Parameters'
cont%(cn)d_cap_custom1 'Container %(cn)d Custom Capability 1 Parameters'
cont%(cn)d_cap_custom2 'Container %(cn)d Custom Capability 2 Parameters'
cont%(cn)d_cap_custom3 'Container %(cn)d Custom Capability 3 Parameters'
cont%(cn)d_capability_list 'Container %(cn)d Capability List'
default CONT%(cn)d_CAP_THREADPOOL_SIZE from 64
default CONT%(cn)d_CAP_SPACEPOOL_SIZE from 64
default CONT%(cn)d_CAP_MAPPOOL_SIZE from 800
default CONT%(cn)d_CAP_MUTEXPOOL_SIZE from 100
default CONT%(cn)d_CAP_CAPPOOL_SIZE from 32
default CONT%(cn)d_CAP_THREADPOOL_USE from y
default CONT%(cn)d_CAP_SPACEPOOL_USE from y
default CONT%(cn)d_CAP_MAPPOOL_USE from y
default CONT%(cn)d_CAP_MUTEXPOOL_USE from y
default CONT%(cn)d_CAP_CAPPOOL_USE from y
# Use Rules for Generic Capabilities
when CONT%(cn)d_CAP_THREADPOOL_USE == n
suppress CONT%(cn)d_CAP_THREADPOOL_SIZE
when CONT%(cn)d_CAP_SPACEPOOL_USE == n
suppress CONT%(cn)d_CAP_SPACEPOOL_SIZE
when CONT%(cn)d_CAP_MAPPOOL_USE == n
suppress CONT%(cn)d_CAP_MAPPOOL_SIZE
when CONT%(cn)d_CAP_MUTEXPOOL_USE == n
suppress CONT%(cn)d_CAP_MUTEXPOOL_SIZE
when CONT%(cn)d_CAP_CAPPOOL_USE == n
suppress CONT%(cn)d_CAP_CAPPOOL_SIZE
when CONT%(cn)d_CAP_IPC_USE == n
suppress CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_PAGER
when CONT%(cn)d_CAP_EXREGS_USE == n
suppress CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_PAGER_SPACE
when CONT%(cn)d_CAP_TCTRL_USE == n
suppress CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_PAGER_SPACE
when CONT%(cn)d_CAP_CAPCTRL_USE == n
suppress CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_PAGER_SPACE
when CONT%(cn)d_CAP_IRQCTRL_USE == n
suppress CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_PAGER_SPACE
when CONT%(cn)d_CAP_UMUTEX_USE == n
suppress CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_PAGER_SPACE
when CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER or
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE
suppress CONT%(cn)d_CAP_IPC_TARGET
choicegroup CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_PAGER
default CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER from y
choicegroup CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_PAGER_SPACE
default CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER from y
choicegroup CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_PAGER_SPACE
default CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER from y
choicegroup CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_PAGER_SPACE
default CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER from y
choicegroup CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_PAGER_SPACE
default CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER from y
choicegroup CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_PAGER_SPACE
default CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER from y
default CONT%(cn)d_CAP_TCTRL_USE from y
default CONT%(cn)d_CAP_EXREGS_USE from y
default CONT%(cn)d_CAP_IPC_USE from y
default CONT%(cn)d_CAP_CAPCTRL_USE from y
default CONT%(cn)d_CAP_IRQCTRL_USE from y
default CONT%(cn)d_CAP_UMUTEX_USE from y
default CONT%(cn)d_CAP_IPC_TARGET from 0
# Capability Menus
menu cont%(cn)d_cap_tctrl
CONT%(cn)d_CAP_TCTRL_USE
CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_TCTRL_TARGET_CURRENT_PAGER_SPACE
menu cont%(cn)d_cap_exregs
CONT%(cn)d_CAP_EXREGS_USE
CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_EXREGS_TARGET_CURRENT_PAGER_SPACE
menu cont%(cn)d_cap_capctrl
CONT%(cn)d_CAP_CAPCTRL_USE
CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_CAPCTRL_TARGET_CURRENT_PAGER_SPACE
menu cont%(cn)d_cap_umutex
CONT%(cn)d_CAP_UMUTEX_USE
CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_UMUTEX_TARGET_CURRENT_PAGER_SPACE
menu cont%(cn)d_cap_irqctrl
CONT%(cn)d_CAP_IRQCTRL_USE
CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_IRQCTRL_TARGET_CURRENT_PAGER_SPACE
menu cont%(cn)d_cap_ipc
CONT%(cn)d_CAP_IPC_USE
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_CONTAINER
CONT%(cn)d_CAP_IPC_TARGET_CURRENT_PAGER_SPACE
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_CONTAINER
CONT%(cn)d_CAP_IPC_TARGET_ANOTHER_PAGER
CONT%(cn)d_CAP_IPC_TARGET%
menu cont%(cn)d_cap_threadpool
CONT%(cn)d_CAP_THREADPOOL_USE
CONT%(cn)d_CAP_THREADPOOL_SIZE%
menu cont%(cn)d_cap_spacepool
CONT%(cn)d_CAP_SPACEPOOL_USE
CONT%(cn)d_CAP_SPACEPOOL_SIZE%
menu cont%(cn)d_cap_mappool
CONT%(cn)d_CAP_MAPPOOL_USE
CONT%(cn)d_CAP_MAPPOOL_SIZE%
menu cont%(cn)d_cap_mutexpool
CONT%(cn)d_CAP_MUTEXPOOL_USE
CONT%(cn)d_CAP_MUTEXPOOL_SIZE%
menu cont%(cn)d_cap_cappool
CONT%(cn)d_CAP_CAPPOOL_USE
CONT%(cn)d_CAP_CAPPOOL_SIZE%
menu cont%(cn)d_capability_list
cont%(cn)d_cap_threadpool
cont%(cn)d_cap_spacepool
cont%(cn)d_cap_mutexpool
cont%(cn)d_cap_mappool
cont%(cn)d_cap_cappool
cont%(cn)d_cap_tctrl
cont%(cn)d_cap_exregs
cont%(cn)d_cap_ipc
cont%(cn)d_cap_capctrl
cont%(cn)d_cap_umutex
cont%(cn)d_cap_irqctrl
cont%(cn)d_cap_custom0
cont%(cn)d_cap_custom1
cont%(cn)d_cap_custom2
cont%(cn)d_cap_custom3
menu container%(cn)d_options
CONT%(cn)d_OPT_NAME$
cont%(cn)d_baremetal_params
cont%(cn)d_linux_pager_params
cont%(cn)d_default_pager_params
cont%(cn)d_posix_pager_params
cont%(cn)d_physmem_list
cont%(cn)d_virtmem_list
cont%(cn)d_capability_list
cont%(cn)d_device_list
choices container%(cn)d_type
CONT%(cn)d_TYPE_BAREMETAL
CONT%(cn)d_TYPE_POSIX
CONT%(cn)d_TYPE_LINUX
default CONT%(cn)d_TYPE_BAREMETAL
menu cont%(cn)d_menu
container%(cn)d_type
container%(cn)d_options