Thanks Siwei. This was very helpful. I do have a follow up question about the addresses used in the devices.camkes file. Are these board specific or standard locations for the microkernel? The board I am using is a zcu102. Not sure where/how to find the appropriate address to use for the sdhci device.
— Travis > On Jun 23, 2020, at 3:54 AM, Zhuang, Siwei (Data61, Kensington NSW) > <[email protected]> wrote: > > Hi Travis, > > If you only need one VM to access the SD card. You could pass-through the SD > card controller to Linux, recompile the Linux kernel with the proper driver. > Then passing your rootfs on SD card via Linux kernel boot parameters. An > example can be found in the "camkes-arm-vm" repo. Have a read about the "TK1 > configuration" on this page, > > https://docs.sel4.systems/projects/camkes-arm-vm/ > > The configuration code can be found here, > > > https://github.com/SEL4PROJ/camkes-arm-vm/blob/master/apps/vm_minimal/tk1/devices.camkes#L38 > > https://github.com/SEL4PROJ/camkes-arm-vm/blob/master/apps/vm_minimal/tk1/devices.camkes#L43 > > If you need to share the SD card between an native seL4 application and a VM > or among multiple VMs, you'll need a virtual SD card driver. We only have a > virtual USB driver at the moment. Use it as a reference to make your virtual > driver. The code can be found here, > > > https://github.com/SEL4PROJ/seL4_projects_libs/blob/master/libsel4vmmplatsupport/src/arch/arm/devices/vusb.c > > https://github.com/SEL4PROJ/camkes-arm-vm/blob/master/components/VM/src/modules/plat/exynos5410/init.c > > You can of course partition the SD card, if your board supports boot from SD > card. Consult the board's manual regarding how to boot from SD card. Note > that, the Linux VM would have the access to your boot partition, hence the > seL4 boot image could be compromised. To avoid that, you'll need to intercept > the SD card access from the VM. The code here demonstrates one way of doing > it, > > > https://github.com/SEL4PROJ/seL4_projects_libs/blob/master/libsel4vmmplatsupport/src/plat/exynos5/devices/vsdhc.c > > Hope these helps. > > - Siwei > ________________________________________ > From: Devel <[email protected]> on behalf of Travis Wheatley > <[email protected]> > Sent: Tuesday, 23 June 2020 6:47 AM > To: [email protected] > Subject: [seL4] ramdisk vs. persistant rfs in VMs. > > I’ve been working with VMs running under SEL4 on ARM hardware. I have been > able to boot to a command prompt in a VM. However, the filesystem being used > is a ramdisk. I need some sort of persistent storage, preferably a regular > rfs that lives on an SD card. Not exactly sure what modifications to make and > where to cause the kernel to use a persistent rfs rather than the ramdisk. > Barring that, wondering if the SD card can be divided into multiple > partitions such that one can be the boot partition and the other mounted to > provide persistent storage space. Hoping one of y’all can point me in the > right direction. > > — Travis > _______________________________________________ > Devel mailing list > [email protected] > https://sel4.systems/lists/listinfo/devel _______________________________________________ Devel mailing list [email protected] https://sel4.systems/lists/listinfo/devel
