[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251206082809.2040679-5-christianshewitt@gmail.com>
Date: Sat, 6 Dec 2025 08:28:09 +0000
From: Christian Hewitt <christianshewitt@...il.com>
To: Detlev Casanova <detlev.casanova@...labora.com>,
Olivier CrĂȘte <olivier.crete@...labora.com>,
Ezequiel Garcia <ezequiel@...guardiasur.com.ar>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Heiko Stuebner <heiko@...ech.de>,
Diederik de Haas <diederik@...ow-tech.com>,
Dmitry Osipenko <dmitry.osipenko@...labora.com>,
Thomas Gleixner <tglx@...utronix.de>,
Dragan Simic <dsimic@...jaro.org>,
Chukun Pan <amadeus@....edu.cn>,
linux-media@...r.kernel.org,
linux-rockchip@...ts.infradead.org,
devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org
Cc: Diederik de Haas <didi.debian@...ow.org>,
Piotr Oniszczuk <piotr.oniszczuk@...il.com>
Subject: [PATCH 4/4] arm64: dts: rockchip: Add the vdpu346 Video Decoders on RK356X
Add the vdpu346 Video Decoders to the rk356x-base devicetree to
enable support on RK3566 and RK3568 boards. Also add the needed
sram and vdec_mmu nodes.
Suggested-by: Diederik de Haas <didi.debian@...ow.org>
Suggested-by: Piotr Oniszczuk <piotr.oniszczuk@...il.com>
Signed-off-by: Christian Hewitt <christianshewitt@...il.com>
---
arch/arm64/boot/dts/rockchip/rk356x-base.dtsi | 49 +++++++++++++++++++
1 file changed, 49 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi b/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi
index c005135089d4..c51179e13657 100644
--- a/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi
@@ -383,6 +383,19 @@ usb2phy1_grf: syscon@...a8000 {
reg = <0x0 0xfdca8000 0x0 0x8000>;
};
+ sram@...c0000 {
+ compatible = "mmio-sram";
+ reg = <0x0 0xfdcc0000 0x0 0xb000>;
+ ranges = <0x0 0x0 0xfdcc0000 0xb000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ vdec_sram: rkvdec-sram@0 {
+ reg = <0x0 0xb000>;
+ pool;
+ };
+ };
+
pmucru: clock-controller@...00000 {
compatible = "rockchip,rk3568-pmucru";
reg = <0x0 0xfdd00000 0x0 0x1000>;
@@ -619,6 +632,42 @@ vepu_mmu: iommu@...e0800 {
#iommu-cells = <0>;
};
+ vdec: video-codec@...80100 {
+ compatible = "rockchip,rk3568-vdec";
+ reg = <0x0 0xfdf80200 0x0 0x500>,
+ <0x0 0xfdf80100 0x0 0x100>,
+ <0x0 0xfdf80700 0x0 0x100>;
+ reg-names = "function", "link", "cache";
+ interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>,
+ <&cru CLK_RKVDEC_CA>, <&cru CLK_RKVDEC_CORE>,
+ <&cru CLK_RKVDEC_HEVC_CA>;
+ clock-names = "axi", "ahb", "cabac", "core", "hevc_cabac";
+ assigned-clocks = <&cru ACLK_RKVDEC>,
+ <&cru CLK_RKVDEC_CORE>,
+ <&cru CLK_RKVDEC_CA>,
+ <&cru CLK_RKVDEC_HEVC_CA>;
+ assigned-clock-rates = <297000000>, <297000000>,
+ <297000000>, <600000000>;
+ iommus = <&vdec_mmu>;
+ power-domains = <&power RK3568_PD_RKVDEC>;
+ resets = <&cru SRST_A_RKVDEC>, <&cru SRST_H_RKVDEC>,
+ <&cru SRST_RKVDEC_CA>, <&cru SRST_RKVDEC_CORE>,
+ <&cru SRST_RKVDEC_HEVC_CA>;
+ reset-names = "axi", "ahb", "cabac", "core", "hevc_cabac";
+ sram = <&vdec_sram>;
+ };
+
+ vdec_mmu: iommu@...80800 {
+ compatible = "rockchip,rk3568-iommu";
+ reg = <0x0 0xfdf80800 0x0 0x40>, <0x0 0xfdf80840 0x0 0x40>;
+ interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>;
+ clock-names = "aclk", "iface";
+ power-domains = <&power RK3568_PD_RKVDEC>;
+ #iommu-cells = <0>;
+ };
+
sdmmc2: mmc@...00000 {
compatible = "rockchip,rk3568-dw-mshc", "rockchip,rk3288-dw-mshc";
reg = <0x0 0xfe000000 0x0 0x4000>;
--
2.34.1
Powered by blists - more mailing lists