From a0fc2a490d4d5fa2810725bf51086983de112e2b Mon Sep 17 00:00:00 2001 From: Johnson Ding Date: Tue, 9 Dec 2025 20:46:57 +0800 Subject: [PATCH] feat[soc]: Add RK3538 and RK3572 description Change-Id: I46a7863ababc6a295c884bae075b2381ade8f0c8 Signed-off-by: Johnson Ding --- osal/inc/mpp_soc.h | 2 ++ osal/mpp_soc.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/osal/inc/mpp_soc.h b/osal/inc/mpp_soc.h index 608d8e85..b398dcac 100644 --- a/osal/inc/mpp_soc.h +++ b/osal/inc/mpp_soc.h @@ -37,6 +37,8 @@ typedef enum RockchipSocType_e { ROCKCHIP_SOC_RK3562, ROCKCHIP_SOC_RK3576, ROCKCHIP_SOC_RV1126B, + ROCKCHIP_SOC_RK3538, + ROCKCHIP_SOC_RK3572, ROCKCHIP_SOC_BUTT, } RockchipSocType; diff --git a/osal/mpp_soc.c b/osal/mpp_soc.c index 06289ca4..412c4b7d 100644 --- a/osal/mpp_soc.c +++ b/osal/mpp_soc.c @@ -68,6 +68,7 @@ #define CAP_CODING_VDPU382 (HAVE_AVC|HAVE_HEVC|HAVE_AVS2) #define CAP_CODING_VDPU383 (HAVE_AVC|HAVE_HEVC|HAVE_VP9|HAVE_AVS2|HAVE_AV1) #define CAP_CODING_VDPU384A (HAVE_AVC|HAVE_HEVC) +#define CAP_CODING_VDPU384B (HAVE_AVC|HAVE_HEVC|HAVE_VP9|HAVE_AVS2|HAVE_AV1) #define CAP_CODING_VEPU1 (HAVE_AVC|HAVE_MJPEG|HAVE_VP8) #define CAP_CODING_VEPU_LITE (HAVE_AVC|HAVE_MJPEG) @@ -455,6 +456,24 @@ static const MppDecHwCap vdpu384a = { .reserved = 0, }; +static const MppDecHwCap vdpu384b = { + .cap_coding = CAP_CODING_VDPU384B, + .type = VPU_CLIENT_RKVDEC, + .cap_fbc = 1, + .cap_4k = 1, + .cap_8k = 1, + .cap_colmv_compress = 1, + .cap_hw_h265_rps = 1, + .cap_hw_vp9_prob = 0, + .cap_jpg_pp_out = 0, + .cap_10bit = 1, + .cap_down_scale = 1, + .cap_lmt_linebuf = 0, + .cap_core_num = 1, + .cap_hw_jpg_fix = 0, + .reserved = 0, +}; + static const MppDecHwCap avspd = { .cap_coding = CAP_CODING_AVSPD, .type = VPU_CLIENT_AVSPLUS_DEC, @@ -1017,6 +1036,29 @@ static const MppSocInfo mpp_soc_infos[] = { { &vdpu384a, &rkjpegd, NULL, NULL, NULL, NULL}, { &vepu511, NULL, NULL, NULL}, }, + { /* + * RK3538 has codec: + * 1 - RK H.264/H.265/VP9/AV1 8K decoder + * 2 - RK jpeg decoder + */ + "rk3538", + ROCKCHIP_SOC_RK3538, + HAVE_RKVDEC | HAVE_JPEG_DEC, + { &vdpu384b, &rkjpegd, NULL, NULL, NULL, NULL}, + { NULL, NULL, NULL, NULL}, + }, + { /* + * RK3572 has codec: + * 1 - RK H.264/H.265/VP9/AVS2/AV1 8K decoder + * 2 - RK H.264/H.265/jpeg 4K encoder + * 3 - RK jpeg decoder + */ + "rk3572", + ROCKCHIP_SOC_RK3572, + HAVE_RKVDEC | HAVE_RKVENC | HAVE_JPEG_DEC | HAVE_JPEG_ENC, + { &vdpu384b, &rkjpegd, NULL, NULL, NULL, NULL}, + { &vepu511, &rkjpege_vpu720, NULL, NULL}, + }, }; static const MppSocInfo mpp_soc_default = {