summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMarcel Tunnissen <Marcel.Tuennissen@stericsson.com>2011-05-10 12:00:52 +0200
committerPhilippe Langlais <philippe.langlais@linaro.org>2012-03-19 08:59:59 +0100
commit5028c882a47d7a8f55fcedfecc659f8cc7f80fdf (patch)
tree20e304b4ae34544659d28f94954f61a1c729cfcd /include
parent96c608b95949bab274e5d119ee2d6014a6556ce9 (diff)
video: mcde: Support YUV 422 overlay pixel format
This patch adds support for converting an overlay with YUV 422 pixel format. ST-Ericsson ID: 339423 ST-Ericsson Linux next: Not tested, ER 282779 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I5a8536c12f12b6cf69f7053cc236e274d13295b4 Signed-off-by: Marcel Tunnissen <Marcel.Tuennissen@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/22867 Reviewed-by: Jimmy RUBIN <jimmy.rubin@stericsson.com> Tested-by: Marcel TUNNISSEN <marcel.tuennissen@stericsson.com> Reviewed-by: QATOOLS Reviewed-by: Per PERSSON <per.xb.persson@stericsson.com>
Diffstat (limited to 'include')
-rw-r--r--include/video/mcde.h14
-rw-r--r--include/video/mcde_display-ab8500.h2
-rw-r--r--include/video/mcde_display-av8100.h2
3 files changed, 13 insertions, 5 deletions
diff --git a/include/video/mcde.h b/include/video/mcde.h
index 7476b7b32f4..97eeef01c19 100644
--- a/include/video/mcde.h
+++ b/include/video/mcde.h
@@ -141,7 +141,14 @@ enum mcde_hdmi_sdtv_switch {
DVI_SWITCH
};
-struct mcde_col_convert {
+enum mcde_col_convert {
+ MCDE_CONVERT_RGB_2_RGB,
+ MCDE_CONVERT_RGB_2_YCBCR,
+ MCDE_CONVERT_YCBCR_2_RGB,
+ MCDE_CONVERT_YCBCR_2_YCBCR,
+};
+
+struct mcde_col_transform {
u16 matrix[3][3];
u16 offset[3];
};
@@ -197,7 +204,7 @@ enum mcde_ovly_pix_fmt {
MCDE_OVLYPIXFMT_RGB888 = 4,
MCDE_OVLYPIXFMT_RGBX8888 = 5,
MCDE_OVLYPIXFMT_RGBA8888 = 6,
- MCDE_OVLYPIXFMT_YCbCr422 = 7,/* REVIEW: Capitalize */
+ MCDE_OVLYPIXFMT_YCbCr422 = 7,
};
/* Display power modes */
@@ -320,7 +327,8 @@ int mcde_chnl_set_pixel_format(struct mcde_chnl_state *chnl,
int mcde_chnl_set_palette(struct mcde_chnl_state *chnl,
struct mcde_palette_table *palette);
void mcde_chnl_set_col_convert(struct mcde_chnl_state *chnl,
- struct mcde_col_convert *col_convert);
+ struct mcde_col_transform *transform,
+ enum mcde_col_convert convert);
int mcde_chnl_set_video_mode(struct mcde_chnl_state *chnl,
struct mcde_video_mode *vmode);
/* TODO: Remove rotbuf* parameters when ESRAM allocator is implemented*/
diff --git a/include/video/mcde_display-ab8500.h b/include/video/mcde_display-ab8500.h
index 336fe441f42..ffebe62af92 100644
--- a/include/video/mcde_display-ab8500.h
+++ b/include/video/mcde_display-ab8500.h
@@ -15,7 +15,7 @@
struct ab8500_display_platform_data {
/* Platform info */
- struct mcde_col_convert rgb_2_yCbCr_transform;
+ struct mcde_col_transform *rgb_2_yCbCr_transform;
int nr_regulators;
const char *regulator_id[];
};
diff --git a/include/video/mcde_display-av8100.h b/include/video/mcde_display-av8100.h
index b0bbc02c1f8..52578a675f1 100644
--- a/include/video/mcde_display-av8100.h
+++ b/include/video/mcde_display-av8100.h
@@ -32,7 +32,7 @@ struct mcde_display_hdmi_platform_data {
const char *cvbs_regulator_id;
int reset_delay; /* ms */
u32 ddb_id;
- struct mcde_col_convert rgb_2_yCbCr_transform;
+ struct mcde_col_transform *rgb_2_yCbCr_transform;
/* Driver data */ /* TODO: move to driver data instead */
bool hdmi_platform_enable;