Thread (7 messages) 7 messages, 2 authors, 2015-01-22

Re: fbcon gives mirrored fonts on monochrome display

flat view

From: Noralf Trønnes <hidden>
Date: 2015-01-22 20:38:50

Den 22.01.2015 20:59, skrev Geert Uytterhoeven:
Hi Noralf,

On Thu, Jan 22, 2015 at 8:55 PM, Noralf Trønnes [off-list ref] wrote:
quoted
Den 22.01.2015 20:44, skrev Geert Uytterhoeven:
quoted
On Thu, Jan 22, 2015 at 7:47 PM, Noralf Trønnes [off-list ref] wrote:
quoted
I'm playing with a SSD1306 128x64 monochrome display and fbcon gives me
mirrored fonts and some extra lines.
fbdev config:
    info->var.bits_per_pixel = 1;
    info->fix.visual = FB_VISUAL_MONO10;
    info->var.red.length = 1;
    info->var.red.offset = 0;
    info->var.green.length = 1;
    info->var.green.offset = 0;
    info->var.blue.length = 1;
    info->var.blue.offset = 0;
Uses: sys_fillrect, sys_copyarea, sys_imageblit (and deferred_io)

System: Raspberry Pi, ARM, Linux 3.18.3

Does anyone see what this might be?
What's the value on CONFIG_FB_CFB_REV_PIXELS_IN_BYTE in your .config?
$ zgrep CONFIG_FB_CFB_REV_PIXELS_IN_BYTE /proc/config.gz
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
quoted
Does your driver set FB_NONSTD_REV_PIX_IN_B?
No it doesn't. I also tried setting it now, with no effect:
info->var.nonstd = FB_NONSTD_REV_PIX_IN_B;
The latter only seems to matter if CONFIG_FB_CFB_REV_PIXELS_IN_BYTE
is set, so please try the config option first.
$ zgrep CONFIG_FB_CFB_REV_PIXELS_IN_BYTE /proc/config.gz
CONFIG_FB_CFB_REV_PIXELS_IN_BYTE=y

$ dmesg
[  365.595787]   nonstd = 2

It didn't change anything.

I looked up the code that is affected by this change, and only the 
cbf*.c files use the rev/swap/shift functions from fb_draw.h
I use the sys_* modules not cbf*
In principle the driver is like fb_ssd1307. It copies the framebuffer to 
RAM in the LCD controller at deferred_io intervals.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help