From: Jonas Karlman <jonas@kwiboo.se>
To: Detlev Casanova <detlev.casanova@collabora.com>
Cc: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Heiko Stuebner <heiko@sntech.de>, Alex Bee <knaerzche@gmail.com>,
Nicolas Dufresne <nicolas.dufresne@collabora.com>,
Sebastian Fricke <sebastian.fricke@collabora.com>,
linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 1/7] media: rkvdec: Add HEVC backend
Date: Sun, 17 Aug 2025 18:46:24 +0200 [thread overview]
Message-ID: <c0573db5-17df-4c8a-abfb-af7163f6b1b3@kwiboo.se> (raw)
In-Reply-To: <22971824.EfDdHjke4D@earth>
Hi Detlev,
On 8/12/2025 10:10 PM, Detlev Casanova wrote:
> Hi Jonas,
>
> On Sunday, 10 August 2025 17:24:31 EDT Jonas Karlman wrote:
>> The Rockchip VDEC supports the HEVC codec with the Main and Main10
>> Profile up to Level 5.1 High tier: 4096x2304@60 fps.
>>
>> Add the backend for HEVC format to the decoder.
>>
>> Signed-off-by: Alex Bee <knaerzche@gmail.com>
>> Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
>> Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
>> Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
>> ---
>> Changes in v2:
>> - Use new_value in transpose_and_flatten_matrices()
>> - Add NULL check for ctrl->new_elems in rkvdec_hevc_run_preamble()
>> - Set RKVDEC_WR_DDR_ALIGN_EN for RK3328
>> ---
>> .../media/platform/rockchip/rkvdec/Makefile | 2 +-
>> .../rockchip/rkvdec/rkvdec-hevc-data.c | 1848 +++++++++++++++++
>> .../platform/rockchip/rkvdec/rkvdec-hevc.c | 817 ++++++++
>> .../platform/rockchip/rkvdec/rkvdec-regs.h | 2 +
>> .../media/platform/rockchip/rkvdec/rkvdec.c | 76 +
>> .../media/platform/rockchip/rkvdec/rkvdec.h | 1 +
>> 6 files changed, 2745 insertions(+), 1 deletion(-)
>> create mode 100644
>> drivers/media/platform/rockchip/rkvdec/rkvdec-hevc-data.c create mode
>> 100644 drivers/media/platform/rockchip/rkvdec/rkvdec-hevc.c
>>
>
> [snip]
>
>> diff --git a/drivers/media/platform/rockchip/rkvdec/rkvdec-hevc.c
>> b/drivers/media/platform/rockchip/rkvdec/rkvdec-hevc.c new file mode 100644
>> index 000000000000..1994ea24f0be
>> --- /dev/null
>> +++ b/drivers/media/platform/rockchip/rkvdec/rkvdec-hevc.c
>
> [snip]
>
>> +
>> +static enum rkvdec_image_fmt rkvdec_hevc_get_image_fmt(struct rkvdec_ctx
>> *ctx, + struct
> v4l2_ctrl *ctrl)
>> +{
>> + const struct v4l2_ctrl_hevc_sps *sps = ctrl->p_new.p_hevc_sps;
>> +
>> + if (ctrl->id != V4L2_CID_STATELESS_HEVC_SPS)
>> + return RKVDEC_IMG_FMT_ANY;
>> +
>> + if (sps->bit_depth_luma_minus8 == 0) {
>> + if (sps->chroma_format_idc == 2)
>> + return RKVDEC_IMG_FMT_422_8BIT;
>
> Is 4:2:2 really supported ? It is not on rk3588 and likely neither on rk3576.
> You also mention later that Only 4:0:0 and 4:2:0 are supported.
On the older rkvdec it is not, and I was unsure about the newer SoCs at
the time of initial re-work of this. Regardless this is more correct
when only looking at this function, it does not include 4:4:4 but is
correct for all currently known RKVDEC_IMG_FMT. Also to keep this
function in sync with the h264 variant for more easy compare and less
confusion about the two down the line.
Regards,
Jonas
>
>> + else
>> + return RKVDEC_IMG_FMT_420_8BIT;
>> + } else if (sps->bit_depth_luma_minus8 == 2) {
>> + if (sps->chroma_format_idc == 2)
>> + return RKVDEC_IMG_FMT_422_10BIT;
>
> Same here.
>
> --
> Detlev.
>
>
>
next prev parent reply other threads:[~2025-08-17 16:46 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-10 21:24 [PATCH v2 0/7] " Jonas Karlman
2025-08-10 21:24 ` [PATCH v2 1/7] " Jonas Karlman
2025-08-11 19:12 ` Nicolas Dufresne
2025-08-11 19:46 ` Jonas Karlman
2025-08-11 20:27 ` Nicolas Dufresne
2025-08-11 21:07 ` Nicolas Dufresne
2025-08-12 0:58 ` Jonas Karlman
2025-08-12 13:07 ` Nicolas Dufresne
2025-08-12 19:54 ` Detlev Casanova
2025-08-17 16:39 ` Jonas Karlman
2025-08-18 8:25 ` Detlev Casanova
2025-08-12 20:10 ` Detlev Casanova
2025-08-17 16:46 ` Jonas Karlman [this message]
2025-08-29 20:22 ` Nicolas Dufresne
2025-09-03 7:28 ` Jonas Karlman
2025-09-03 13:44 ` Nicolas Dufresne
2025-08-10 21:24 ` [PATCH v2 2/7] media: rkvdec: Add variants support Jonas Karlman
2025-08-11 21:11 ` Nicolas Dufresne
2025-08-10 21:24 ` [PATCH v2 3/7] media: rkvdec: Implement capability filtering Jonas Karlman
2025-08-11 21:17 ` Nicolas Dufresne
2025-08-10 21:24 ` [PATCH v2 4/7] media: rkvdec: Add RK3288 variant Jonas Karlman
2025-08-11 21:17 ` Nicolas Dufresne
2025-08-10 21:24 ` [PATCH v2 5/7] media: rkvdec: Disable QoS for HEVC and VP9 on RK3328 Jonas Karlman
2025-08-11 21:25 ` Nicolas Dufresne
2025-08-11 22:22 ` Jonas Karlman
2025-08-12 12:47 ` Nicolas Dufresne
2025-08-11 23:08 ` Jonas Karlman
2025-08-12 13:00 ` Nicolas Dufresne
2025-08-17 16:18 ` Jonas Karlman
2025-08-10 21:24 ` [PATCH v2 6/7] media: dt-bindings: rockchip,vdec: Add RK3288 compatible Jonas Karlman
2025-08-10 21:24 ` [PATCH v2 7/7] ARM: dts: rockchip: Add vdec node for RK3288 Jonas Karlman
2025-08-11 21:52 ` [PATCH v2 0/7] media: rkvdec: Add HEVC backend Nicolas Dufresne
2025-08-12 0:00 ` Jonas Karlman
2025-08-12 12:38 ` Nicolas Dufresne
2025-08-12 12:44 ` Nicolas Dufresne
2025-08-12 17:31 ` Jonas Karlman
2025-08-12 18:26 ` Nicolas Dufresne
2025-08-12 18:52 ` Nicolas Dufresne
2025-08-17 16:33 ` Jonas Karlman
2025-08-12 19:57 ` Detlev Casanova
2025-08-12 21:11 ` Nicolas Dufresne
2025-08-12 12:11 ` Diederik de Haas
2025-08-12 12:55 ` Diederik de Haas
2025-08-12 13:27 ` Nicolas Dufresne
2025-08-12 14:09 ` Diederik de Haas
2025-08-14 21:25 ` Alex Bee
2025-08-12 17:11 ` Jonas Karlman
2025-08-12 18:28 ` Diederik de Haas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c0573db5-17df-4c8a-abfb-af7163f6b1b3@kwiboo.se \
--to=jonas@kwiboo.se \
--cc=detlev.casanova@collabora.com \
--cc=devicetree@vger.kernel.org \
--cc=ezequiel@vanguardiasur.com.ar \
--cc=heiko@sntech.de \
--cc=knaerzche@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=mchehab@kernel.org \
--cc=nicolas.dufresne@collabora.com \
--cc=sebastian.fricke@collabora.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®