[PATCH v13 18/18] arm64: dts: rockchip: add radxa camera 8m on rock 3a csi port
Michael Riesch via B4 Relay
devnull+michael.riesch.collabora.com at kernel.org
Wed Oct 15 07:56:41 PDT 2025
From: Michael Riesch <michael.riesch at collabora.com>
Add a device tree overlay for the Radxa Camera 8M (featuring the
Sony IMX219 image sensor) to be connected to the Radxa ROCK 3A CSI
port.
The image sensor is connected to the RK3568 VICAP MIPI CSI-2
port, since as at the time of writing this there is no mainline
support for the RK3568 ISP.
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue at linaro.org>
Signed-off-by: Michael Riesch <michael.riesch at collabora.com>
---
arch/arm64/boot/dts/rockchip/Makefile | 5 +
.../dts/rockchip/rk3568-rock-3a-radxa-cam8m.dtso | 103 +++++++++++++++++++++
2 files changed, 108 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index ad684e3831bc..d6b969a0dab9 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -146,6 +146,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-qnap-ts433.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-radxa-e25.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-roc-pc.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-rock-3a.dtb
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-rock-3a-radxa-cam8m.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-rock-3b.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-wolfvision-pf5.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-wolfvision-pf5-display-vz.dtbo
@@ -243,6 +244,10 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rockpro64-v2-screen.dtb
rk3399-rockpro64-v2-screen-dtbs := rk3399-rockpro64-v2.dtb \
rk3399-rockpro64-screen.dtbo
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-rock-3a-radxa-8m-cam.dtb
+rk3568-rock-3a-radxa-8m-cam-dtbs := rk3568-rock-3a.dtb \
+ rk3568-rock-3a-radxa-cam8m.dtbo
+
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-wolfvision-pf5-vz-2-uhd.dtb
rk3568-wolfvision-pf5-vz-2-uhd-dtbs := rk3568-wolfvision-pf5.dtb \
rk3568-wolfvision-pf5-display-vz.dtbo \
diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a-radxa-cam8m.dtso b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a-radxa-cam8m.dtso
new file mode 100644
index 000000000000..3aa1ffdc22d8
--- /dev/null
+++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a-radxa-cam8m.dtso
@@ -0,0 +1,103 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Device tree overlay for the Radxa Camera 8M attached to the CSI port of
+ * the Radxa ROCK 3A.
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/pinctrl/rockchip.h>
+
+&{/} {
+ clk_camera: clock-camera {
+ compatible = "fixed-clock";
+ clock-frequency = <24000000>;
+ clock-output-names = "clk_camera";
+ #clock-cells = <0>;
+ };
+
+ vana_camera: regulator-vana-camera {
+ compatible = "regulator-fixed";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ regulator-name = "vana_camera";
+ vin-supply = <&vcc_cam>;
+ };
+
+ vddl_camera: regulator-vddl-camera {
+ compatible = "regulator-fixed";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-name = "vddl_camera";
+ vin-supply = <&vcc_cam>;
+ };
+
+ vdig_camera: regulator-vdig-camera {
+ compatible = "regulator-fixed";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-name = "vdig_camera";
+ vin-supply = <&vcc_cam>;
+ };
+};
+
+&i2c5 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ imx219: camera-sensor at 10 {
+ compatible = "sony,imx219";
+ reg = <0x10>;
+ clocks = <&clk_camera>;
+ clock-names = "xclk";
+ pinctrl-names = "default";
+ pinctrl-0 = <&camera_reset>;
+ reset-gpios = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
+ VANA-supply = <&vana_camera>;
+ VDDL-supply = <&vddl_camera>;
+ VDIG-supply = <&vdig_camera>;
+
+ port {
+ imx219_output: endpoint {
+ data-lanes = <1 2>;
+ link-frequencies = /bits/ 64 <456000000>;
+ remote-endpoint = <&csi_input>;
+ };
+ };
+ };
+};
+
+&pinctrl {
+ cam {
+ camera_reset: camera-reset-pinctrl {
+ rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+};
+
+&csi {
+ status = "okay";
+};
+
+&csi_dphy {
+ status = "okay";
+};
+
+&csi_in {
+ csi_input: endpoint {
+ data-lanes = <1 2>;
+ link-frequencies = /bits/ 64 <456000000>;
+ remote-endpoint = <&imx219_output>;
+ };
+};
+
+&vicap {
+ status = "okay";
+};
+
+&vicap_mmu {
+ status = "okay";
+};
--
2.39.5
More information about the Linux-rockchip
mailing list