Files
codezero/config/cml/container.template.cml
Bahadir Balban 10d2d7269f CML2 rule file is autogenerated from arm.cml and the containers template
Container rules are too many and repetitive for each container. With this
change, the cml file is autogenerated from a container template cml and
the architecture cml, e.g. arm.cml. -c option determines the number of
containers. See build.py -h for more.
2009-09-26 16:39:04 +03:00

169 lines
6.2 KiB
Plaintext

symbols
CONT%d_TYPE_LINUX 'Linux Container'
CONT%d_TYPE_BARE 'Bare Container'
CONT%d_TYPE_C0_POSIX 'Codezero POSIX Services Container (mm0, fs0 microkernel services)'
CONT%d_OPT_DIRNAME 'Containers directory name under conts'
CONT%d_PHYSMEM_REGIONS 'Container %d number of physical regions'
CONT%d_PHYS0_START 'Container %d physical start address'
CONT%d_PHYS0_END 'Container %d physical end address'
CONT%d_PHYS1_START 'Container %d physical start address'
CONT%d_PHYS1_END 'Container %d physical end address'
CONT%d_PHYS2_START 'Container %d physical start address'
CONT%d_PHYS2_END 'Container %d physical end address'
CONT%d_PHYS3_START 'Container %d physical start address'
CONT%d_PHYS3_END 'Container %d physical end address'
CONT%d_VIRTMEM_REGIONS 'Container %d number of virtual regions'
CONT%d_VIRT0_START 'Container %d virtual start address'
CONT%d_VIRT0_END 'Container %d virtual end address'
CONT%d_VIRT1_START 'Container %d virtual start address'
CONT%d_VIRT1_END 'Container %d virtual end address'
CONT%d_VIRT2_START 'Container %d virtual start address'
CONT%d_VIRT2_END 'Container %d virtual end address'
CONT%d_VIRT3_START 'Container %d virtual start address'
CONT%d_VIRT3_END 'Container %d virtual end address'
CONT%d_VIRT4_START 'Container %d virtual start address'
CONT%d_VIRT4_END 'Container %d virtual end address'
CONT%d_VIRT5_START 'Container %d virtual start address'
CONT%d_VIRT5_END 'Container %d virtual end address'
CONT%d_PAGER_LMA 'Container %d Pager LMA'
CONT%d_PAGER_VMA 'Container %d Pager VMA'
CONT%d_PAGER_SIZE 'Container %d Pager Initial map size (Optional)'
CONT%d_LINUX_PAGE_OFFSET 'Container %d Linux PAGE_OFFSET parameter'
CONT%d_LINUX_TEXT_OFFSET 'Container %d Linux TEXT_OFFSET parameter'
CONT%d_LINUX_PHYS_OFFSET 'Container %d Linux PHYS_OFFSET parameter'
CONT%d_LINUX_MAPSIZE 'Container %d Linux Initial kernel map size parameter'
default CONT%d_PAGER_LMA from 0x0
default CONT%d_PAGER_VMA from 0x0
default CONT%d_PAGER_SIZE from 0x0
default CONT%d_LINUX_PAGE_OFFSET from 0x0
default CONT%d_LINUX_TEXT_OFFSET from 0x0
default CONT%d_LINUX_PHYS_OFFSET from 0x0
default CONT%d_LINUX_MAPSIZE from 0x0
default CONT%d_VIRTMEM_REGIONS from 1
default CONT%d_PHYSMEM_REGIONS from 1
# Define limits on virtual and physical memory regions of a _single_ container 0. Too much code!
when CONT%d_VIRTMEM_REGIONS < 2 suppress CONT%d_VIRT1_START CONT%d_VIRT1_END
when CONT%d_VIRTMEM_REGIONS < 2 suppress CONT%d_VIRT2_START CONT%d_VIRT2_END
when CONT%d_VIRTMEM_REGIONS < 2 suppress CONT%d_VIRT3_START CONT%d_VIRT3_END
when CONT%d_VIRTMEM_REGIONS < 2 suppress CONT%d_VIRT4_START CONT%d_VIRT4_END
when CONT%d_VIRTMEM_REGIONS < 2 suppress CONT%d_VIRT5_START CONT%d_VIRT5_END
when CONT%d_VIRTMEM_REGIONS < 3 suppress CONT%d_VIRT2_START CONT%d_VIRT2_END
when CONT%d_VIRTMEM_REGIONS < 3 suppress CONT%d_VIRT3_START CONT%d_VIRT3_END
when CONT%d_VIRTMEM_REGIONS < 3 suppress CONT%d_VIRT4_START CONT%d_VIRT4_END
when CONT%d_VIRTMEM_REGIONS < 3 suppress CONT%d_VIRT5_START CONT%d_VIRT5_END
when CONT%d_VIRTMEM_REGIONS < 4 suppress CONT%d_VIRT3_START CONT%d_VIRT3_END
when CONT%d_VIRTMEM_REGIONS < 4 suppress CONT%d_VIRT4_START CONT%d_VIRT4_END
when CONT%d_VIRTMEM_REGIONS < 4 suppress CONT%d_VIRT5_START CONT%d_VIRT5_END
when CONT%d_VIRTMEM_REGIONS < 5 suppress CONT%d_VIRT4_START CONT%d_VIRT4_END
when CONT%d_VIRTMEM_REGIONS < 5 suppress CONT%d_VIRT5_START CONT%d_VIRT5_END
when CONT%d_VIRTMEM_REGIONS < 6 suppress CONT%d_VIRT5_START CONT%d_VIRT5_END
when CONT%d_PHYSMEM_REGIONS < 2 suppress CONT%d_PHYS1_START CONT%d_PHYS1_END
when CONT%d_PHYSMEM_REGIONS < 2 suppress CONT%d_PHYS2_START CONT%d_PHYS2_END
when CONT%d_PHYSMEM_REGIONS < 2 suppress CONT%d_PHYS3_START CONT%d_PHYS3_END
when CONT%d_PHYSMEM_REGIONS < 3 suppress CONT%d_PHYS2_START CONT%d_PHYS2_END
when CONT%d_PHYSMEM_REGIONS < 3 suppress CONT%d_PHYS3_START CONT%d_PHYS3_END
when CONT%d_PHYSMEM_REGIONS < 4 suppress CONT%d_PHYS3_START CONT%d_PHYS3_END
default CONT%d_PHYS0_START from 0x0
default CONT%d_PHYS0_END from 0x0
default CONT%d_PHYS1_START from 0x0
default CONT%d_PHYS1_END from 0x0
default CONT%d_PHYS2_START from 0x0
default CONT%d_PHYS2_END from 0x0
default CONT%d_PHYS3_START from 0x0
default CONT%d_PHYS3_END from 0x0
default CONT%d_VIRT0_START from 0x0
default CONT%d_VIRT0_END from 0x0
default CONT%d_VIRT1_START from 0x0
default CONT%d_VIRT1_END from 0x0
default CONT%d_VIRT2_START from 0x0
default CONT%d_VIRT2_END from 0x0
default CONT%d_VIRT3_START from 0x0
default CONT%d_VIRT3_END from 0x0
default CONT%d_VIRT4_START from 0x0
default CONT%d_VIRT4_END from 0x0
default CONT%d_VIRT5_START from 0x0
default CONT%d_VIRT5_END from 0x0
default CONT%d_OPT_DIRNAME from (CONT%d_TYPE_LINUX==y) ? "linux" : ((CONT%d_TYPE_BARE==y) ? "bare%d" : "noname")
when CONT%d_TYPE_LINUX==y suppress cont%d_bare_pager_params
when CONT%d_TYPE_BARE==y suppress cont%d_linux_pager_params
symbols
cont%d_menu 'Container %d Parameters'
cont%d_physmem_list 'Container %d physical memory regions'
cont%d_virtmem_list 'Container %d Virtual memory regions'
container%d_type 'Container %d Type'
container%d_options 'Container %d Options'
cont%d_linux_pager_params 'Container %d Pager parameters'
cont%d_bare_pager_params 'Container %d Pager parameters'
menu cont%d_bare_pager_params
CONT%d_PAGER_LMA@
CONT%d_PAGER_VMA@
CONT%d_PAGER_SIZE@
menu cont%d_linux_pager_params
CONT%d_LINUX_PAGE_OFFSET@
CONT%d_LINUX_TEXT_OFFSET@
CONT%d_LINUX_PHYS_OFFSET@
CONT%d_LINUX_MAPSIZE@
menu cont%d_virtmem_list
CONT%d_VIRTMEM_REGIONS%
CONT%d_VIRT0_START@
CONT%d_VIRT0_END@
CONT%d_VIRT1_START@
CONT%d_VIRT1_END@
CONT%d_VIRT2_START@
CONT%d_VIRT2_END@
CONT%d_VIRT3_START@
CONT%d_VIRT3_END@
CONT%d_VIRT4_START@
CONT%d_VIRT4_END@
CONT%d_VIRT5_START@
CONT%d_VIRT5_END@
menu cont%d_physmem_list
CONT%d_PHYSMEM_REGIONS%
CONT%d_PHYS0_START@
CONT%d_PHYS0_END@
CONT%d_PHYS1_START@
CONT%d_PHYS1_END@
CONT%d_PHYS2_START@
CONT%d_PHYS2_END@
CONT%d_PHYS3_START@
CONT%d_PHYS3_END@
menu container%d_options
CONT%d_OPT_DIRNAME$
cont%d_linux_pager_params
cont%d_bare_pager_params
cont%d_physmem_list
cont%d_virtmem_list
choices container%d_type
CONT%d_TYPE_LINUX
CONT%d_TYPE_BARE
CONT%d_TYPE_C0_POSIX
default CONT%d_TYPE_BARE
menu cont%d_menu
container%d_type
container%d_options