Genode on i.MX6Q Sabre Lite
Hinnerk van Bruinehsen
h.v.bruinehsen at ...491...
Mon Apr 3 12:41:48 CEST 2017
I have done some testing to get seL4 and Genode boot on an ARM device
(AM335x based). I have a branch on github that got into the Genode
userland code, but it sadly isn't that up to date (from december 2016).
I just broke x86 support for testing purposes (as it is more or less
hard coded in Genode's seL4 code).
There are a few more things to consider:
- my board uses barebox as bootloader (an uboot fork, so I guess much
would work for uboot, too)
- I also used a somewhat hacked version of seL4's elfloader to get an
image, that combines the seL4 kernel and the genode userland to use
with uboot. I guess it also may work using the Genode image as
initramfs, but I never really tried that.
- The branch referenced above does get into the Genode userland, but
fails relatively early on due to a cap fault. (You can read the
simple_root_task.txt from the documentation directory in base-sel4 -
there is a part about GS-relative addressing of a
thread-local-storage facility. My guess is, that that's the point
were it fails on my branch).
I guess the real question is, considering that Genode+seL4 on ARM is
planned for this year, how much work makes sense. Especially because it
would really only make sense, if one has a concept to split the code in
a way that allows to build seL4 for different architectures at the same
time, which essentially means, that the code could be upstreamed. To get
that done, likely would required a certain ammount of coordination with
On Mon, Apr 03, 2017 at 10:36:48AM +0200, Alexander Boettcher wrote:
> On 03.04.2017 04:49, Yevgeny Lavrov wrote:
> > This did the trick and sd_card_bench successfully executed :)
> Good !
> > On seL4 side I got this far:
> > The error occurs once the build process hits one of the files within this
> > directory: base-sel4/src/core and these files appear to be Genode specific.
> > I was able to clear out errors that are caused by wrong object types, but I
> > hit dead end once I reach io_port_session_support.c
> io_ports are a speciality on x86, so on ARM you have to skip the
> io_port* files completely. (On base-hw, which runs x86 and arm, look
> there into the mk files, where the io_port* files depended on the
> platform are added or not).
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> genode-main mailing list
> genode-main at lists.sourceforge.net
More information about the users