From: Krzysztof Helt The 24 bpp mode is not implemented. Disallow it in the cirrusfb_check_var() and remove it from checks. Signed-off-by: Krzysztof Helt Signed-off-by: Andrew Morton --- drivers/video/cirrusfb.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff -puN drivers/video/cirrusfb.c~cirrusfb-remove-24-bpp-mode drivers/video/cirrusfb.c --- a/drivers/video/cirrusfb.c~cirrusfb-remove-24-bpp-mode +++ a/drivers/video/cirrusfb.c @@ -638,7 +638,6 @@ static int cirrusfb_check_var(struct fb_ break; /* 8 pixel per byte, only 1/4th of mem usable */ case 8: case 16: - case 24: case 32: break; /* 1 pixel == 1 byte */ default: @@ -713,7 +712,6 @@ static int cirrusfb_check_var(struct fb_ var->blue.length = 5; break; - case 24: case 32: if (isPReP) { var->red.offset = 8; @@ -782,7 +780,6 @@ static int cirrusfb_decode_var(const str break; case 16: - case 24: case 32: info->fix.line_length = var->xres_virtual * maxclockidx; info->fix.visual = FB_VISUAL_DIRECTCOLOR; @@ -1360,7 +1357,7 @@ static int cirrusfb_set_par_foo(struct f */ else if (var->bits_per_pixel == 32) { - DPRINTK("cirrusfb: preparing for 24/32 bit deep display\n"); + DPRINTK("cirrusfb: preparing for 32 bit deep display\n"); switch (cinfo->btype) { case BT_SD64: /* Extended Sequencer Mode: 256c col. mode */ @@ -2233,7 +2230,7 @@ static int cirrusfb_set_fbinfo(struct fb if (cinfo->btype == BT_GD5480) { if (var->bits_per_pixel == 16) info->screen_base += 1 * MB_; - if (var->bits_per_pixel == 24 || var->bits_per_pixel == 32) + if (var->bits_per_pixel == 32) info->screen_base += 2 * MB_; } _