In a regular seL4 PD, I always have seL4_BootInfo available via platsupport_get_bootinfo(), and all goodies that I can learn from therein are available.
But it appears that the camkes components (probably we should talk about "client components", i.e. the ones with "control;" attribute and an entry point: int run(void)), are started as a typical root task, with a call: void __sel4_start_root(seL4_BootInfo *boot_info) however boot_info is passed herein as NULL. At least boot_info appears NULL for me on ARM64. So, is the access to seL4_BootInfo disallowed in camkes env? Or how can I access seL4_BootInfo in camkes?
The bootinfo isn't disallowed in a CAmkES environment but parts of it is gutted out (untyped information, IRQ control cap etc.) depending on the configuration of the CAmkES application. To access the bootinfo, you could append this configuration option for a specific component in the "configuration" block in the ".camkes" file of your application:
<component_name>.simple = true;
The simple_t interface which abstracts the bootinfo can then be grabbed via the 'camkes_make_simple()' function.
There are examples of the bootinfo usage in our CAmkES VM repositories that you can checkout here: https://github.com/seL4/camkes-vm/blob/master/components/VM_Arm/src/main.c#L...