Fiasco-OC.UX, ux_con and the framebuffer examples

Paul Boddie paul at
Fri Jan 22 00:37:12 CET 2016

On Thursday 21. January 2016 23.59.16 Adam Lackorzynski wrote:
> On Wed Jan 20, 2016 at 16:40:38 +0100, Paul Boddie wrote:
> > 
> > ...I start UX using the following command:
> > 
> > make O=mybuild ux E=x86-fb-example MODULES_LIST=conf/examples/x86-fb.list
> > Then I get the following log information:
> Well, I probably forgot to mention, do not start fb-drv.

OK, I've commented out the following in x86-fb.cfg:

           caps = {
          vbus = io_buses.fbdrv,
          fb   = fbdrv_fb:svr(),
           log      = { "fbdrv", "r" },
        l4re_dbg = L4.Dbg.Warn,

And I removed the following line from x86-fb.list:

module fb-drv

Now, I don't see this...

> > fbdrv   | Trying execution of ``set VBE mode'' using x86emu
> > fbdrv   | L4Re[rm]: unhandled read page fault at 0xfd0 pc=0x1007d49
> > fbdrv   | L4Re: unhandled exception: pc=0x1007d49 (pfa=fd0)
> > fbdrv   | L4Re: Global::l4re_aux->ldr_flags=0

...which is probably a positive sign, but with UX_GFX set to 800x600 at 24, I 
still see this...

> > spectrum| x:640 y:480 bit/pixel:24 bytes/line:1920
> > spectrum| L4Re[rm]: unhandled write page fault at 0x4e1000 pc=0x10011b0
> > spectrum| L4Re: unhandled exception: pc=0x10011b0 (pfa=4e1002)
> > spectrum| L4Re: Global::l4re_aux->ldr_flags=0


> Ok, if there's something on the screen like this, this sounds like a
> mismatch in the graphics config path somewhere, try 800x600 at 16 or
> 800x600 at 32. For the page-fault I don't know right away, is it gone when
> not starting fb-drv? I tried it a few days back and it worked for me.

However, if I follow this advice - in my case, changing UX_GFX to 800x600 at 32 - 
it solves the problem and I see a nice colourful demo. :-)

Interestingly, though, I still get this line in the output log:

spectrum| x:640 y:480 bit/pixel:24 bytes/line:2560

> > Sorry if this is all trivial stuff that I should have figured out myself!
> > And thanks for the guidance so far. :-)
> Nah, I'd not call this exactly trivial :)

Well, I think I've picked up some knowledge working through this. Hopefully, 
this may push me to the next level, which could involve trying to get the 
framebuffer working on a MIPS32 device (for which the setup code is already 
available in Linux and is something I've worked with already without Linux 
being involved), but there may need to be some smaller steps on the way there.

Thanks once again!


More information about the l4-hackers mailing list