-
Notifications
You must be signed in to change notification settings - Fork 60
Description
I am about to port seL4 to Visionfive 2 (v1.3b) . Since this board has the same SoC like Star64, I used it as a starting point.
One major issue I had to deal with is, that the description for the Star64 lacks some essential steps.
- The description is mainly based on star64_sdcard, but for Booting via microSD card it does not explain how to get the sel4 image on the sd card. I changed the
genimage.cfgto create a partition holding the image.
image data.vfat {
vfat {
files = {
"sel4test-driver-image-riscv-star64"
}
}
size = 8M
}
image sdcard.img {
hdimage {
gpt = true
}
partition spl {
image = "u-boot/spl/u-boot-spl.bin.normal.out"
partition-type-uuid = 2E54B353-1271-4842-806F-E436D6AF6985
offset = 2M
size = 2M
}
partition uboot {
image = "build/opensbi_uboot_payload.img"
partition-type-uuid = 5B193300-FC78-40CD-8002-E86C45580B47
offset = 4M
size = 4M
}
partition fatdata {
image = "data.vfat"
}
}
- The image generated by the sel4test suit contains its own openSBI partition. At least for the new target
visionfive2-1.3b, I had to rundd if=images/sel4test-driver-image-riscv-visionfive2-1.3b of=images/temp.image bs=1024 skip=2048to omit the first 2 MiB (openSBI). The resulting file could be loaded to 0x60000000 like the description said.
I can not verify that it behaves the same way on Star64 (I do not have a board) but I can tell that sel4test-driver-image-riscv-star64 starts with openSBI, too. It might be possible to skip the dd step and adjust the addresses in the u-boot console or change the build behavior of sel4test for the star64 target.
I did not check thoroughly on all supported targets but I can imagine that similar information is missing for other targets. I hope this helps others with first steps on seL4 :)
:~) now I continue debugging do get visionfive 2 running