Hi Travis,
The addresses are board specific. The document for your board is UG1085,
https://www.xilinx.com/support/documentation/user_guides/ug1085-zynq-ultrascale-trm.pdf
If all you need is a number, you can also find it in the dts files in u-boot,
Linux kernel or seL4,
https://github.com/seL4/seL4/blob/master/tools/dts/zynqmp.dts#L900, #L910
- Siwei
________________________________________
From: Travis Wheatley <[email protected]>
Sent: Thursday, 25 June 2020 5:49 AM
To: [email protected]
Cc: Zhuang, Siwei (Data61, Kensington NSW)
Subject: Re: ramdisk vs. persistant rfs in VMs.
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