On 07/18/2014 02:31 PM, Laurent Pinchart wrote: > Hi Hans, > > On Thursday 17 July 2014 23:53:52 Hans Verkuil wrote: >> Hi Laurent, >> >> While implementing support for this in v4l-utils I discovered you missed >> one: >> >> On 06/24/2014 01:54 AM, Laurent Pinchart wrote: >>> From: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> >>> >>> The existing RGB pixel formats are ill-defined in respect to their alpha >>> bits and their meaning is driver dependent. Create new standard ARGB and >>> XRGB variants with clearly defined meanings and make the existing >>> variants deprecated. >>> >>> The new pixel formats 4CC values have been selected to match the DRM >>> 4CCs for the same in-memory formats. >>> >>> Signed-off-by: Laurent Pinchart >>> <laurent.pinchart+renesas@xxxxxxxxxxxxxxxx> >>> --- >>> >>> .../DocBook/media/v4l/pixfmt-packed-rgb.xml | 415 +++++++++++++++- >>> include/uapi/linux/videodev2.h | 8 + >>> 2 files changed, 403 insertions(+), 20 deletions(-) >>> >>> diff --git a/include/uapi/linux/videodev2.h >>> b/include/uapi/linux/videodev2.h index 168ff50..0125f4d 100644 >>> --- a/include/uapi/linux/videodev2.h >>> +++ b/include/uapi/linux/videodev2.h >>> @@ -294,7 +294,11 @@ struct v4l2_pix_format { >>> >>> /* RGB formats */ >>> #define V4L2_PIX_FMT_RGB332 v4l2_fourcc('R', 'G', 'B', '1') /* 8 >>> RGB-3-3-2 */ #define V4L2_PIX_FMT_RGB444 v4l2_fourcc('R', '4', '4', >>> '4') /* 16 xxxxrrrr ggggbbbb */> >>> +#define V4L2_PIX_FMT_ARGB444 v4l2_fourcc('A', 'R', '1', '2') /* 16 >>> aaaarrrr ggggbbbb */ +#define V4L2_PIX_FMT_XRGB444 v4l2_fourcc('X', 'R', >>> '1', '2') /* 16 xxxxrrrr ggggbbbb */> >>> #define V4L2_PIX_FMT_RGB555 v4l2_fourcc('R', 'G', 'B', 'O') /* 16 >>> RGB-5-5-5 */> >>> +#define V4L2_PIX_FMT_ARGB555 v4l2_fourcc('A', 'R', '1', '5') /* 16 >>> ARGB-1-5-5-5 */ +#define V4L2_PIX_FMT_XRGB555 v4l2_fourcc('X', 'R', '1', >>> '5') /* 16 XRGB-1-5-5-5 */> >>> #define V4L2_PIX_FMT_RGB565 v4l2_fourcc('R', 'G', 'B', 'P') /* 16 >>> RGB-5-6-5 */ #define V4L2_PIX_FMT_RGB555X v4l2_fourcc('R', 'G', 'B', >>> 'Q') /* 16 RGB-5-5-5 BE */ >> >> A+X variants should also be added for this RGB555X pix format. > > Agreed. The reason I've left it out is that I don't use it in my driver, and > we have this policy of only adding FOURCCs for formats actively in use. Would > you still like me to add it ? Yes please, let's not leave the odd one out. It's supported by vivi for example, and qv4l2 supports it as well. Regards, Hans > >>> #define V4L2_PIX_FMT_RGB565X v4l2_fourcc('R', 'G', 'B', 'R') /* 16 >>> RGB-5-6-5 BE */> >>> @@ -302,7 +306,11 @@ struct v4l2_pix_format { >>> >>> #define V4L2_PIX_FMT_BGR24 v4l2_fourcc('B', 'G', 'R', '3') /* 24 >>> BGR-8-8-8 */ #define V4L2_PIX_FMT_RGB24 v4l2_fourcc('R', 'G', 'B', >>> '3') /* 24 RGB-8-8-8 */ #define V4L2_PIX_FMT_BGR32 >>> v4l2_fourcc('B', 'G', 'R', '4') /* 32 BGR-8-8-8-8 */> >>> +#define V4L2_PIX_FMT_ABGR32 v4l2_fourcc('A', 'R', '2', '4') /* 32 >>> BGRA-8-8-8-8 */ +#define V4L2_PIX_FMT_XBGR32 v4l2_fourcc('X', 'R', '2', >>> '4') /* 32 BGRX-8-8-8-8 */> >>> #define V4L2_PIX_FMT_RGB32 v4l2_fourcc('R', 'G', 'B', '4') /* 32 >>> RGB-8-8-8-8 */> >>> +#define V4L2_PIX_FMT_ARGB32 v4l2_fourcc('B', 'A', '2', '4') /* 32 >>> ARGB-8-8-8-8 */ +#define V4L2_PIX_FMT_XRGB32 v4l2_fourcc('B', 'X', '2', >>> '4') /* 32 XRGB-8-8-8-8 */> >>> /* Grey formats */ >>> #define V4L2_PIX_FMT_GREY v4l2_fourcc('G', 'R', 'E', 'Y') /* 8 >>> Greyscale */ > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html