Re: [RFC] [PATCH] omapfb: Fix 12-bit display (RGB444 color mode) handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2010-01-14 at 21:25 +0100, ext Janusz Krzysztofik wrote:
> Support for RGB444 (12-bit) pixel format has been introduced into omapfb/lcdc 
> by Mark Underwood on 2006-05-26 (commit 
> f74edb6668aad9fc8e81585861b18f996c78a574) in preparation for Amstrad Delta 
> (E3) videophone LCD display support.

I haven't seen any comments on this. Shall I apply it to my tree?

 Tomi


> 
> Before the Amstrad Delta LCD patch by Jonathan McDowell was applied (on 
> 2006-08-04, commit 8d22fb2ea004cdb6379b54c1a8fd1546cfe40ed7), omapfb and lcdc 
> code was changed substantially (commit 
> e563dc81aa01bd8bbb01bc53975a15c398715f62 dated 2006-06-26) in a way that broke 
> Mark's 12-bit display support. Than, a patch by Jonathan, that supposed to 
> correct the problem, was introduced immediatelly (on 2006-08-04, commit 
> e10a75b49e7a57ae17c28b705153c70eba15a8ef).
> 
> As a result, the Amstrad Delta display was working correctly at boot time, 
> with fbset reporting:
> 
> 	geometry 480 320 480 320 16
> 	...
> 	rgba 4/8,4/4,4/0,0/0
> 
> However, after first framebuffer reinitialization, colors were no longer being 
> displayed correctly and fbset was reporting:
> 
>         rgba 5/11,6/5,5/0,0/0
> 
> The patch tries to correct the issue by setting plane->color_mode depending on 
> panel->bpp, not var->bits_per_pixel.
> 
> Created and tested on Amstrad Delta against linux-2.6.33-rc3.
> 
> Signed-off-by: Janusz Krzysztofik <jkrzysz@xxxxxxxxxxxx>
> 
> ---
> --- git/drivers/video/omap/omapfb_main.c.orig	2010-01-14 19:30:23.000000000 +0100
> +++ git/drivers/video/omap/omapfb_main.c	2010-01-14 20:31:18.000000000 +0100
> @@ -473,10 +473,11 @@ static int set_color_mode(struct omapfb_
>  		return 0;
>  	case 12:
>  		var->bits_per_pixel = 16;
> -		plane->color_mode = OMAPFB_COLOR_RGB444;
> -		return 0;
>  	case 16:
> -		plane->color_mode = OMAPFB_COLOR_RGB565;
> +		if (plane->fbdev->panel->bpp == 12)
> +			plane->color_mode = OMAPFB_COLOR_RGB444;
> +		else
> +			plane->color_mode = OMAPFB_COLOR_RGB565;
>  		return 0;
>  	default:
>  		return -EINVAL;


--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Tourism]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux