media: venus: add support for V4L2_PIX_FMT_P010 color format
authorDikshita Agarwal <quic_dikshita@quicinc.com>
Mon, 22 May 2023 06:48:15 +0000 (07:48 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 9 Jun 2023 13:03:10 +0000 (14:03 +0100)
add V4L2_PIX_FMT_P010 as supported color format for decoder.

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Dikshita Agarwal <quic_dikshita@quicinc.com>
Signed-off-by: Stanimir Varbanov <stanimir.k.varbanov@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/platform/qcom/venus/core.h
drivers/media/platform/qcom/venus/helpers.c
drivers/media/platform/qcom/venus/vdec.c

index e988ed443d250d6d929b5d7cb50574dc3f39ca14..250342d27a6f98c19783195104de00d7ab25341b 100644 (file)
@@ -87,16 +87,17 @@ enum venus_fmt {
        VENUS_FMT_NV12                  = 0,
        VENUS_FMT_QC08C                 = 1,
        VENUS_FMT_QC10C                 = 2,
-       VENUS_FMT_H264                  = 3,
-       VENUS_FMT_VP8                   = 4,
-       VENUS_FMT_VP9                   = 5,
-       VENUS_FMT_HEVC                  = 6,
-       VENUS_FMT_VC1_ANNEX_G           = 7,
-       VENUS_FMT_VC1_ANNEX_L           = 8,
-       VENUS_FMT_MPEG4                 = 9,
-       VENUS_FMT_MPEG2                 = 10,
-       VENUS_FMT_H263                  = 11,
-       VENUS_FMT_XVID                  = 12,
+       VENUS_FMT_P010                  = 3,
+       VENUS_FMT_H264                  = 4,
+       VENUS_FMT_VP8                   = 5,
+       VENUS_FMT_VP9                   = 6,
+       VENUS_FMT_HEVC                  = 7,
+       VENUS_FMT_VC1_ANNEX_G           = 8,
+       VENUS_FMT_VC1_ANNEX_L           = 9,
+       VENUS_FMT_MPEG4                 = 10,
+       VENUS_FMT_MPEG2                 = 11,
+       VENUS_FMT_H263                  = 12,
+       VENUS_FMT_XVID                  = 13,
 };
 
 struct venus_format {
index 7281bc6cdb393cbf3de826957f6fdf3b61a92bad..5e8cf67b69d56768d13df9c920106e130ed56770 100644 (file)
@@ -607,6 +607,8 @@ static u32 to_hfi_raw_fmt(u32 v4l2_fmt)
                return HFI_COLOR_FORMAT_NV12_UBWC;
        case V4L2_PIX_FMT_QC10C:
                return HFI_COLOR_FORMAT_YUV420_TP10_UBWC;
+       case V4L2_PIX_FMT_P010:
+               return HFI_COLOR_FORMAT_P010;
        default:
                break;
        }
index bab985b12c81f844b2816838d8d9995a9e92fc36..7aeaf77ef84e927dd917e1796d313fb95901d15f 100644 (file)
@@ -45,6 +45,11 @@ static const struct venus_format vdec_formats[] = {
                .num_planes = 1,
                .type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE,
        },
+       [VENUS_FMT_P010] = {
+               .pixfmt = V4L2_PIX_FMT_P010,
+               .num_planes = 1,
+               .type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE,
+       },
        [VENUS_FMT_H264] = {
                .pixfmt = V4L2_PIX_FMT_H264,
                .num_planes = 1,