tree b47b409739d68408476a0e0168e39aa841ef7e23
parent 686db9cd747977d556e02a728595b1f74bc148b8
author Sam Leffler <sleffler@google.com> 1690310094 -0700
committer Sam Leffler <sleffler@google.com> 1690330177 -0700

matcha/tock: add support for loading seL4/cantrip from nexus spi flash

Cantrip's seL4 boot bundle is a tarball of:
- seL4 kernel elf image
- capdl-loader elf image: seL4 rootserver + CAmkES components
- cpio archive of built-in apps, models, and opaque files

The loader copies each piece from spi flash to the appropriate place in
memory, starts the smc core running, and then passes boot parameters to
seL4 to do its bootstrap.

Copying the cpio archive to memory is a temporary hack to compensate
for the missing storage manager service meant to provide access to the
spi flash. A 1/2 MB of memory at the end of smc ram is reserved for the
archive. This carve out and the loader work will be eventually be removed.

Specific changes:
- reserve 1/2 MB of smc memory for the cantrip builtins bundle
- overhaul the elf loader to handle the seL4 boot bundle and retrieve
  data from spi flash
- setup hal support for the platform
- extend elf file support for loader needs
- add smc_send_bootmsg api for passing seL4 boot parameters to the smc
  via the mailbox interface
- add smc_ram_memcpy api for copying data to smc memory
- add smc_ram_zero api for zeroing smc memory (e.g. bss)

NB: the cpio archive may be omitted so that when booting on Renode the
    archive can be loaded without involving Tock; this can be used, for
    example, to load a bundle larger than 1/2M together with a larger
    smc memory config for testing

Change-Id: I7af318c25efc3613e44dc126d1e177c2485d48de
