Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

OMAPDSS: DISPC: Fix OMAP4 supported color formats

Add missing but supported color formats for GFX pipeline in dss features:
RGBX16-4444, RGBA16-4444 and XRGB16-1555.

In dispc_ovl_set_color_mode():

- Remove unsupported modes on GFX pipeline: YUV2 and UYVY. Replace these by
missing modes supported by GFX pipelines: RGBX16-4444 and RGBA16-4444.

- Fix swapped modes on VID pipelines: RGBX16-4444 and XRGB16-4444.

Signed-off-by: Lajos Molnar <lajos@ti.com>
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>

authored by

Lajos Molnar and committed by
Tomi Valkeinen
08f3267e dd2116a3

+6 -5
+4 -4
drivers/video/omap2/dss/dispc.c
··· 735 735 switch (color_mode) { 736 736 case OMAP_DSS_COLOR_NV12: 737 737 m = 0x0; break; 738 - case OMAP_DSS_COLOR_RGB12U: 738 + case OMAP_DSS_COLOR_RGBX16: 739 739 m = 0x1; break; 740 740 case OMAP_DSS_COLOR_RGBA16: 741 741 m = 0x2; break; 742 - case OMAP_DSS_COLOR_RGBX16: 742 + case OMAP_DSS_COLOR_RGB12U: 743 743 m = 0x4; break; 744 744 case OMAP_DSS_COLOR_ARGB16: 745 745 m = 0x5; break; ··· 788 788 m = 0x8; break; 789 789 case OMAP_DSS_COLOR_RGB24P: 790 790 m = 0x9; break; 791 - case OMAP_DSS_COLOR_YUV2: 791 + case OMAP_DSS_COLOR_RGBX16: 792 792 m = 0xa; break; 793 - case OMAP_DSS_COLOR_UYVY: 793 + case OMAP_DSS_COLOR_RGBA16: 794 794 m = 0xb; break; 795 795 case OMAP_DSS_COLOR_ARGB32: 796 796 m = 0xc; break;
+2 -1
drivers/video/omap2/dss/dss_features.c
··· 190 190 OMAP_DSS_COLOR_RGB16 | OMAP_DSS_COLOR_RGB24U | 191 191 OMAP_DSS_COLOR_RGB24P | OMAP_DSS_COLOR_ARGB32 | 192 192 OMAP_DSS_COLOR_RGBA32 | OMAP_DSS_COLOR_RGBX32 | 193 - OMAP_DSS_COLOR_ARGB16_1555, 193 + OMAP_DSS_COLOR_ARGB16_1555 | OMAP_DSS_COLOR_RGBX16 | 194 + OMAP_DSS_COLOR_RGBA16 | OMAP_DSS_COLOR_XRGB16_1555, 194 195 195 196 /* OMAP_DSS_VIDEO1 */ 196 197 OMAP_DSS_COLOR_RGB16 | OMAP_DSS_COLOR_RGB12U |