On Tue, Dec 20, 2011 at 04:58:51PM -0600, Rob Clark wrote:
> +static const struct format formats[] = {
> +     /* 16bpp [A]RGB: */
> +     { OMAP_DSS_COLOR_RGB16,       DRM_FORMAT_RGB565,   {{2, 1}}, false }, 
> /* RGB16-565 */
> +     { OMAP_DSS_COLOR_RGB12U,      DRM_FORMAT_RGBX4444, {{2, 1}}, false }, 
> /* RGB12x-4444 */
> +     { OMAP_DSS_COLOR_RGBX16,      DRM_FORMAT_XRGB4444, {{2, 1}}, false }, 
> /* xRGB12-4444 */
> +     { OMAP_DSS_COLOR_RGBA16,      DRM_FORMAT_RGBA4444, {{2, 1}}, false }, 
> /* RGBA12-4444 */
> +     { OMAP_DSS_COLOR_ARGB16,      DRM_FORMAT_ABGR4444, {{2, 1}}, false }, 
> /* ARGB16-4444 */
                                                 ^^^^^^^^

Should be ARGB4444, no?

BTW I took a quick gander at the format specifications in the OMAP4 TRM
and it has a funny bug.

xRGB16-1555 and ARGB16-1555 are listed like this:

31       ...          0
U  R1 G1 B1 U  R0 B0 G0
A1 R1 G1 B1 A0 R0 B0 G0

So every second pixel has B and G swapped around. That would be some
interesting hardware to use :D

It's possible the TRM I had lying around was an old one though and the
issue is fixed in later revisions.

-- 
Ville Syrj?l?
Intel OTC

Reply via email to