Hi,
Thanks for the hints. I managed to solve the sd_card_bench issue. I've tried to print out completion state as Martin suggested by making the following changes to: <genode-dir>/repos/os/src/drivers/sd_card/spec/imx/driver.cc
driver.cc : line 131: error("command timed out irqstat: ", Mmio::read<Irqstat>());
And got the following output during run: “[init -> sd_card_bench] Error: command timed out irqstat: 0” I assumed that Genode is unable to locate the device for some reason, and decided to see if the same approach that worked for the UART would work here as well. Went back to /repos/base/include/spec/imx6/drivers/board_base.h and adjusted the SDHC variables to these values:
/* SD host controller */ SDHC_IRQ = 56, SDHC_MMIO_BASE = 0x02198000,
This did the trick and sd_card_bench successfully executed :)
On seL4 side I got this far: As it was suggested, I took files from base-sel4/lib/mk/spec/x86_32/ modified them, and placed them in newly created imx6 folder. These changes got me from:
checking library dependencies... Library-description file startup-sel4.mk is missing Library-description file syscall-sel4.mk is missing make[2]: *** No rule to make target 'startup-sel4.lib', needed by 'base-sel4-common.lib'. Stop.
to the point where build process hits:
Library core-sel4 COMPILE capability_space.o
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
Since I'm interested in something as basic as Hello World msg for now, do I need all the files from base-sel4/src/core directory or I may exclude some them?
Thanks
On Thu, Mar 30, 2017 at 4:43 AM, Alexander Boettcher < alexander.boettcher@...1...> wrote:
Hi,
On 29.03.2017 15:06, Martin Stein wrote:
And if it is possible, can you please suggest me a starting point for Genode/seL4 on i.MX6? I'm currently going through files in repos/base-sel4 directory and trying to make sense out of it. I'm still quite new to ARM platforms, as well as Genode and seL4 kernel, so I would greatly appreciate any thoughts or ideas of where to begin.
Unfortunately, I'm not that familiar with base-sel4. Maybe someone else can answer this?
Look for any x86 specific configuration/files in base-sel4 and come up with imx6 specific ones, I would guess. E.g. if you search for x86* you find in
repos/base-sel4/lib/mk/spec/x86_32
several files which setup the sel4 kernel for x86 (build the sel4 kernel, sel4 kernel bindings etc.). This must be (probably) also added to
repos/base-sel4/lib/mk/spec/imx6/
(somehow similar as base-hw does).
For example in repos/base-sel4/lib/mk/spec/x86_32/kernel-sel4.mk the seL4 kernel is build for x86_32. Here you have to come up with a kernel-sel4.mk in the imx6 folder which builds the sel4 kernel for imx6/Sabre lite. How this is exactly is done, you have to check the documentation of seL4.
Cheers,
Alex.
-- Alexander Boettcher Genode Labs
http://www.genode-labs.com - http://www.genode.org
Genode Labs GmbH - Amtsgericht Dresden - HRB 28424 - Sitz Dresden Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
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@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main