From: "Sven Püschel" <s.pueschel@pengutronix.de>
To: Jacob Chen <jacob-chen@iotwrt.com>,
Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Heiko Stuebner <heiko@sntech.de>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
kernel@pengutronix.de, "Sven Püschel" <s.pueschel@pengutronix.de>
Subject: [PATCH v3 27/27] arm64: dts: rockchip: add rga3 dt nodes
Date: Tue, 27 Jan 2026 15:39:36 +0100 [thread overview]
Message-ID: <20260127-spu-rga3-v3-27-77b273067beb@pengutronix.de> (raw)
In-Reply-To: <20260127-spu-rga3-v3-0-77b273067beb@pengutronix.de>
Add devicetree nodes for the RGA3 (Raster Graphics Acceleration 3)
peripheral in the RK3588.
The existing rga node refers to the RGA2 peripheral. The RK3588
contains one RGA2 core and two RGA3 cores. Both feature a similar
functionality of scaling, cropping and rotating of up to two input
images into one output image. Key differences of the RGA3 are:
- supports 10bit YUV output formats
- supports 8x8 tiles and FBCD as inputs and outputs
- supports BT2020 color space conversion
- max output resolution of (8192-64)x(8192-64)
- MMU can map up to 32G DDR RAM
- fully planar formats (3 planes) are not supported
- max scale up/down factor of 8 (RGA2 allows up to 16)
Signed-off-by: Sven Püschel <s.pueschel@pengutronix.de>
---
arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 44 +++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
index 2a79217930206..d1d44cf948e92 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
@@ -1273,6 +1273,50 @@ rga: rga@fdb80000 {
power-domains = <&power RK3588_PD_VDPU>;
};
+ rga3_core0: rga@fdb60000 {
+ compatible = "rockchip,rk3588-rga3";
+ reg = <0x0 0xfdb60000 0x0 0x200>;
+ interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH 0>;
+ clocks = <&cru ACLK_RGA3_0>, <&cru HCLK_RGA3_0>, <&cru CLK_RGA3_0_CORE>;
+ clock-names = "aclk", "hclk", "sclk";
+ resets = <&cru SRST_RGA3_0_CORE>, <&cru SRST_A_RGA3_0>, <&cru SRST_H_RGA3_0>;
+ reset-names = "core", "axi", "ahb";
+ power-domains = <&power RK3588_PD_RGA30>;
+ iommus = <&rga3_0_mmu>;
+ };
+
+ rga3_0_mmu: iommu@fdb60f00 {
+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
+ reg = <0x0 0xfdb60f00 0x0 0x100>;
+ interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH 0>;
+ clocks = <&cru ACLK_RGA3_0>, <&cru HCLK_RGA3_0>;
+ clock-names = "aclk", "iface";
+ #iommu-cells = <0>;
+ power-domains = <&power RK3588_PD_RGA30>;
+ };
+
+ rga3_core1: rga@fdb70000 {
+ compatible = "rockchip,rk3588-rga3";
+ reg = <0x0 0xfdb70000 0x0 0x200>;
+ interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH 0>;
+ clocks = <&cru ACLK_RGA3_1>, <&cru HCLK_RGA3_1>, <&cru CLK_RGA3_1_CORE>;
+ clock-names = "aclk", "hclk", "sclk";
+ resets = <&cru SRST_RGA3_1_CORE>, <&cru SRST_A_RGA3_1>, <&cru SRST_H_RGA3_1>;
+ reset-names = "core", "axi", "ahb";
+ power-domains = <&power RK3588_PD_RGA31>;
+ iommus = <&rga3_1_mmu>;
+ };
+
+ rga3_1_mmu: iommu@fdb70f00 {
+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
+ reg = <0x0 0xfdb70f00 0x0 0x100>;
+ interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH 0>;
+ clocks = <&cru ACLK_RGA3_1>, <&cru HCLK_RGA3_1>;
+ clock-names = "aclk", "iface";
+ #iommu-cells = <0>;
+ power-domains = <&power RK3588_PD_RGA31>;
+ };
+
vepu121_0: video-codec@fdba0000 {
compatible = "rockchip,rk3588-vepu121";
reg = <0x0 0xfdba0000 0x0 0x800>;
--
2.52.0
prev parent reply other threads:[~2026-01-27 14:41 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-27 14:39 [PATCH v3 00/27] media: platform: rga: Add RGA3 support Sven Püschel
2026-01-27 14:39 ` [PATCH v3 01/27] media: dt-bindings: media: rockchip-rga: add rockchip,rk3588-rga3 Sven Püschel
2026-01-27 15:34 ` Rob Herring (Arm)
2026-03-19 18:44 ` Nicolas Dufresne
[not found] ` <f2428e12-88c5-4b6e-a840-382e26da4541@pengutronix.de>
[not found] ` <f5028eecdecedd9ea5e2a94d4fbf08b675e0842f.camel@ndufresne.ca>
2026-03-24 15:55 ` Sven Püschel
2026-01-27 14:39 ` [PATCH v3 02/27] media: v4l2-common: sort RGB formats in v4l2_format_info Sven Püschel
2026-03-19 18:45 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 03/27] media: v4l2-common: add missing 1 and 2 byte RGB formats to v4l2_format_info Sven Püschel
2026-03-19 18:46 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 04/27] media: v4l2-common: add has_alpha " Sven Püschel
2026-03-19 18:53 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 05/27] media: v4l2-common: add v4l2_fill_pixfmt_mp_aligned helper Sven Püschel
2026-03-19 19:12 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 06/27] media: rockchip: rga: use clk_bulk api Sven Püschel
2026-03-20 17:32 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 07/27] media: rockchip: rga: use stride for offset calculation Sven Püschel
2026-03-20 17:36 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 08/27] media: rockchip: rga: remove redundant rga_frame variables Sven Püschel
2026-01-27 14:39 ` [PATCH v3 09/27] media: rockchip: rga: announce and sync colorimetry Sven Püschel
2026-03-20 17:42 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 10/27] media: rockchip: rga: move hw specific parts to a dedicated struct Sven Püschel
2026-01-27 14:39 ` [PATCH v3 11/27] media: rockchip: rga: avoid odd frame sizes for YUV formats Sven Püschel
2026-03-20 17:47 ` Nicolas Dufresne
2026-03-24 16:13 ` Sven Püschel
2026-03-20 18:15 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 12/27] media: rockchip: rga: calculate x_div/y_div using v4l2_format_info Sven Püschel
2026-03-20 17:50 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 13/27] media: rockchip: rga: move cmdbuf to rga_ctx Sven Püschel
2026-01-27 14:39 ` [PATCH v3 14/27] media: rockchip: rga: align stride to 4 bytes Sven Püschel
2026-03-20 17:52 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 15/27] media: rockchip: rga: prepare cmdbuf on streamon Sven Püschel
2026-01-27 14:39 ` [PATCH v3 16/27] media: rockchip: rga: check scaling factor Sven Püschel
2026-03-20 17:57 ` Nicolas Dufresne
2026-03-24 16:38 ` Sven Püschel
2026-01-27 14:39 ` [PATCH v3 17/27] media: rockchip: rga: use card type to specify rga type Sven Püschel
2026-01-27 14:39 ` [PATCH v3 18/27] media: rockchip: rga: change offset to dma_addresses Sven Püschel
2026-01-27 14:39 ` [PATCH v3 19/27] media: rockchip: rga: support external iommus Sven Püschel
2026-03-20 17:59 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 20/27] media: rockchip: rga: share the interrupt when an external iommu is used Sven Püschel
2026-01-27 14:39 ` [PATCH v3 21/27] media: rockchip: rga: remove size from rga_frame Sven Püschel
2026-03-20 18:00 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 22/27] media: rockchip: rga: remove stride " Sven Püschel
2026-01-27 14:39 ` [PATCH v3 23/27] media: rockchip: rga: move rga_fmt to rga-hw.h Sven Püschel
2026-01-27 14:39 ` [PATCH v3 24/27] media: rockchip: rga: add feature flags Sven Püschel
2026-01-27 14:39 ` [PATCH v3 25/27] media: rockchip: rga: disable multi-core support Sven Püschel
2026-03-20 18:01 ` Nicolas Dufresne
2026-01-27 14:39 ` [PATCH v3 26/27] media: rockchip: rga: add rga3 support Sven Püschel
2026-03-20 18:09 ` Nicolas Dufresne
2026-01-27 14:39 ` Sven Püschel [this message]
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=20260127-spu-rga3-v3-27-77b273067beb@pengutronix.de \
--to=s.pueschel@pengutronix.de \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=ezequiel@vanguardiasur.com.ar \
--cc=heiko@sntech.de \
--cc=jacob-chen@iotwrt.com \
--cc=kernel@pengutronix.de \
--cc=krzk+dt@kernel.org \
--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=robh@kernel.org \
/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