Hi,
So, it is a normal behaviour, well. Then I mentioned wrong log lines -- there were some other errors. The full log looked like this:
[===================cut here========================] dtp:/media/os2l/var/src/genode/genode-11.02/bulid/bin# ./core int main(): --- create local services --- int main(): --- start init --- int main(): transferred 79 MB to init int main(): --- init created, waiting for exit condition --- [init] unsupported program segment type 0x4 No protocol specified No protocol specified [init -> launchpad] Could not open file "config" [init -> launchpad] Could not obtain config file [init -> fb_sdl] creating virtual framebuffer for mode 1024x768@16 [init -> fb_sdl] int main(int, char**): fb_ds_cap has port 34566 [init -> nitpicker] framebuffer is 1024x768@1 [init -> nitpicker] create session with args: fb_mode=1, label="launchpad", ram_quota=1646592 [init -> nitpicker] Could not open file "config" [init -> nitpicker] Could not obtain config file [init -> nitpicker] create session with args: fb_width=1024, fb_height=1504, fb_mode=1, label="launchpad", ram_quota=3088384 [init -> launchpad] Could not open file "config" [init -> launchpad] --- entering main loop --- ^Cint main(): --- destroying init --- virtual void Genode::Core_parent::close(Genode::Session_capability): implement me, please virtual void Genode::Core_parent::close(Genode::Session_capability): implement me, please context area detach from 0x2fe000 - not implemented int main(): --- core main says good bye --- dtp:/media/os2l/var/src/genode/genode-11.02/bulid/bin# ===================cut here========================]
Namely, something about incorrect program segment type 0x4. -- This log I have got when tried to specify a video mode with
vga=0x314 (1024x768x16bit)
in Linux kernel command line. So, that was probably, the compiled-in into the kernel vesa fb driver. With it I got that log, and no subsequent switch to the graphics video mode -- libSDL remained in text mode!
Yesterday I tried to remove the vga= line from Linux kernel command line, and launch Matrox fb driver again manually. libSDL then started the graphics mode successfully, like it was in the first time! So, maybe, it is some bug in Linux vesafb driver -- I thought that I broke something when I reinstalled Linux, but now appears that the cause was the use of another fb driver, which doesn't work.
PS: I also tried to start the Linux Genode version from within X11. -- There was still vesafb driver active in the console, but when I started it in xterm, libSDL again tried to use a framebuffer backend, not the X11 one. Maybe, I must edit some config files to switch backends or this is a bug too?
Please make sure to install DirectFB with fbcon support (I disabled X as well), also install/compile libsdl with DirectFB support. Take care of the permissions of /dev/fb0. Test this setup with some Linux SDL application to see if it works.
After that please apply the attached patch to Genode and see if it works for you.
Sebastian