media: hantro: Allows luma and chroma depth to be different
authorBenjamin Gaignard <benjamin.gaignard@collabora.com>
Mon, 29 Aug 2022 16:21:59 +0000 (18:21 +0200)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Sat, 24 Sep 2022 07:01:15 +0000 (09:01 +0200)
Luma and chroma depth are set on different hardware registers.
Even if they aren't identical the bitstream can be compliant
to HEVC specifications and decoded by the hardware.

With this patch TSUNEQBD_A_MAIN10_Technicolor_2 conformance test
is successfully decoded.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/platform/verisilicon/hantro_drv.c

index 7c75922..8cb4a68 100644 (file)
@@ -271,9 +271,6 @@ static int hantro_try_ctrl(struct v4l2_ctrl *ctrl)
        } else if (ctrl->id == V4L2_CID_STATELESS_HEVC_SPS) {
                const struct v4l2_ctrl_hevc_sps *sps = ctrl->p_new.p_hevc_sps;
 
-               if (sps->bit_depth_luma_minus8 != sps->bit_depth_chroma_minus8)
-                       /* Luma and chroma bit depth mismatch */
-                       return -EINVAL;
                if (sps->bit_depth_luma_minus8 != 0 && sps->bit_depth_luma_minus8 != 2)
                        /* Only 8-bit and 10-bit are supported */
                        return -EINVAL;