Skip to content

Commit f61731b

Browse files
cazoummind
authored andcommitted
arm64: dts: rockchip: Add the vdpu381 Video Decoders on RK3588
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 <detlev.casanova@collabora.com> Link: https://patch.msgid.link/20251020212009.8852-2-detlev.casanova@collabora.com Signed-off-by: Heiko Stuebner <heiko@sntech.de>
1 parent 3cdaec4 commit f61731b

1 file changed

Lines changed: 74 additions & 0 deletions

File tree

arch/arm64/boot/dts/rockchip/rk3588-base.dtsi

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1353,6 +1353,70 @@
13531353
#iommu-cells = <0>;
13541354
};
13551355

1356+
vdec0: video-codec@fdc38000 {
1357+
compatible = "rockchip,rk3588-vdec";
1358+
reg = <0x0 0xfdc38100 0x0 0x500>,
1359+
<0x0 0xfdc38000 0x0 0x100>,
1360+
<0x0 0xfdc38600 0x0 0x100>;
1361+
reg-names = "function", "link", "cache";
1362+
interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH 0>;
1363+
clocks = <&cru ACLK_RKVDEC0>, <&cru HCLK_RKVDEC0>, <&cru CLK_RKVDEC0_CA>,
1364+
<&cru CLK_RKVDEC0_CORE>, <&cru CLK_RKVDEC0_HEVC_CA>;
1365+
clock-names = "axi", "ahb", "cabac", "core", "hevc_cabac";
1366+
assigned-clocks = <&cru ACLK_RKVDEC0>, <&cru CLK_RKVDEC0_CORE>,
1367+
<&cru CLK_RKVDEC0_CA>, <&cru CLK_RKVDEC0_HEVC_CA>;
1368+
assigned-clock-rates = <800000000>, <600000000>,
1369+
<600000000>, <1000000000>;
1370+
iommus = <&vdec0_mmu>;
1371+
power-domains = <&power RK3588_PD_RKVDEC0>;
1372+
resets = <&cru SRST_A_RKVDEC0>, <&cru SRST_H_RKVDEC0>, <&cru SRST_RKVDEC0_CA>,
1373+
<&cru SRST_RKVDEC0_CORE>, <&cru SRST_RKVDEC0_HEVC_CA>;
1374+
reset-names = "axi", "ahb", "cabac", "core", "hevc_cabac";
1375+
sram = <&vdec0_sram>;
1376+
};
1377+
1378+
vdec0_mmu: iommu@fdc38700 {
1379+
compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
1380+
reg = <0x0 0xfdc38700 0x0 0x40>, <0x0 0xfdc38740 0x0 0x40>;
1381+
interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH 0>;
1382+
clocks = <&cru ACLK_RKVDEC0>, <&cru HCLK_RKVDEC0>;
1383+
clock-names = "aclk", "iface";
1384+
power-domains = <&power RK3588_PD_RKVDEC0>;
1385+
#iommu-cells = <0>;
1386+
};
1387+
1388+
vdec1: video-codec@fdc40000 {
1389+
compatible = "rockchip,rk3588-vdec";
1390+
reg = <0x0 0xfdc40100 0x0 0x500>,
1391+
<0x0 0xfdc40000 0x0 0x100>,
1392+
<0x0 0xfdc40600 0x0 0x100>;
1393+
reg-names = "function", "link", "cache";
1394+
interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH 0>;
1395+
clocks = <&cru ACLK_RKVDEC1>, <&cru HCLK_RKVDEC1>, <&cru CLK_RKVDEC1_CA>,
1396+
<&cru CLK_RKVDEC1_CORE>, <&cru CLK_RKVDEC1_HEVC_CA>;
1397+
clock-names = "axi", "ahb", "cabac", "core", "hevc_cabac";
1398+
assigned-clocks = <&cru ACLK_RKVDEC1>, <&cru CLK_RKVDEC1_CORE>,
1399+
<&cru CLK_RKVDEC1_CA>, <&cru CLK_RKVDEC1_HEVC_CA>;
1400+
assigned-clock-rates = <800000000>, <600000000>,
1401+
<600000000>, <1000000000>;
1402+
iommus = <&vdec1_mmu>;
1403+
power-domains = <&power RK3588_PD_RKVDEC1>;
1404+
resets = <&cru SRST_A_RKVDEC1>, <&cru SRST_H_RKVDEC1>, <&cru SRST_RKVDEC1_CA>,
1405+
<&cru SRST_RKVDEC1_CORE>, <&cru SRST_RKVDEC1_HEVC_CA>;
1406+
reset-names = "axi", "ahb", "cabac", "core", "hevc_cabac";
1407+
sram = <&vdec1_sram>;
1408+
};
1409+
1410+
vdec1_mmu: iommu@fdc40700 {
1411+
compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
1412+
reg = <0x0 0xfdc40700 0x0 0x40>, <0x0 0xfdc40740 0x0 0x40>;
1413+
interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH 0>;
1414+
clocks = <&cru ACLK_RKVDEC1>, <&cru HCLK_RKVDEC1>;
1415+
clock-names = "aclk", "iface";
1416+
power-domains = <&power RK3588_PD_RKVDEC1>;
1417+
#iommu-cells = <0>;
1418+
};
1419+
13561420
av1d: video-codec@fdc70000 {
13571421
compatible = "rockchip,rk3588-av1-vpu";
13581422
reg = <0x0 0xfdc70000 0x0 0x800>;
@@ -3249,6 +3313,16 @@
32493313
ranges = <0x0 0x0 0xff001000 0xef000>;
32503314
#address-cells = <1>;
32513315
#size-cells = <1>;
3316+
3317+
vdec0_sram: codec-sram@0 {
3318+
reg = <0x0 0x78000>;
3319+
pool;
3320+
};
3321+
3322+
vdec1_sram: codec-sram@78000 {
3323+
reg = <0x78000 0x77000>;
3324+
pool;
3325+
};
32523326
};
32533327

32543328
pinctrl: pinctrl {

0 commit comments

Comments
 (0)