s3c2410fb: BSWP vs HWSWP and colormap handling

Stefan Schmidt stefan at datenfreihafen.org
Sat Mar 17 01:05:48 CET 2007


As discussed in IRC here are the mail with my questions and


On the Neo1973 I see the following behaviour:

16bit depth text on the framebuffer console only rendered right with
HWSWP only enabled.

8bit depth text on the framebuffer console only rendered right with BWSP
only enabled.

Unfortunately the byte order rendering options are set static in

We need a way to make this register settings changeable in runtime.
You already suggested that you like to switch from direct register
poking for settings to a struct with modes.

I have not looked yet into fbset, but it should be the best place to
allow the switching from userspace.

What do you think?

Color map handling:

Using the Neo1973 in 16bit gives no problems either on framebuffer
console nor on X/kdrive. The problem begins with 8bit and X/kdrive.

During X/kdrive start I get the following error:

can't get colormap: Invalid argument

The error occurs due to the an ioctl failing for getting the colormap
from the framebuffer:

k = ioctl (priv->fd, FBIOGETCMAP, &cmap);
    if (k < 0)
    perror ("can't get colormap");

That brings me back to the point that something with the colormap
handling within s3c2410fb seems wrong.

In pxafb.c I found the following:

f (fbi->fb.var.bits_per_pixel == 16)
        fb_alloc_cmap(&fbi->fb.cmap, 1<<fbi->fb.var.bits_per_pixel, 0);

I can't found a fb_alloc_cmap inside the s3c2410fb driver, did I miss
something here?

As somebody who is new to framebuffer development I like to know if my
assumptions go in the right direction or are total misleading.

Stefan Schmidt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 241 bytes
Desc: Digital signature
Url : http://lists.openmoko.org/pipermail/openmoko-kernel/attachments/20070317/319e4d6d/attachment.pgp 

More information about the openmoko-kernel mailing list