sm501fb: direct color visual does not work
authorVille Syrjala <syrjala@sci.fi>
Tue, 4 Mar 2008 22:28:46 +0000 (14:28 -0800)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Wed, 5 Mar 2008 00:35:13 +0000 (16:35 -0800)
The sm501fb palette code clearly does not handle direct color so change the
driver to use true color visual for 16bpp.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Acked-by: Magnus Damm <damm@igel.co.jp>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/video/sm501fb.c

index e83dfba7e6361af564390dcd553dcdd6a1790ee5..6e7810d914ccd75c5837ab9cef2fd76609a6ba52 100644 (file)
@@ -397,7 +397,7 @@ static int sm501fb_set_par_common(struct fb_info *info,
                break;
 
        case 16:
-               info->fix.visual = FB_VISUAL_DIRECTCOLOR;
+               info->fix.visual = FB_VISUAL_TRUECOLOR;
                break;
 
        case 32:
@@ -613,6 +613,7 @@ static int sm501fb_set_par_crt(struct fb_info *info)
 
        case 16:
                control |= SM501_DC_CRT_CONTROL_16BPP;
+               sm501fb_setup_gamma(fbi, SM501_DC_CRT_PALETTE);
                break;
 
        case 32:
@@ -750,6 +751,7 @@ static int sm501fb_set_par_pnl(struct fb_info *info)
 
        case 16:
                control |= SM501_DC_PANEL_CONTROL_16BPP;
+               sm501fb_setup_gamma(fbi, SM501_DC_PANEL_PALETTE);
                break;
 
        case 32: