From nobody Wed Oct 8 22:19:01 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 47D5E2BEC20; Mon, 23 Jun 2025 16:07:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694871; cv=none; b=s/zOEXv2keLSOQ4BsGoOUumcD1h3QN56f+gaSKN2P1PDD5E44ToyuyVzX+7RN1WJHlF0787GmvEjEkDPCGMYLsAIammT0RtuimPnbvZWGuVRckVDOoRpUIxwYab3sYf1bTwoyCdgS79TZJrHfL8S3eDMYE9q/s0ux1cVY1K1eeg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694871; c=relaxed/simple; bh=2JOkEWj2nxlL4OQAWq+ph3hM6u/KePKw05vuGP16VR8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=d39kkQL1K+PPxsyNb3TDWNTJBUS05sLRM+faGISCFpU/fWe9nL4ZvcU9vMYx9titLWDZoXnsFL1rWJrxDA64wpq8OAcwhmxSOKhueh1KCm+1/LmBIy2ioPtmjabso4dUEZo4JDXX8n9nGnl3FOpeaYYt1ScIe4fEXLaBdi98+uY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=FRsClA47; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="FRsClA47" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1750694867; bh=2JOkEWj2nxlL4OQAWq+ph3hM6u/KePKw05vuGP16VR8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=FRsClA47ngXTTKiZxLgNCplltBR8QgvCb55gfYhNvdjZHNFfWm3SaazcLx8yHn/Hj BWLT4SsKQrGoukpvKTrw6gFAyS31FrErp9fD1q6k4AYROedh2R8Eti3NuaIGd0y9Yb 6zJDgrV5X8nUFLkyM0CDVAet38ePMdm+/jYPVBQ+g6iLeZ+SwqCt6lEqT7lu3s8RRm 9mDJxZntfrTswh29u+7nr/xrPSH4XcbbuACuqhQcpBiQsijqjbNuVaanxVr8HWKyaW R8Tc15Xwuk8Yup2FGW06r8srTejUjLnfkAe4rekDg4ZMD9qJSNdv2tWVv/Yb5C9jKx NDtDxbDnj+Yog== Received: from trenzalore.hitronhub.home (unknown [23.233.251.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: detlev) by bali.collaboradmins.com (Postfix) with ESMTPSA id 5CA4B17E06BF; Mon, 23 Jun 2025 18:07:44 +0200 (CEST) From: Detlev Casanova To: linux-kernel@vger.kernel.org Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel , Cristian Ciocaltea , Alexey Charkov , Dragan Simic , Jianfeng Liu , Nicolas Frattaroli , Kever Yang , Detlev Casanova , Andy Yan , Frank Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Ezequiel Garcia , Mauro Carvalho Chehab , Hans Verkuil , Ricardo Ribalda , Hans de Goede , Yunke Cao , linux-media@vger.kernel.org, kernel@collabora.com, Conor Dooley Subject: [PATCH 1/8] media: dt-bindings: rockchip: Document RK3588 Video Decoder bindings Date: Mon, 23 Jun 2025 12:07:15 -0400 Message-ID: <20250623160722.55938-2-detlev.casanova@collabora.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623160722.55938-1-detlev.casanova@collabora.com> References: <20250623160722.55938-1-detlev.casanova@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Document the Rockchip RK3588 Video Decoder bindings. Signed-off-by: Detlev Casanova Reviewed-by: Conor Dooley --- .../bindings/media/rockchip,vdec.yaml | 77 ++++++++++++++++++- 1 file changed, 74 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/media/rockchip,vdec.yaml b/D= ocumentation/devicetree/bindings/media/rockchip,vdec.yaml index 08b02ec167557..e9b82dc05fd1d 100644 --- a/Documentation/devicetree/bindings/media/rockchip,vdec.yaml +++ b/Documentation/devicetree/bindings/media/rockchip,vdec.yaml @@ -10,13 +10,14 @@ maintainers: - Heiko Stuebner =20 description: |- - The Rockchip rk3399 has a stateless Video Decoder that can decodes H.264, - HEVC an VP9 streams. + Rockchip SoCs have variants of the same stateless Video Decoder that can + decodes H.264, HEVC, VP9 and AV1 streams, depending on the variant. =20 properties: compatible: oneOf: - const: rockchip,rk3399-vdec + - const: rockchip,rk3588-vdec - items: - enum: - rockchip,rk3228-vdec @@ -24,35 +25,72 @@ properties: - const: rockchip,rk3399-vdec =20 reg: - maxItems: 1 + minItems: 1 + items: + - description: The function configuration registers base + - description: The link table configuration registers base + - description: The cache configuration registers base + + reg-names: + items: + - const: function + - const: link + - const: cache =20 interrupts: maxItems: 1 =20 clocks: + minItems: 4 items: - description: The Video Decoder AXI interface clock - description: The Video Decoder AHB interface clock - description: The Video Decoded CABAC clock - description: The Video Decoder core clock + - description: The Video decoder HEVC CABAC clock =20 clock-names: + minItems: 4 items: - const: axi - const: ahb - const: cabac - const: core + - const: hevc_cabac =20 assigned-clocks: true =20 assigned-clock-rates: true =20 + resets: + items: + - description: The Video Decoder AXI interface reset + - description: The Video Decoder AHB interface reset + - description: The Video Decoded CABAC reset + - description: The Video Decoder core reset + - description: The Video decoder HEVC CABAC reset + + reset-names: + items: + - const: axi + - const: ahb + - const: cabac + - const: core + - const: hevc_cabac + power-domains: maxItems: 1 =20 iommus: maxItems: 1 =20 + sram: + $ref: /schemas/types.yaml#/definitions/phandle + description: | + phandle to a reserved on-chip SRAM regions. + Some SoCs, like rk3588 provide on-chip SRAM to store temporary + buffers during decoding. + required: - compatible - reg @@ -61,6 +99,39 @@ required: - clock-names - power-domains =20 +allOf: + - if: + properties: + compatible: + contains: + const: rockchip,rk3588-vdec + then: + properties: + reg: + minItems: 3 + reg-names: + minItems: 3 + clocks: + minItems: 5 + clock-names: + minItems: 5 + resets: + minItems: 5 + reset-names: + minItems: 5 + else: + properties: + reg: + maxItems: 1 + reg-names: false + clocks: + maxItems: 4 + clock-names: + maxItems: 4 + resets: false + reset-names: false + sram: false + additionalProperties: false =20 examples: --=20 2.50.0 From nobody Wed Oct 8 22:19:01 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E15492BF3C5; Mon, 23 Jun 2025 16:07:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694874; cv=none; b=Znz5YwT/i5CCr/IJHs7gWy+NIZGl80UBbA5WR55DZk32ElZ/IjuVuRfANkOi916+RRObC/A5gdfWk7z8BaTDBqfFt/aQeKfTaGdxzRSEXn66kRxhWky7tg8+rvzYWF9D3N1Zng2ADTyl7zHjAVIzhE7vjIMqPnZFF/SS4idQsfM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694874; c=relaxed/simple; bh=UTdif7JufIoFJNm1QPMJyIUlLbeXViK0TKeCIJV7eq4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=CosOPHmJ92/jxyQLIviNaqTgCjh9Ja2qmOrSpZdLW8Xc7TJ+WSIvv70y4Ms+9uo9IkYUBT2S1GT8cHJfff6fEwJOofxKQZiJF8MN7/YE28/LAmTU7YxyybuHQsHJ229mHGSb9Kz2aXkGXd196o5OApzUjvlpiXpIIBFEzO7eoSQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=VF8rYvYZ; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="VF8rYvYZ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1750694871; bh=UTdif7JufIoFJNm1QPMJyIUlLbeXViK0TKeCIJV7eq4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VF8rYvYZX32tFHupmDNnAwZMci2CVeh5DbdrqnR4SeumETbsR5JDgsQMTtVgCBZBM IInd5QURDwxAnccc8Yh6K5FseR8gz5fGM9Lrm9CWyY1qhic487y3qXFeIKGSswvAS1 XoB7PtCC1aFDOwdG5VgS/vnSK1P1rJFpYoH+tuJfA0LNYs1aL8a+m8wKYusJzIq+iW 7hRsjcCE7rqzLJ0fgqtLPkyjap8qR1d03xrmNdof1Ky/MEwm+DFPQdukMDcgKpuCfs S7AtuuAne1hkzDEynt5VQMA6f/mE57ivtmbvGmvhBvYnc9urd0YlYWq4HvUdGe5t9N JJI6ba9Bt/DDQ== Received: from trenzalore.hitronhub.home (unknown [23.233.251.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: detlev) by bali.collaboradmins.com (Postfix) with ESMTPSA id E557A17E1560; Mon, 23 Jun 2025 18:07:47 +0200 (CEST) From: Detlev Casanova To: linux-kernel@vger.kernel.org Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel , Cristian Ciocaltea , Alexey Charkov , Dragan Simic , Jianfeng Liu , Nicolas Frattaroli , Kever Yang , Detlev Casanova , Andy Yan , Frank Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Ezequiel Garcia , Mauro Carvalho Chehab , Hans Verkuil , Ricardo Ribalda , Hans de Goede , Yunke Cao , linux-media@vger.kernel.org, kernel@collabora.com Subject: [PATCH 2/8] media: dt-bindings: rockchip: Add RK3576 Video Decoder bindings Date: Mon, 23 Jun 2025 12:07:16 -0400 Message-ID: <20250623160722.55938-3-detlev.casanova@collabora.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623160722.55938-1-detlev.casanova@collabora.com> References: <20250623160722.55938-1-detlev.casanova@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The video decoder in RK3576 (vdpu383) is described the same way as the one in RK3588 (vdpu381). A new compatible is added as the driver implementation will be different. Signed-off-by: Detlev Casanova Acked-by: Rob Herring (Arm) --- Documentation/devicetree/bindings/media/rockchip,vdec.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/media/rockchip,vdec.yaml b/D= ocumentation/devicetree/bindings/media/rockchip,vdec.yaml index e9b82dc05fd1d..96b6c89387683 100644 --- a/Documentation/devicetree/bindings/media/rockchip,vdec.yaml +++ b/Documentation/devicetree/bindings/media/rockchip,vdec.yaml @@ -17,6 +17,7 @@ properties: compatible: oneOf: - const: rockchip,rk3399-vdec + - const: rockchip,rk3576-vdec - const: rockchip,rk3588-vdec - items: - enum: @@ -104,7 +105,9 @@ allOf: properties: compatible: contains: - const: rockchip,rk3588-vdec + enum: + - rockchip,rk3576-vdec + - rockchip,rk3588-vdec then: properties: reg: --=20 2.50.0 From nobody Wed Oct 8 22:19:01 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 747C22C08B1; Mon, 23 Jun 2025 16:07:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694878; cv=none; b=E/C/zPt2cx9wdL8MnOleT3d/AxB2aWhV/x7PC56dek8mdDWfp9UUcF7xOMPD3ZcavCDCadzmzLBFpKWC76hLkMOGYGB5V4NiZaPBLGVZbmwzcS6V2vSAVfKjzS+3WC26rcAh2/1VgXoIWx2Msb0mVKgfJC2hTMSgm/IiXH94dWI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694878; c=relaxed/simple; bh=zt/DaCss2i5ulknRW3sJNkFnzwFerUvIICmaqy3KydU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=oD2yMUxXMaAKxQhl4XqeDjzFUPF4LH/wRhbaCyvIruA4XIeV6dV66j9DIkIKyBQhaaBbUWTT8Pnki2WH8GMAuNvj2rQdSdMRdAmKwS42LD9TrUyywEaCF/lkciIagS/PEiuRZlb8TeYLGTwYYwtwOQoQazt8EsaJXfElPjRA2o0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=gvKMbe3b; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="gvKMbe3b" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1750694874; bh=zt/DaCss2i5ulknRW3sJNkFnzwFerUvIICmaqy3KydU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=gvKMbe3b4XE3UscHhE6pkbYBUhJlem382157apB5Hu7W52ybOAb4wdwyvJPSCtS5R KV1SJCmsRmtga1KWke6xeJCvC1NXXw6Ve4j1y++g1CnqVsBg4bnsKvShEEcfKQUuSu NTvjvaP/Bn2eg29kdKMeRRYG+YRLZkF0cCjvWCdJ8bpFZ6IznZlqNVm5Evtq5FGeX3 zNHbKZue9Nj0hAsw+afPUrOWAnqRSkz+WipJBf/pbtjJzYkPzH+KUDaSvSnMxd8fYB zOlElfRbwAcjnXfXoyPVmyFr8z+PRHKQg+ckeyH3hD2w/pvRUplGSe24waD42StvZ4 zLvfMt3E+ODYA== Received: from trenzalore.hitronhub.home (unknown [23.233.251.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: detlev) by bali.collaboradmins.com (Postfix) with ESMTPSA id 70AEB17E1580; Mon, 23 Jun 2025 18:07:51 +0200 (CEST) From: Detlev Casanova To: linux-kernel@vger.kernel.org Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel , Cristian Ciocaltea , Alexey Charkov , Dragan Simic , Jianfeng Liu , Nicolas Frattaroli , Kever Yang , Detlev Casanova , Andy Yan , Frank Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Ezequiel Garcia , Mauro Carvalho Chehab , Hans Verkuil , Ricardo Ribalda , Hans de Goede , Yunke Cao , linux-media@vger.kernel.org, kernel@collabora.com Subject: [PATCH 3/8] arm64: dts: rockchip: Add the vdpu381 Video Decoders on RK3588 Date: Mon, 23 Jun 2025 12:07:17 -0400 Message-ID: <20250623160722.55938-4-detlev.casanova@collabora.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623160722.55938-1-detlev.casanova@collabora.com> References: <20250623160722.55938-1-detlev.casanova@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add the vdpu381 Video Decoders to the rk3588-base devicetree. The RK3588 based SoCs all embed 2 vdpu381 decoders. This also adds the dedicated IOMMU controllers. Signed-off-by: Detlev Casanova --- arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boo= t/dts/rockchip/rk3588-base.dtsi index 70f03e68ba550..c1eaff86d5b73 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi @@ -1252,6 +1252,70 @@ vepu121_3_mmu: iommu@fdbac800 { #iommu-cells =3D <0>; }; =20 + vdec0: video-codec@fdc38000 { + compatible =3D "rockchip,rk3588-vdec"; + reg =3D <0x0 0xfdc38100 0x0 0x500>, + <0x0 0xfdc38000 0x0 0x100>, + <0x0 0xfdc38600 0x0 0x100>; + reg-names =3D "function", "link", "cache"; + interrupts =3D ; + clocks =3D <&cru ACLK_RKVDEC0>, <&cru HCLK_RKVDEC0>, <&cru CLK_RKVDEC0_C= A>, + <&cru CLK_RKVDEC0_CORE>, <&cru CLK_RKVDEC0_HEVC_CA>; + clock-names =3D "axi", "ahb", "cabac", "core", "hevc_cabac"; + assigned-clocks =3D <&cru ACLK_RKVDEC0>, <&cru CLK_RKVDEC0_CORE>, + <&cru CLK_RKVDEC0_CA>, <&cru CLK_RKVDEC0_HEVC_CA>; + assigned-clock-rates =3D <800000000>, <600000000>, + <600000000>, <1000000000>; + iommus =3D <&vdec0_mmu>; + power-domains =3D <&power RK3588_PD_RKVDEC0>; + resets =3D <&cru SRST_A_RKVDEC0>, <&cru SRST_H_RKVDEC0>, <&cru SRST_RKVD= EC0_CA>, + <&cru SRST_RKVDEC0_CORE>, <&cru SRST_RKVDEC0_HEVC_CA>; + reset-names =3D "axi", "ahb", "cabac", "core", "hevc_cabac"; + sram =3D <&vdec0_sram>; + }; + + vdec0_mmu: iommu@fdc38700 { + compatible =3D "rockchip,rk3588-iommu", "rockchip,rk3568-iommu"; + reg =3D <0x0 0xfdc38700 0x0 0x40>, <0x0 0xfdc38740 0x0 0x40>; + interrupts =3D ; + clocks =3D <&cru ACLK_RKVDEC0>, <&cru HCLK_RKVDEC0>; + clock-names =3D "aclk", "iface"; + power-domains =3D <&power RK3588_PD_RKVDEC0>; + #iommu-cells =3D <0>; + }; + + vdec1: video-codec@fdc40000 { + compatible =3D "rockchip,rk3588-vdec"; + reg =3D <0x0 0xfdc40100 0x0 0x500>, + <0x0 0xfdc40000 0x0 0x100>, + <0x0 0xfdc40600 0x0 0x100>; + reg-names =3D "function", "link", "cache"; + interrupts =3D ; + clocks =3D <&cru ACLK_RKVDEC1>, <&cru HCLK_RKVDEC1>, <&cru CLK_RKVDEC1_C= A>, + <&cru CLK_RKVDEC1_CORE>, <&cru CLK_RKVDEC1_HEVC_CA>; + clock-names =3D "axi", "ahb", "cabac", "core", "hevc_cabac"; + assigned-clocks =3D <&cru ACLK_RKVDEC1>, <&cru CLK_RKVDEC1_CORE>, + <&cru CLK_RKVDEC1_CA>, <&cru CLK_RKVDEC1_HEVC_CA>; + assigned-clock-rates =3D <800000000>, <600000000>, + <600000000>, <1000000000>; + iommus =3D <&vdec1_mmu>; + power-domains =3D <&power RK3588_PD_RKVDEC1>; + resets =3D <&cru SRST_A_RKVDEC1>, <&cru SRST_H_RKVDEC1>, <&cru SRST_RKVD= EC1_CA>, + <&cru SRST_RKVDEC1_CORE>, <&cru SRST_RKVDEC1_HEVC_CA>; + reset-names =3D "axi", "ahb", "cabac", "core", "hevc_cabac"; + sram =3D <&vdec1_sram>; + }; + + vdec1_mmu: iommu@fdc40700 { + compatible =3D "rockchip,rk3588-iommu", "rockchip,rk3568-iommu"; + reg =3D <0x0 0xfdc40700 0x0 0x40>, <0x0 0xfdc40740 0x0 0x40>; + interrupts =3D ; + clocks =3D <&cru ACLK_RKVDEC1>, <&cru HCLK_RKVDEC1>; + clock-names =3D "aclk", "iface"; + power-domains =3D <&power RK3588_PD_RKVDEC1>; + #iommu-cells =3D <0>; + }; + av1d: video-codec@fdc70000 { compatible =3D "rockchip,rk3588-av1-vpu"; reg =3D <0x0 0xfdc70000 0x0 0x800>; @@ -3093,6 +3157,16 @@ system_sram2: sram@ff001000 { ranges =3D <0x0 0x0 0xff001000 0xef000>; #address-cells =3D <1>; #size-cells =3D <1>; + + vdec0_sram: codec-sram@0 { + reg =3D <0x0 0x78000>; + pool; + }; + + vdec1_sram: codec-sram@78000 { + reg =3D <0x78000 0x77000>; + pool; + }; }; =20 pinctrl: pinctrl { --=20 2.50.0 From nobody Wed Oct 8 22:19:01 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 28B572C3245; Mon, 23 Jun 2025 16:07:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694881; cv=none; b=m/jEi8/NXw9sfEJmgDuLM8egsPBOtsgiqmWhahSEdUTrp8GkSX7Q3e1y4jIFWoMJC0Zm9iS7Prt1GDfcZ1U5ejpcQ/BOwH38Vw0FaV2z3tlu7vXYwXqA1KXLgeX2fjtffEAYDZ8wYcLiHrfqkSzLL6b3FoDql5DrkQdf1yELBrs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694881; c=relaxed/simple; bh=LAtHIDsXc48M+4SNF2evd23d5+2WZS3MzWRndXBDn7c=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=JnWE84LjZugcc0tTLjNjgr+hyeED+7+bGKuxDQNu6IXD+1tWtACzRq9MjpdVL9dghRZAtl3TVCoXQ2yT3/hRgjspcbsZCGhSj0v0+sqowugI0mnDZLt6rVzrE6Ywpo+oyqsoq2y9ndMnqLbJAZSuK0kTuiXSkFQ6Tbbm00taKAQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=SaB0zpAH; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="SaB0zpAH" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1750694878; bh=LAtHIDsXc48M+4SNF2evd23d5+2WZS3MzWRndXBDn7c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=SaB0zpAHjXwCGcMTaY4yKSJkhwbsYNN+QC6lQXd0qEINs3aPwKdC8+EugvoX3hzlq 3OUzwmZZxTvvoSqVwZYy09nSEJYvKMToPzJ58ikI46LFNMO2/hziBfrwxoSZCljo9z V0umNgidaM6cVS4GYIz41lFQlzWyjL/AcpfWiRYiWv/MTIulK72WfOXj5jKiL+czuG P89Z9sZbvN/4PbRvlXY2xhUhBSBtpS+gkou5omQar5r//iUAtCA6ogeOn006Ur0guq WMCQe8/65QrsOKEKebY/rVx1k6edtBoA0QfgCkkM4oWSb6TP0V03cOh6F9OWOMJCSI CDEkXG+SA5oWQ== Received: from trenzalore.hitronhub.home (unknown [23.233.251.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: detlev) by bali.collaboradmins.com (Postfix) with ESMTPSA id 12DAC17E35D3; Mon, 23 Jun 2025 18:07:54 +0200 (CEST) From: Detlev Casanova To: linux-kernel@vger.kernel.org Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel , Cristian Ciocaltea , Alexey Charkov , Dragan Simic , Jianfeng Liu , Nicolas Frattaroli , Kever Yang , Detlev Casanova , Andy Yan , Frank Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Ezequiel Garcia , Mauro Carvalho Chehab , Hans Verkuil , Ricardo Ribalda , Hans de Goede , Yunke Cao , linux-media@vger.kernel.org, kernel@collabora.com Subject: [PATCH 4/8] arm64: dts: rockchip: Add the vdpu383 Video Decoder on rk3576 Date: Mon, 23 Jun 2025 12:07:18 -0400 Message-ID: <20250623160722.55938-5-detlev.casanova@collabora.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623160722.55938-1-detlev.casanova@collabora.com> References: <20250623160722.55938-1-detlev.casanova@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add the vdpu383 Video Decoder variant to the RK3576 device tree. Also allow using the dedicated SRAM as a pool. Signed-off-by: Detlev Casanova --- arch/arm64/boot/dts/rockchip/rk3576.dtsi | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3576.dtsi b/arch/arm64/boot/dts= /rockchip/rk3576.dtsi index b1ac23035dd78..26896ac22cedf 100644 --- a/arch/arm64/boot/dts/rockchip/rk3576.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3576.dtsi @@ -1139,6 +1139,41 @@ gpu: gpu@27800000 { status =3D "disabled"; }; =20 + vdec: video-codec@27b00000 { + compatible =3D "rockchip,rk3576-vdec"; + reg =3D <0x0 0x27b00100 0x0 0x500>, + <0x0 0x27b00000 0x0 0x100>, + <0x0 0x27b00600 0x0 0x100>; + reg-names =3D "function", "link", "cache"; + interrupts =3D ; + clocks =3D <&cru ACLK_RKVDEC_ROOT>, <&cru HCLK_RKVDEC>, + <&cru ACLK_RKVDEC_ROOT_BAK>, <&cru CLK_RKVDEC_CORE>, + <&cru CLK_RKVDEC_HEVC_CA>; + clock-names =3D "axi", "ahb", "cabac", "core", "hevc_cabac"; + assigned-clocks =3D <&cru ACLK_RKVDEC_ROOT>, <&cru CLK_RKVDEC_CORE>, + <&cru ACLK_RKVDEC_ROOT_BAK>, <&cru CLK_RKVDEC_HEVC_CA>; + assigned-clock-rates =3D <600000000>, <600000000>, + <500000000>, <1000000000>; + iommus =3D <&vdec_mmu>; + power-domains =3D <&power RK3576_PD_VDEC>; + resets =3D <&cru SRST_A_RKVDEC_BIU>, <&cru SRST_H_RKVDEC_BIU>, + <&cru SRST_H_RKVDEC>, <&cru SRST_RKVDEC_CORE>, + <&cru SRST_RKVDEC_HEVC_CA>; + reset-names =3D "axi", "ahb", "cabac", "core", "hevc_cabac"; + sram =3D <&rkvdec_sram>; + }; + + vdec_mmu: iommu@27b00800 { + compatible =3D "rockchip,rk3576-iommu", "rockchip,rk3568-iommu"; + reg =3D <0x0 0x27b00800 0x0 0x40>, <0x0 0x27b00900 0x0 0x40>; + interrupts =3D ; + clocks =3D <&cru CLK_RKVDEC_CORE>, <&cru HCLK_RKVDEC>; + clock-names =3D "aclk", "iface"; + power-domains =3D <&power RK3576_PD_VDEC>; + rockchip,disable-mmu-reset; + #iommu-cells =3D <0>; + }; + vop: vop@27d00000 { compatible =3D "rockchip,rk3576-vop"; reg =3D <0x0 0x27d00000 0x0 0x3000>, <0x0 0x27d05000 0x0 0x1000>; @@ -2412,6 +2447,7 @@ sram: sram@3ff88000 { /* start address and size should be 4k align */ rkvdec_sram: rkvdec-sram@0 { reg =3D <0x0 0x78000>; + pool; }; }; =20 --=20 2.50.0 From nobody Wed Oct 8 22:19:01 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 77CFE2C325B; Mon, 23 Jun 2025 16:08:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694885; cv=none; b=iP0Y7R+qYlbKvJGKmt5koPsllQf6jVv8dycvnzoxeiGWbasF//pJXCae+nc+ZsUExF+CklM4Y6g4Nf+jlvyhgjflL9Ldr9FprzsxI6CkTB+mUYE7avixsHEV/lKcxy0YXFPKYoPtQiW2trwNN69+MsyzzkT3IUmxGHaKaC7SvmU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694885; c=relaxed/simple; bh=hjgMrwRTA3fWP6Sf+lK8Wy4pKEPzPfk2AxMPnEjNQQw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=FRVYKQFBfkkkESYoalZm9V4Zr+k04TS+MC+nKylUI1kvvQah6l3rGYOPQNI4W03IMr6913JQPbNsxOS3QlvvRLHzTG9T1tfARw33p4APinY88fvxw/7WWh7Hx3MHGdGjSNNpcZdBHg8yuPUNIx4hO0tLTtNl7gf3AreunUf0b3w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=nlWBzUP6; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="nlWBzUP6" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1750694882; bh=hjgMrwRTA3fWP6Sf+lK8Wy4pKEPzPfk2AxMPnEjNQQw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nlWBzUP6DB+1Jn+vVBslLMVPlFvaxyjeyK2ivVv9r1sen405X9zxDqTPyYf8g9iXl HZj0IPCvCA/TWIONlYOR8nspWIxkq+WZ0+7z3ZCHAyudMO/IJsrg1HSY8jmHqTu4q1 21U2NBUobIs+3jEU7t+3TZ2ozPqkzFVDJq/YLBchTf9nMEph/oyZ+kK5KFM8O+4EwU gv39r6MxQntnyaOhmi7eTbA5YvmKpfPGJlFhKZ6YvPPJ2xluOQcsfcnnPqaoempqsS vSR4/2nkyVQZF4r7XBfSk5oVZ0C1d2WY/x6kUmwVg/+eT8bDxiiZ7Yvl8bgBE5AF5V eQs7X6mvs39zg== Received: from trenzalore.hitronhub.home (unknown [23.233.251.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: detlev) by bali.collaboradmins.com (Postfix) with ESMTPSA id AC8F717E3659; Mon, 23 Jun 2025 18:07:58 +0200 (CEST) From: Detlev Casanova To: linux-kernel@vger.kernel.org Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel , Cristian Ciocaltea , Alexey Charkov , Dragan Simic , Jianfeng Liu , Nicolas Frattaroli , Kever Yang , Detlev Casanova , Andy Yan , Frank Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Ezequiel Garcia , Mauro Carvalho Chehab , Hans Verkuil , Ricardo Ribalda , Hans de Goede , Yunke Cao , linux-media@vger.kernel.org, kernel@collabora.com Subject: [PATCH 5/8] media: uapi: HEVC: Add v4l2_ctrl_hevc_ext_sps_rps control Date: Mon, 23 Jun 2025 12:07:19 -0400 Message-ID: <20250623160722.55938-6-detlev.casanova@collabora.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623160722.55938-1-detlev.casanova@collabora.com> References: <20250623160722.55938-1-detlev.casanova@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Some hardware (e.g.: Rockchip's rk3588 hevc decoder) need the parsed long and short term reference information for HEVC decoding. Signed-off-by: Detlev Casanova --- .../media/v4l/ext-ctrls-codec-stateless.rst | 73 +++++++++++++++++++ .../media/v4l/vidioc-queryctrl.rst | 6 ++ 2 files changed, 79 insertions(+) diff --git a/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateles= s.rst b/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst index 0da635691fdcb..745f38a8fe69c 100644 --- a/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst +++ b/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst @@ -2958,6 +2958,79 @@ This structure contains all loop filter related para= meters. See sections - 0x00000004 - =20 +.. c:type:: v4l2_ctrl_hevc_ext_sps_rps + +.. cssclass:: longtable + +.. flat-table:: struct v4l2_ctrl_hevc_ext_sps_rps + :header-rows: 0 + :stub-columns: 0 + :widths: 1 1 2 + + * - __u16 + - ``lt_ref_pic_poc_lsb_sps`` + - Long term reference picture order count as described in section 7.= 4.3.2.1 + "General sequence parameter set RBSP semantics" of the specificati= on. + * - __u8 + - ``delta_idx_minus1`` + - Specifies the delta compare to the index. See details in section 7= .4.8 "Short-term + reference picture set semantics" of the specification. + * - __u8 + - ``delta_rps_sign`` + - Sign of the delta as specified in section 7.4.8 "Short-term refere= nce picture set + semantics" of the specification. + * - __u16 + - ``abs_delta_rps_minus1`` + - Absolute delta RPS as specified in section 7.4.8 "Short-term refer= ence picture set + semantics" of the specification. + * - __u8 + - ``num_negative_pics`` + - Number of short-term RPS entries that have picture order count val= ues less than the + picture order count value of the current picture. + * - __u8 + - ``num_positive_pics`` + - Number of short-term RPS entries that have picture order count val= ues greater than the + picture order count value of the current picture. + * - __u8 + - ``used_by_curr_pic_s0[16]`` + - Specifies if short-term RPS i (that has a negative POC) is used by= the current picture. + * - __u8 + - ``used_by_curr_pic_s1[16]`` + - Specifies if short-term RPS i (that has a positive POC) is used by= the current picture. + * - __s32 + - ``delta_poc_s0[16]`` + - Specifies the negative picture order count delta for the i-th entr= y in the short-term RPS. + See details in section 7.4.8 "Short-term reference picture set sem= antics" of the + specification. + * - __s32 + - ``delta_poc_s1[16]`` + - Specifies the positive picture order count delta for the i-th entr= y in the short-term RPS. + See details in section 7.4.8 "Short-term reference picture set sem= antics" of the + specification. + * - __u8 + - ``flags`` + - See :ref:`Extended RPS Flags ` + +.. _hevc_ext_sps_rps_flags: + +``Extended SPS RPS Flags`` + +.. cssclass:: longtable + +.. flat-table:: + :header-rows: 0 + :stub-columns: 0 + :widths: 1 1 2 + + * - ``V4L2_HEVC_EXT_SPS_RPS_FLAG_USED_LT`` + - 0x00000001 + - Specifies if the long-term reference picture is used 7.4.3.2.1 "Ge= neral sequence parameter + set RBSP semantics" of the specification. + * - ``V4L2_HEVC_EXT_SPS_RPS_FLAG_INTER_REF_PIC_SET_PRED`` + - 0x00000002 + - Specifies if the short-term RPS is predicted from another short te= rm RPS. See details in + section 7.4.8 "Short-term reference picture set semantics" of the = specification. + .. _v4l2-codec-stateless-av1: =20 ``V4L2_CID_STATELESS_AV1_SEQUENCE (struct)`` diff --git a/Documentation/userspace-api/media/v4l/vidioc-queryctrl.rst b/D= ocumentation/userspace-api/media/v4l/vidioc-queryctrl.rst index 3549417c7febb..dc7caf4bf6208 100644 --- a/Documentation/userspace-api/media/v4l/vidioc-queryctrl.rst +++ b/Documentation/userspace-api/media/v4l/vidioc-queryctrl.rst @@ -523,6 +523,12 @@ See also the examples in :ref:`control`. - n/a - A struct :c:type:`v4l2_ctrl_hevc_decode_params`, containing HEVC decoding parameters for stateless video decoders. + * - ``V4L2_CTRL_TYPE_HEVC_EXT_SPS_RPS`` + - n/a + - n/a + - n/a + - A struct :c:type:`v4l2_ctrl_hevc_ext_sps_rps`, containing HEVC + extended RPS for stateless video decoders. * - ``V4L2_CTRL_TYPE_VP9_COMPRESSED_HDR`` - n/a - n/a --=20 2.50.0 From nobody Wed Oct 8 22:19:01 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 187222D12E7; Mon, 23 Jun 2025 16:08:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694889; cv=none; b=NTD5BMVo4bvy+Shda8vHtnaSdK5hAkHijt1Lr3619EaeQgzinHxLXKUdKziey56YTWpL9JVWFlL3p6oWdVg5GowDMtiIMLJZhqsKaFys4HAMoNLcjIO5839PPieZ6fFCB/p8Hlt+a1qZtHBy9tHnMuinxgvvSC4ekYzSl8bXDZw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694889; c=relaxed/simple; bh=cVSPV0s2Ln0WSsv+WO+MOX72hCarfnmDMlgZyTNWSDE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Y/sxVrzfSpv3nsfqzQpK+lqC2eUK1xLAEPeZwko5MqxJOObF29SnEv3I/5DQGGgNfQnmBPo3jbjUaJPn5lwgssKvRVqDfExzsl7vtgEQycj3kZVTbvgVFdPvo4GVJ+Lrm14iAy8WUrQGS9v7CetGx4eAv2Vxftj468qu0d5gB5w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=Niz4r2AM; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="Niz4r2AM" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1750694885; bh=cVSPV0s2Ln0WSsv+WO+MOX72hCarfnmDMlgZyTNWSDE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Niz4r2AMe/3AMPJAdAoFOcxVKk3mOp7nwXk9WjmkxlkdP+5wkztLIDyk7RhlzNygk sQo6n23u9MrL46+f+PumhnR0W/lTEXcgelm5/hncRbSWbHLUtVrbcX1JkKLpOFaOir 7joT2+2KyngaDQA3Gdr7APhMROH0XdxH6NcSrFlu+To+I6+D0XLwMICdqOSh6HmYvH aqwst3DbZo/Sd27/BxNSGbNvw9ytthrqDrLn+08gbZxhnXFaWt4ELDE0ok9Es84xnz qoqGFv+WfGA0RBftAVqYk7dKhD8wlNQHy32R7CEH3n0KerB5Kz0bLIDf8alXDw4JFV RFzWxPWu18AVQ== Received: from trenzalore.hitronhub.home (unknown [23.233.251.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: detlev) by bali.collaboradmins.com (Postfix) with ESMTPSA id 4C6E317E36C9; Mon, 23 Jun 2025 18:08:02 +0200 (CEST) From: Detlev Casanova To: linux-kernel@vger.kernel.org Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel , Cristian Ciocaltea , Alexey Charkov , Dragan Simic , Jianfeng Liu , Nicolas Frattaroli , Kever Yang , Detlev Casanova , Andy Yan , Frank Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Ezequiel Garcia , Mauro Carvalho Chehab , Hans Verkuil , Ricardo Ribalda , Hans de Goede , Yunke Cao , linux-media@vger.kernel.org, kernel@collabora.com Subject: [PATCH 6/8] media: v4l2-ctrls: Add hevc_ext_sps_rps control Date: Mon, 23 Jun 2025 12:07:20 -0400 Message-ID: <20250623160722.55938-7-detlev.casanova@collabora.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623160722.55938-1-detlev.casanova@collabora.com> References: <20250623160722.55938-1-detlev.casanova@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The vdpu381 decoder found on newer Rockchip SoC need the information from the long term and short term ref pic sets from the SPS. So far, it wasn't included in the v4l2 API, so add it with a new dynamic sized control. Each element of the array contains the long term and short term ref pic set at that index. Signed-off-by: Detlev Casanova --- drivers/media/v4l2-core/v4l2-ctrls-core.c | 9 +++++ drivers/media/v4l2-core/v4l2-ctrls-defs.c | 5 +++ include/uapi/linux/v4l2-controls.h | 48 +++++++++++++++++++++++ include/uapi/linux/videodev2.h | 1 + 4 files changed, 63 insertions(+) diff --git a/drivers/media/v4l2-core/v4l2-ctrls-core.c b/drivers/media/v4l2= -core/v4l2-ctrls-core.c index 90d25329661ed..be4bb14027373 100644 --- a/drivers/media/v4l2-core/v4l2-ctrls-core.c +++ b/drivers/media/v4l2-core/v4l2-ctrls-core.c @@ -418,6 +418,9 @@ void v4l2_ctrl_type_op_log(const struct v4l2_ctrl *ctrl) case V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS: pr_cont("HEVC_SLICE_PARAMS"); break; + case V4L2_CTRL_TYPE_HEVC_EXT_SPS_RPS: + pr_cont("HEVC_EXT_SPS_RPS"); + break; case V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX: pr_cont("HEVC_SCALING_MATRIX"); break; @@ -1173,6 +1176,9 @@ static int std_validate_compound(const struct v4l2_ct= rl *ctrl, u32 idx, case V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS: break; =20 + case V4L2_CTRL_TYPE_HEVC_EXT_SPS_RPS: + break; + case V4L2_CTRL_TYPE_HDR10_CLL_INFO: break; =20 @@ -1921,6 +1927,9 @@ static struct v4l2_ctrl *v4l2_ctrl_new(struct v4l2_ct= rl_handler *hdl, case V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS: elem_size =3D sizeof(struct v4l2_ctrl_hevc_slice_params); break; + case V4L2_CTRL_TYPE_HEVC_EXT_SPS_RPS: + elem_size =3D sizeof(struct v4l2_ctrl_hevc_ext_sps_rps); + break; case V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX: elem_size =3D sizeof(struct v4l2_ctrl_hevc_scaling_matrix); break; diff --git a/drivers/media/v4l2-core/v4l2-ctrls-defs.c b/drivers/media/v4l2= -core/v4l2-ctrls-defs.c index 1ea52011247ac..d4bb7d8f164ba 100644 --- a/drivers/media/v4l2-core/v4l2-ctrls-defs.c +++ b/drivers/media/v4l2-core/v4l2-ctrls-defs.c @@ -1233,6 +1233,7 @@ const char *v4l2_ctrl_get_name(u32 id) case V4L2_CID_STATELESS_HEVC_DECODE_MODE: return "HEVC Decode Mode"; case V4L2_CID_STATELESS_HEVC_START_CODE: return "HEVC Start Code"; case V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS: return "HEVC Entry Poin= t Offsets"; + case V4L2_CID_STATELESS_HEVC_EXT_SPS_RPS: return "HEVC Extended RPS data= "; case V4L2_CID_STATELESS_AV1_SEQUENCE: return "AV1 Sequence Parameters"; case V4L2_CID_STATELESS_AV1_TILE_GROUP_ENTRY: return "AV1 Tile Group Ent= ry"; case V4L2_CID_STATELESS_AV1_FRAME: return "AV1 Frame Parameters"; @@ -1578,6 +1579,10 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum = v4l2_ctrl_type *type, *type =3D V4L2_CTRL_TYPE_U32; *flags |=3D V4L2_CTRL_FLAG_DYNAMIC_ARRAY; break; + case V4L2_CID_STATELESS_HEVC_EXT_SPS_RPS: + *type =3D V4L2_CTRL_TYPE_HEVC_EXT_SPS_RPS; + *flags |=3D V4L2_CTRL_FLAG_DYNAMIC_ARRAY; + break; case V4L2_CID_STATELESS_VP9_COMPRESSED_HDR: *type =3D V4L2_CTRL_TYPE_VP9_COMPRESSED_HDR; break; diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-c= ontrols.h index 72e32814ea83d..fcd0eef44d534 100644 --- a/include/uapi/linux/v4l2-controls.h +++ b/include/uapi/linux/v4l2-controls.h @@ -2088,6 +2088,7 @@ struct v4l2_ctrl_mpeg2_quantisation { #define V4L2_CID_STATELESS_HEVC_DECODE_MODE (V4L2_CID_CODEC_STATELESS_BASE= + 405) #define V4L2_CID_STATELESS_HEVC_START_CODE (V4L2_CID_CODEC_STATELESS_BASE = + 406) #define V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS (V4L2_CID_CODEC_STATEL= ESS_BASE + 407) +#define V4L2_CID_STATELESS_HEVC_EXT_SPS_RPS (V4L2_CID_CODEC_STATELESS_B= ASE + 408) =20 enum v4l2_stateless_hevc_decode_mode { V4L2_STATELESS_HEVC_DECODE_MODE_SLICE_BASED, @@ -2543,6 +2544,53 @@ struct v4l2_ctrl_hevc_scaling_matrix { __u8 scaling_list_dc_coef_32x32[2]; }; =20 +#define V4L2_HEVC_EXT_SPS_RPS_FLAG_USED_LT 0x1 +#define V4L2_HEVC_EXT_SPS_RPS_FLAG_INTER_REF_PIC_SET_PRED 0x2 + +/* + * struct v4l2_ctrl_hevc_sps_rps_extension - HEVC SPS RPS Extended paramet= ers + * + * Dynamic size 1-dimension array for long and short term RPS. The number = of elements + * should be max(num_long_term_ref_pics_sps, num_short_term_ref_pic_sets) + * + * @lt_ref_pic_poc_lsb_sps: picture order count modulo MaxPicOrderCntLsb + * of the i-th candidate long-term reference pict= ure. + * @delta_idx_minus1: Specifies the delta compare to the index. See detail= s in section 7.4.8 + * "Short-term reference picture set semantics" of the = specification. + * @delta_rps_sign: Sign of the delta as specified in section 7.4.8 "Short= -term reference picture + * set semantics" of the specification. + * @abs_delta_rps_minus1: Absolute delta RPS as specified in section 7.4.8= "Short-term reference + * picture set semantics" of the specification. + * @num_negative_pics: Number of short-term RPS entries that have picture = order count values less + * than the picture order count value of the current p= icture. + * @num_positive_pics: Number of short-term RPS entries that have picture = order count values + * greater than the picture order count value of the c= urrent picture. + * @used_by_curr_pic_s0: Specifies if short-term RPS i (that has a negativ= e POC) is used by the + * current picture. + * @used_by_curr_pic_s1: Specifies if short-term RPS i (that has a positiv= e POC) is used by the + * current picture. + * @delta_poc_s0: Specifies the negative picture order count delta for the= i-th entry in the + * short-term RPS. See details in section 7.4.8 "Short-term= reference picture set + * semantics" of the specification. + * @delta_poc_s1: Specifies the positive picture order count delta for the= i-th entry in the + * short-term RPS. See details in section 7.4.8 "Short-term= reference picture set + * semantics" of the specification. + * @flags: See V4L2_HEVC_EXT_SPS_RPS_FLAG_{} + */ +struct v4l2_ctrl_hevc_ext_sps_rps { + __u16 lt_ref_pic_poc_lsb_sps; + __u8 delta_idx_minus1; + __u8 delta_rps_sign; + __u16 abs_delta_rps_minus1; + __u8 num_negative_pics; + __u8 num_positive_pics; + __u8 used_by_curr_pic_s0[16]; + __u8 used_by_curr_pic_s1[16]; + __s32 delta_poc_s0[16]; + __s32 delta_poc_s1[16]; + __u8 flags; +}; + #define V4L2_CID_COLORIMETRY_CLASS_BASE (V4L2_CTRL_CLASS_COLORIMETRY | 0x9= 00) #define V4L2_CID_COLORIMETRY_CLASS (V4L2_CTRL_CLASS_COLORIMETRY | 1) =20 diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h index 9e3b366d5fc79..9515e3f1195d6 100644 --- a/include/uapi/linux/videodev2.h +++ b/include/uapi/linux/videodev2.h @@ -1974,6 +1974,7 @@ enum v4l2_ctrl_type { V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS =3D 0x0272, V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX =3D 0x0273, V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS =3D 0x0274, + V4L2_CTRL_TYPE_HEVC_EXT_SPS_RPS =3D 0x0275, =20 V4L2_CTRL_TYPE_AV1_SEQUENCE =3D 0x280, V4L2_CTRL_TYPE_AV1_TILE_GROUP_ENTRY =3D 0x281, --=20 2.50.0 From nobody Wed Oct 8 22:19:01 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D448D29C337; Mon, 23 Jun 2025 16:08:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694892; cv=none; b=tFCieP7PxPJbErTegVcFmcaPoCEZ7m/ibArEJMmnBxxktzbUzZcG17jCWEyb7kfeUZY1Eo1A7eNQw9QIpt/k7x0PHeQHkY6KJIWSK4HcJDiZ6WgNmqRbMxV4CaeWEBEZCMAOdkpXXF+xAXe26U6V17Xsc2YUy3BKixsZK+WMRLU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694892; c=relaxed/simple; bh=xDvkLdk8hMUQqSvQi1R6ZixD6fEY6eb3RFzWM6baH4o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pLRwlEM0Un5dKtadAcOsqZMzR1eCd59vpbnnNZvlTTFrXBIPzmaM4GIsh2TrMiTeqz2M86sdiQCuIyOdSQYmeGU6cmBpUUdd7Da3zWqnbTayltE/J5b03pu57bvki8zt+BwWLoOGKjy024IJGGJis3NdZoJeN6r7NsbEyM2PwzE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=oNoRSzib; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="oNoRSzib" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1750694889; bh=xDvkLdk8hMUQqSvQi1R6ZixD6fEY6eb3RFzWM6baH4o=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=oNoRSzib+zbMQPDZnMpSIymSkOk5vbP2+kE4B+QLlBlmB2nWX22ZzU2G76VfViNKM KQJ8IqahXEvsP4i4F3Wgg0hhMmsLKQtQzi/J5AAvVMTkXrOctj1vFrokZQY2mBtfIb 9hGF32pz7VLt4p2bqpWF+/LnSNOEucTIFkoRlqonHewBS9WrtFUSeDSo7xmD96nDUd Hu69tPCHe3pdg9fG1XeHaj+npraAnyGCeOVqPtExWSUZW5gzxrsKx+cHAv7bqqYzWS z06/VySIHr7ETpczvNE3H8MYUnUMZwiYW4SjVUg0OemLCd+KgyvRZ5pwvbMd2fJHpg NC4tNIyZb9CjA== Received: from trenzalore.hitronhub.home (unknown [23.233.251.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: detlev) by bali.collaboradmins.com (Postfix) with ESMTPSA id E065E17E3700; Mon, 23 Jun 2025 18:08:05 +0200 (CEST) From: Detlev Casanova To: linux-kernel@vger.kernel.org Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel , Cristian Ciocaltea , Alexey Charkov , Dragan Simic , Jianfeng Liu , Nicolas Frattaroli , Kever Yang , Detlev Casanova , Andy Yan , Frank Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Ezequiel Garcia , Mauro Carvalho Chehab , Hans Verkuil , Ricardo Ribalda , Hans de Goede , Yunke Cao , linux-media@vger.kernel.org, kernel@collabora.com Subject: [PATCH 7/8] media: rkvdec: Remove TODO file Date: Mon, 23 Jun 2025 12:07:21 -0400 Message-ID: <20250623160722.55938-8-detlev.casanova@collabora.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623160722.55938-1-detlev.casanova@collabora.com> References: <20250623160722.55938-1-detlev.casanova@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" 2 items are present in the TODO file: - HEVC support - Evaluate adding helper for rkvdec_request_validate Missing HEVC support is not a reason for a driver to be in staging, support for different features of the hardware can be added in drivers in the main tree. The rkvdec_request_validate function was simplified in commit 54676d5f5630 ("media: rkvdec: Do not require all controls to be pres= ent in every request") by not setting controls that have not changed. As it now basically just calls vb2_request_validate(), there is no need for a helper. Signed-off-by: Detlev Casanova Reviewed-by: Nicolas Dufresne --- drivers/staging/media/rkvdec/TODO | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 drivers/staging/media/rkvdec/TODO diff --git a/drivers/staging/media/rkvdec/TODO b/drivers/staging/media/rkvd= ec/TODO deleted file mode 100644 index 2c0779383276e..0000000000000 --- a/drivers/staging/media/rkvdec/TODO +++ /dev/null @@ -1,11 +0,0 @@ -* Support for HEVC is planned for this driver. - - Given the V4L controls for that CODEC will be part of - the uABI, it will be required to have the driver in staging. - - For this reason, we are keeping this driver in staging for now. - -* Evaluate introducing a helper to consolidate duplicated - code in rkvdec_request_validate and cedrus_request_validate. - The helper needs to the driver private data associated with - the videobuf2 queue, from a media request. --=20 2.50.0 From nobody Wed Oct 8 22:19:01 2025 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 572242D238B; Mon, 23 Jun 2025 16:08:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694896; cv=none; b=kyZBIUCShx+7Q0OSDQXJ9iLFSf/FE4CzPH93f3Pm0xtUoDXdMCoBd//v0R5F/N91mZbMp2ivbS5K9US/8gcVP8OgaDB5fjJbXcKqHRn5StGNcDT0dxNCSRPg2NdZ3LffkgxU0pgI7SIuMdoUExOqEuXonrwWDSeAgqTz3tXiRZA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750694896; c=relaxed/simple; bh=L4p5mXi7DFDYHCSaTVxJNafGXSHDm+zZmxqXO3mMrMY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tMaoMw47aS61mFb7tIQV3EeXfS8cdccvs9csO51rnoHg+flc0j+N16r52olC6jxq/YahdnQZuDm1HjWkxJQNm3a8laxI5IOw9KUQCKxrIWAvcUIupCtsDm12IR9XwfCHKXBnQnJT14pSuIyPTHClXor2OT1PoeVHSvPEpInWvFs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=qskRex4K; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="qskRex4K" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1750694892; bh=L4p5mXi7DFDYHCSaTVxJNafGXSHDm+zZmxqXO3mMrMY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=qskRex4KS5ZZJaJwLsSUyUFsAf1k4QKIQF0MgHltmvgQxKp9+2+d//S4QHw/Q3Uea fH5rR/de88nZaQ4f5gJfPxOY3WCUTR9TxeZDGtVPKyjxe3mUlsYP53rSeANhyNHMWx sJjhLlyEn/tOFLFlOzmxpx78ZmDnGHMi3+1Sv+IcPFAsmr5JQfU9A35hwRsdSVKcFd WPPfDCSNgLWT4agyfvYPfgK/3OyKn/93e+8BFS16TXhP5jA+YBuJ5i8YUB0gBIkOTQ W8M5WjDI32QzMLnNbwu27TMdzQMSXAh+NWDYDEeUA5iA8oF0YvcR03GFtucqa01Hpz c40gtzlbT85jw== Received: from trenzalore.hitronhub.home (unknown [23.233.251.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: detlev) by bali.collaboradmins.com (Postfix) with ESMTPSA id 8969617E37C2; Mon, 23 Jun 2025 18:08:09 +0200 (CEST) From: Detlev Casanova To: linux-kernel@vger.kernel.org Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel , Cristian Ciocaltea , Alexey Charkov , Dragan Simic , Jianfeng Liu , Nicolas Frattaroli , Kever Yang , Detlev Casanova , Andy Yan , Frank Wang , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Ezequiel Garcia , Mauro Carvalho Chehab , Hans Verkuil , Ricardo Ribalda , Hans de Goede , Yunke Cao , linux-media@vger.kernel.org, kernel@collabora.com Subject: [PATCH 8/8] media: rkvdec: Unstage the driver Date: Mon, 23 Jun 2025 12:07:22 -0400 Message-ID: <20250623160722.55938-9-detlev.casanova@collabora.com> X-Mailer: git-send-email 2.50.0 In-Reply-To: <20250623160722.55938-1-detlev.casanova@collabora.com> References: <20250623160722.55938-1-detlev.casanova@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The TODO list for unstaging being empty, the driver can now be moved to the main media folder. Also add myself as maintainer. Signed-off-by: Detlev Casanova Reviewed-by: Nicolas Dufresne Tested-by: Diederik de Haas # Rock64 + RockPro64 --- MAINTAINERS | 8 ++++++++ drivers/media/platform/rockchip/Kconfig | 1 + drivers/media/platform/rockchip/Makefile | 1 + .../media =3D> media/platform/rockchip}/rkvdec/Kconfig | 0 .../media =3D> media/platform/rockchip}/rkvdec/Makefile | 0 .../platform/rockchip}/rkvdec/rkvdec-h264.c | 0 .../platform/rockchip}/rkvdec/rkvdec-regs.h | 0 .../media =3D> media/platform/rockchip}/rkvdec/rkvdec-vp9.c | 0 .../media =3D> media/platform/rockchip}/rkvdec/rkvdec.c | 0 .../media =3D> media/platform/rockchip}/rkvdec/rkvdec.h | 0 drivers/staging/media/Kconfig | 2 -- drivers/staging/media/Makefile | 1 - 12 files changed, 10 insertions(+), 3 deletions(-) rename drivers/{staging/media =3D> media/platform/rockchip}/rkvdec/Kconfig= (100%) rename drivers/{staging/media =3D> media/platform/rockchip}/rkvdec/Makefil= e (100%) rename drivers/{staging/media =3D> media/platform/rockchip}/rkvdec/rkvdec-= h264.c (100%) rename drivers/{staging/media =3D> media/platform/rockchip}/rkvdec/rkvdec-= regs.h (100%) rename drivers/{staging/media =3D> media/platform/rockchip}/rkvdec/rkvdec-= vp9.c (100%) rename drivers/{staging/media =3D> media/platform/rockchip}/rkvdec/rkvdec.= c (100%) rename drivers/{staging/media =3D> media/platform/rockchip}/rkvdec/rkvdec.= h (100%) diff --git a/MAINTAINERS b/MAINTAINERS index c3f7fbd0d67af..d05a153c21526 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -21466,6 +21466,14 @@ S: Maintained F: Documentation/devicetree/bindings/media/rockchip-rga.yaml F: drivers/media/platform/rockchip/rga/ =20 +ROCKCHIP RKVDEC VIDEO DECODER DRIVER +M: Detlev Casanova +L: linux-media@vger.kernel.org +L: linux-rockchip@lists.infradead.org +S: Maintained +F: Documentation/devicetree/bindings/media/rockchip,vdec.yaml +F: drivers/media/platform/rockchip/rkvdec/ + ROCKCHIP RK3308 INTERNAL AUDIO CODEC M: Luca Ceresoli S: Maintained diff --git a/drivers/media/platform/rockchip/Kconfig b/drivers/media/platfo= rm/rockchip/Kconfig index b41d3960c1b41..9bbeec4996aa2 100644 --- a/drivers/media/platform/rockchip/Kconfig +++ b/drivers/media/platform/rockchip/Kconfig @@ -4,3 +4,4 @@ comment "Rockchip media platform drivers" =20 source "drivers/media/platform/rockchip/rga/Kconfig" source "drivers/media/platform/rockchip/rkisp1/Kconfig" +source "drivers/media/platform/rockchip/rkvdec/Kconfig" diff --git a/drivers/media/platform/rockchip/Makefile b/drivers/media/platf= orm/rockchip/Makefile index 4f782b876ac9b..286dc5c53f7e1 100644 --- a/drivers/media/platform/rockchip/Makefile +++ b/drivers/media/platform/rockchip/Makefile @@ -1,3 +1,4 @@ # SPDX-License-Identifier: GPL-2.0-only obj-y +=3D rga/ obj-y +=3D rkisp1/ +obj-y +=3D rkvdec/ diff --git a/drivers/staging/media/rkvdec/Kconfig b/drivers/media/platform/= rockchip/rkvdec/Kconfig similarity index 100% rename from drivers/staging/media/rkvdec/Kconfig rename to drivers/media/platform/rockchip/rkvdec/Kconfig diff --git a/drivers/staging/media/rkvdec/Makefile b/drivers/media/platform= /rockchip/rkvdec/Makefile similarity index 100% rename from drivers/staging/media/rkvdec/Makefile rename to drivers/media/platform/rockchip/rkvdec/Makefile diff --git a/drivers/staging/media/rkvdec/rkvdec-h264.c b/drivers/media/pla= tform/rockchip/rkvdec/rkvdec-h264.c similarity index 100% rename from drivers/staging/media/rkvdec/rkvdec-h264.c rename to drivers/media/platform/rockchip/rkvdec/rkvdec-h264.c diff --git a/drivers/staging/media/rkvdec/rkvdec-regs.h b/drivers/media/pla= tform/rockchip/rkvdec/rkvdec-regs.h similarity index 100% rename from drivers/staging/media/rkvdec/rkvdec-regs.h rename to drivers/media/platform/rockchip/rkvdec/rkvdec-regs.h diff --git a/drivers/staging/media/rkvdec/rkvdec-vp9.c b/drivers/media/plat= form/rockchip/rkvdec/rkvdec-vp9.c similarity index 100% rename from drivers/staging/media/rkvdec/rkvdec-vp9.c rename to drivers/media/platform/rockchip/rkvdec/rkvdec-vp9.c diff --git a/drivers/staging/media/rkvdec/rkvdec.c b/drivers/media/platform= /rockchip/rkvdec/rkvdec.c similarity index 100% rename from drivers/staging/media/rkvdec/rkvdec.c rename to drivers/media/platform/rockchip/rkvdec/rkvdec.c diff --git a/drivers/staging/media/rkvdec/rkvdec.h b/drivers/media/platform= /rockchip/rkvdec/rkvdec.h similarity index 100% rename from drivers/staging/media/rkvdec/rkvdec.h rename to drivers/media/platform/rockchip/rkvdec/rkvdec.h diff --git a/drivers/staging/media/Kconfig b/drivers/staging/media/Kconfig index b442148543995..b9d52a51841b5 100644 --- a/drivers/staging/media/Kconfig +++ b/drivers/staging/media/Kconfig @@ -32,8 +32,6 @@ source "drivers/staging/media/max96712/Kconfig" =20 source "drivers/staging/media/meson/vdec/Kconfig" =20 -source "drivers/staging/media/rkvdec/Kconfig" - source "drivers/staging/media/starfive/Kconfig" =20 source "drivers/staging/media/sunxi/Kconfig" diff --git a/drivers/staging/media/Makefile b/drivers/staging/media/Makefile index ad4e9619a9e07..102ca632ddf5c 100644 --- a/drivers/staging/media/Makefile +++ b/drivers/staging/media/Makefile @@ -4,7 +4,6 @@ obj-$(CONFIG_INTEL_ATOMISP) +=3D atomisp/ obj-$(CONFIG_VIDEO_IMX_MEDIA) +=3D imx/ obj-$(CONFIG_VIDEO_MAX96712) +=3D max96712/ obj-$(CONFIG_VIDEO_MESON_VDEC) +=3D meson/vdec/ -obj-$(CONFIG_VIDEO_ROCKCHIP_VDEC) +=3D rkvdec/ obj-$(CONFIG_VIDEO_STARFIVE_CAMSS) +=3D starfive/ obj-$(CONFIG_VIDEO_SUNXI) +=3D sunxi/ obj-$(CONFIG_VIDEO_TEGRA) +=3D tegra-video/ --=20 2.50.0