Hello all, Below are two separate issues carelessly smashed into one e-mail - if you have any comments on either one then I'm all ears.
-------- x86 --------- After building Genode+Fiasco [1] I can run the hello demo and scout demo (from "build/bin/*") on top of Linux, but I can't seem to boot bare metal. I'm copying the binaries from "<compound-build>/genode.fiasco_x86/bin", getting bootstrap and sigma0 from "<compound-build>/l4env/bin/...", and L4 kernel from "<compound-build>/fisco_x86/main".
When I boot, the kernel starts up, prints a pc and sp (I notice "Roottask" has a stack address of all zeros). And quickly restarts. I'd paste output but it auto restarts and I don't have a serial port to over which I could collect output.
The config (this is one, I've tried lots of alterations): ############## <config> <start> <filename>vesa_drv</filename> <ram_quota>2M</ram_quota> </start> <start> <filename>timer</filename> <ram_quota>0x20000</ram_quota> </start> <start> <filename>nitpicker</filename> <ram_quota>1M</ram_quota> </start> <start> <filename>hello_server</filename> <ram_quota>1M</ram_quota> </start> <start> <filename>hello_client</filename> <ram_quota>1M</ram_quota> </start> </config> #################
And the grub entry: ############# title L4 Fiasco + Genode (10.02) kernel /bootstrap -modaddr=0x03000000 module /fiasco nowait -nokdb -tbuf_entries=16384 -serial_esc module /sigma0 module /core module /init module /config module /vesa_drv module /nitpicker module /timer module /launchpad module /testnit module /scout module /nitlog module /liquid_fb module /hello_server module /hello_client ###############
Any help? Let me know if you want more info.
[1] http://genode.org/community/wiki/GenodeOnL4Fiasco
-------- ARM -------- Separately, I'm having trouble building Fiasco on ARM - basically its missing types.h. Am I missing a step?
After altering specs.conf "SPECS = genode fiasco_arm" And after setting tools.conf to point at my cross compiler:
[tommd@...36... genode-arm]$ cp tool/builddir/etc/build.conf.fiasco_x86 tool/builddir/etc/build.conf.fiasco_arm [tommd@...36... genode-arm]$ ./tool/builddir/create_builddir fiasco_arm GENODE_DIR=. BUILD_DIR=~/dev/genode-arm/3rd-build/genode-fiasco_arm L4_DIR=~/dev/genode-arm/3rd-build/3rd/l4env successfully created build directory at /home/tommd/dev/genode-arm/3rd-build/genode-fiasco_arm [tommd@...36... genode-arm]$ make -C ~/dev/genode-arm/3rd-build/genode-fiasco_arm/ make: Entering directory `/home/tommd/dev/genode-arm/3rd-build/genode-fiasco_arm'
Processing /home/tommd/dev/genode-arm/base-fiasco/src/core/arm/target.mk ------------------------------------------------------------------------ Library avl_tree COMPILE avl_tree_avl_tree.o MERGE avl_tree.lib.a Library slab COMPILE slab_slab.o MERGE slab.lib.a Library allocator_avl COMPILE allocator_avl_allocator_avl.o MERGE allocator_avl.lib.a Library cxx COMPILE cxx_exception.o COMPILE cxx_guard.o COMPILE cxx_malloc_free.o In file included from /home/tommd/dev/genode-arm/base/include/base/typed_capability.h:17, from /home/tommd/dev/genode-arm/base/include/parent/capability.h:17, from /home/tommd/dev/genode-arm/base/include/base/env.h:20, from /home/tommd/dev/genode-arm/base/src/base/cxx/malloc_free.cc:17: /home/tommd/dev/genode-arm/base-fiasco/include/base/capability.h:18: fatal error: l4/sys/types.h: No such file or directory compilation terminated. make[4]: *** [cxx_malloc_free.o] Error 1 make[3]: *** [cxx.tag] Error 2 make[2]: *** [all_sequence] Error 2 make[1]: *** [single_target] Error 2 make: *** [.] Error 2 make: Leaving directory `/home/tommd/dev/genode-arm/3rd-build/genode-fiasco_arm'
Any help on either of these would be much appreciated. I'd love to use/contribute to Genode but if I can't build it myself / be self sufficient (perhaps I should be embarrassed) then I'm far from helpful!
Cheers, Thomas