[PATCH 04/10] video: ipufb: Fix 24bit format and implement 32bit format
Sascha Hauer
s.hauer at pengutronix.de
Wed Dec 18 10:42:36 EST 2013
When requested 32bit formats the IPU generated a 24bit format instead.
Implement real 32bit format (xxrrggbb) and let the IPU generate a 24bit format
when requested.
Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
drivers/video/imx-ipu-fb.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/video/imx-ipu-fb.c b/drivers/video/imx-ipu-fb.c
index 717fc71..858bde8 100644
--- a/drivers/video/imx-ipu-fb.c
+++ b/drivers/video/imx-ipu-fb.c
@@ -91,6 +91,8 @@ enum pixel_fmt {
IPU_PIX_FMT_BGR666,
/* 3 bytes */
IPU_PIX_FMT_RGB24,
+ /* 3 bytes */
+ IPU_PIX_FMT_RGB32,
};
struct di_mapping {
@@ -560,6 +562,9 @@ static void ipu_ch_param_set_size(struct ipu_ch_param *p,
case IPU_PIX_FMT_RGB24:
ipu_cpmem_set_format_rgb(p, &def_rgb_24);
break;
+ case IPU_PIX_FMT_RGB32:
+ ipu_cpmem_set_format_rgb(p, &def_rgb_32);
+ break;
default:
break;
}
@@ -594,8 +599,10 @@ static u32 bpp_to_pixfmt(int bpp)
switch (bpp) {
case 16:
return IPU_PIX_FMT_RGB565;
- case 32:
+ case 24:
return IPU_PIX_FMT_RGB24;
+ case 32:
+ return IPU_PIX_FMT_RGB32;
default:
return 0;
}
--
1.8.5.1
More information about the barebox
mailing list