Commit 68b06deb authored by Kaj-Michael Lang's avatar Kaj-Michael Lang Committed by Linus Torvalds

[PATCH] gbefb: IP32 gbefb depth change fix

The gbefb driver does not update the framebuffer layers visual setting when
depth is changed with fbset, resulting in strange colors (very dark blue in
16-bit, almost black in 24-bit).
Signed-off-by: default avatarKaj-Michael Lang <milang@tal.org>
Signed-off-by: default avatarMartin Michlmayr <tbm@cyrius.com>
Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
Cc: <stable@kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 2b932f6c
...@@ -656,12 +656,15 @@ static int gbefb_set_par(struct fb_info *info) ...@@ -656,12 +656,15 @@ static int gbefb_set_par(struct fb_info *info)
switch (bytesPerPixel) { switch (bytesPerPixel) {
case 1: case 1:
SET_GBE_FIELD(WID, TYP, val, GBE_CMODE_I8); SET_GBE_FIELD(WID, TYP, val, GBE_CMODE_I8);
info->fix.visual = FB_VISUAL_PSEUDOCOLOR;
break; break;
case 2: case 2:
SET_GBE_FIELD(WID, TYP, val, GBE_CMODE_ARGB5); SET_GBE_FIELD(WID, TYP, val, GBE_CMODE_ARGB5);
info->fix.visual = FB_VISUAL_TRUECOLOR;
break; break;
case 4: case 4:
SET_GBE_FIELD(WID, TYP, val, GBE_CMODE_RGB8); SET_GBE_FIELD(WID, TYP, val, GBE_CMODE_RGB8);
info->fix.visual = FB_VISUAL_TRUECOLOR;
break; break;
} }
SET_GBE_FIELD(WID, BUF, val, GBE_BMODE_BOTH); SET_GBE_FIELD(WID, BUF, val, GBE_BMODE_BOTH);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment