* [PATCH v2 0/5] arm64: dts: renesas: sparrow-hawk: Add overlays for camera sensors
@ 2025-07-01 11:26 Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target Niklas Söderlund
` (4 more replies)
0 siblings, 5 replies; 11+ messages in thread
From: Niklas Söderlund @ 2025-07-01 11:26 UTC (permalink / raw)
To: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Cc: Niklas Söderlund
Hello,
This series adds a couple of overlays to verify the two CSI-2 busses
exposed on the V4H Sparrow Hawk board. The two busses are exposed on two
connectors labeled J1 and J2 on the board.
The first set adds overlays for the IMX219 camera sensor, one for each
connector (patch 2/5 and 3/5). A Raspberry Pi Camera Module 2 have been
used to verify the proper operation of the overlays.
The second sets adds overlays for the IMX462 camera sensors, also one
for each connector (patch 4/5 and 5/5). A DFM 36SX462-ML camera module
have been used to verify the proper operation of the overlays.
The reason two sets of overlays are needed is that the IMX219 uses
2-lanes CSI-2 D-PHY bus, while the IMX462 uses a 4-lane CSI-2 D-PHY bus.
To be able to properly test both situations on the board each sensor
needs to be able to connected to each of the two external busses.
Obviously only one sensor can be connected to J1, and one to J2 at any
given time.
Patch 1/5 is a drive-by fix that adds an missing install target for an
existing sparrow-hawk overlay. It could have been posted as a separate
patch but could have caused potential conflicts so I kept it in this
series.
Niklas Söderlund (5):
arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing
install target
arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J1
arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J2
arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J1
arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J2
arch/arm64/boot/dts/renesas/Makefile | 13 ++
...8a779g3-sparrow-hawk-camera-j1-imx219.dtso | 118 +++++++++++++++++
...8a779g3-sparrow-hawk-camera-j1-imx462.dtso | 119 ++++++++++++++++++
...8a779g3-sparrow-hawk-camera-j2-imx219.dtso | 118 +++++++++++++++++
...8a779g3-sparrow-hawk-camera-j2-imx462.dtso | 119 ++++++++++++++++++
5 files changed, 487 insertions(+)
create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso
create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx219.dtso
create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx462.dtso
--
2.50.0
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target
2025-07-01 11:26 [PATCH v2 0/5] arm64: dts: renesas: sparrow-hawk: Add overlays for camera sensors Niklas Söderlund
@ 2025-07-01 11:26 ` Niklas Söderlund
2025-07-03 10:01 ` Geert Uytterhoeven
2025-07-03 22:52 ` Laurent Pinchart
2025-07-01 11:26 ` [PATCH v2 2/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J1 Niklas Söderlund
` (3 subsequent siblings)
4 siblings, 2 replies; 11+ messages in thread
From: Niklas Söderlund @ 2025-07-01 11:26 UTC (permalink / raw)
To: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Cc: Niklas Söderlund
The target to consider the dtbo file for installation is missing, add
it.
Fixes: a719915e76f2 ("arm64: dts: renesas: r8a779g3: Add Retronix R-Car V4H Sparrow Hawk board support")
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
arch/arm64/boot/dts/renesas/Makefile | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
index 677ba3aa8931..47e46ef99d36 100644
--- a/arch/arm64/boot/dts/renesas/Makefile
+++ b/arch/arm64/boot/dts/renesas/Makefile
@@ -96,6 +96,7 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g2-white-hawk-single-ard-audio-da7212.dtb
DTC_FLAGS_r8a779g3-sparrow-hawk += -Wno-spi_bus_bridge
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtb
--
2.50.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2 2/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J1
2025-07-01 11:26 [PATCH v2 0/5] arm64: dts: renesas: sparrow-hawk: Add overlays for camera sensors Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target Niklas Söderlund
@ 2025-07-01 11:26 ` Niklas Söderlund
2025-07-03 23:03 ` Laurent Pinchart
2025-07-01 11:26 ` [PATCH v2 3/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J2 Niklas Söderlund
` (2 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Niklas Söderlund @ 2025-07-01 11:26 UTC (permalink / raw)
To: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Cc: Niklas Söderlund
Add an overlay to connect an IMX219 camera sensor to the J1 connector.
The IMX219 utilizes 2 CSI-2 D-PHY lanes. This enables the video capture
pipeline behind the CSI40 Rx to be enabled to process images from the
sensor.
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
---
* Changes since v1
- Drop 'status = "okay"' property for the fixed regulators.
---
arch/arm64/boot/dts/renesas/Makefile | 3 +
...8a779g3-sparrow-hawk-camera-j1-imx219.dtso | 118 ++++++++++++++++++
2 files changed, 121 insertions(+)
create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
index 47e46ef99d36..73218f7ec9af 100644
--- a/arch/arm64/boot/dts/renesas/Makefile
+++ b/arch/arm64/boot/dts/renesas/Makefile
@@ -96,7 +96,10 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g2-white-hawk-single-ard-audio-da7212.dtb
DTC_FLAGS_r8a779g3-sparrow-hawk += -Wno-spi_bus_bridge
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
+r8a779g3-sparrow-hawk-camera-j1-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtb
r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtb
diff --git a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
new file mode 100644
index 000000000000..a9089d3a4b29
--- /dev/null
+++ b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
@@ -0,0 +1,118 @@
+// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+/*
+ * Device Tree Overlay for an IMX219 camera sensor in connector J1 on R-Car V4H
+ * ES3.0 Sparrow Hawk board.
+ *
+ * Copyright 2025 Renesas Electronics Corp.
+ * Copyright 2025 Niklas Söderlund <niklas.soderlund@ragnatech.se>
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/media/video-interfaces.h>
+
+&{/} {
+ clk_cam_j1: clk_cam_j1 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <24000000>;
+ status = "okay";
+ };
+
+ /* Page 29 / CSI_IF_CN / J1 */
+ reg_cam_j1: reg_cam_j1 {
+ compatible = "regulator-fixed";
+ regulator-name = "reg_cam_j1";
+ enable-active-high;
+ gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
+ };
+
+ reg_cam_j1_dummy: reg_cam_j1_dummy {
+ compatible = "regulator-fixed";
+ regulator-name = "reg_cam_j1_dummy";
+ };
+};
+
+&i2c1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ imx219_j1: imx219@10 {
+ compatible = "sony,imx219";
+ reg = <0x10>;
+ status = "okay";
+
+ clocks = <&clk_cam_j1>;
+
+ VANA-supply = <®_cam_j1>;
+ VDIG-supply = <®_cam_j1_dummy>;
+ VDDL-supply = <®_cam_j1_dummy>;
+
+ orientation = <2>;
+ rotation = <0>;
+
+ port {
+ imx219_j1_out: endpoint {
+ clock-noncontinuous;
+ link-frequencies = /bits/ 64 <456000000>;
+ data-lanes = <1 2>;
+ remote-endpoint = <&csi40_in>;
+ };
+ };
+ };
+};
+
+/* Page 29 / CSI_IF_CN */
+&csi40 {
+ status = "okay";
+
+ ports {
+ port {
+ csi40_in: endpoint {
+ bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
+ clock-lanes = <0>;
+ data-lanes = <1 2>;
+ remote-endpoint = <&imx219_j1_out>;
+ };
+ };
+ };
+};
+
+&isp0 {
+ status = "okay";
+};
+
+&vin00 {
+ status = "okay";
+};
+
+&vin01 {
+ status = "okay";
+};
+
+&vin02 {
+ status = "okay";
+};
+
+&vin03 {
+ status = "okay";
+};
+
+&vin04 {
+ status = "okay";
+};
+
+&vin05 {
+ status = "okay";
+};
+
+&vin06 {
+ status = "okay";
+};
+
+&vin07 {
+ status = "okay";
+};
--
2.50.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2 3/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J2
2025-07-01 11:26 [PATCH v2 0/5] arm64: dts: renesas: sparrow-hawk: Add overlays for camera sensors Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 2/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J1 Niklas Söderlund
@ 2025-07-01 11:26 ` Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 4/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J1 Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 5/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J2 Niklas Söderlund
4 siblings, 0 replies; 11+ messages in thread
From: Niklas Söderlund @ 2025-07-01 11:26 UTC (permalink / raw)
To: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Cc: Niklas Söderlund
Add an overlay to connect an IMX219 camera sensor to the J2 connector.
The IMX219 utilizes 2 CSI-2 D-PHY lanes. This enables the video capture
pipeline behind the CSI41 Rx to be enabled to process images from the
sensor.
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
---
* Changes since v1
- Drop 'status = "okay"' property for the fixed regulators.
---
arch/arm64/boot/dts/renesas/Makefile | 3 +
...8a779g3-sparrow-hawk-camera-j2-imx219.dtso | 118 ++++++++++++++++++
2 files changed, 121 insertions(+)
create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx219.dtso
diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
index 73218f7ec9af..12803c4fbc80 100644
--- a/arch/arm64/boot/dts/renesas/Makefile
+++ b/arch/arm64/boot/dts/renesas/Makefile
@@ -97,9 +97,12 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g2-white-hawk-single-ard-audio-da7212.dtb
DTC_FLAGS_r8a779g3-sparrow-hawk += -Wno-spi_bus_bridge
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
r8a779g3-sparrow-hawk-camera-j1-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtb
+r8a779g3-sparrow-hawk-camera-j2-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j2-imx219.dtbo
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx219.dtb
r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtb
diff --git a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx219.dtso b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx219.dtso
new file mode 100644
index 000000000000..ce60689deae5
--- /dev/null
+++ b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx219.dtso
@@ -0,0 +1,118 @@
+// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+/*
+ * Device Tree Overlay for an IMX219 camera sensor in connector J2 on R-Car V4H
+ * ES3.0 Sparrow Hawk board.
+ *
+ * Copyright 2025 Renesas Electronics Corp.
+ * Copyright 2025 Niklas Söderlund <niklas.soderlund@ragnatech.se>
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/media/video-interfaces.h>
+
+&{/} {
+ clk_cam_j2: clk_cam_j2 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <24000000>;
+ status = "okay";
+ };
+
+ /* Page 29 / CSI_IF_CN / J2 */
+ reg_cam_j2: reg_cam_j2 {
+ compatible = "regulator-fixed";
+ regulator-name = "reg_cam_j2";
+ enable-active-high;
+ gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>;
+ };
+
+ reg_cam_j2_dummy: reg_cam_j2_dummy {
+ compatible = "regulator-fixed";
+ regulator-name = "reg_cam_j2_dummy";
+ };
+};
+
+&i2c2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ imx219_j2: imx219@10 {
+ compatible = "sony,imx219";
+ reg = <0x10>;
+ status = "okay";
+
+ clocks = <&clk_cam_j2>;
+
+ VANA-supply = <®_cam_j2>;
+ VDIG-supply = <®_cam_j2_dummy>;
+ VDDL-supply = <®_cam_j2_dummy>;
+
+ orientation = <2>;
+ rotation = <0>;
+
+ port {
+ imx219_j2_out: endpoint {
+ clock-noncontinuous;
+ link-frequencies = /bits/ 64 <456000000>;
+ data-lanes = <1 2>;
+ remote-endpoint = <&csi41_in>;
+ };
+ };
+ };
+};
+
+/* Page 29 / CSI_IF_CN */
+&csi41 {
+ status = "okay";
+
+ ports {
+ port {
+ csi41_in: endpoint {
+ bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
+ clock-lanes = <0>;
+ data-lanes = <1 2>;
+ remote-endpoint = <&imx219_j2_out>;
+ };
+ };
+ };
+};
+
+&isp1 {
+ status = "okay";
+};
+
+&vin08 {
+ status = "okay";
+};
+
+&vin09 {
+ status = "okay";
+};
+
+&vin10 {
+ status = "okay";
+};
+
+&vin11 {
+ status = "okay";
+};
+
+&vin12 {
+ status = "okay";
+};
+
+&vin13 {
+ status = "okay";
+};
+
+&vin14 {
+ status = "okay";
+};
+
+&vin15 {
+ status = "okay";
+};
--
2.50.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2 4/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J1
2025-07-01 11:26 [PATCH v2 0/5] arm64: dts: renesas: sparrow-hawk: Add overlays for camera sensors Niklas Söderlund
` (2 preceding siblings ...)
2025-07-01 11:26 ` [PATCH v2 3/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J2 Niklas Söderlund
@ 2025-07-01 11:26 ` Niklas Söderlund
2025-07-03 23:04 ` Laurent Pinchart
2025-07-01 11:26 ` [PATCH v2 5/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J2 Niklas Söderlund
4 siblings, 1 reply; 11+ messages in thread
From: Niklas Söderlund @ 2025-07-01 11:26 UTC (permalink / raw)
To: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Cc: Niklas Söderlund
Add an overlay to connect an IMX462 camera sensor to the J1 connector.
The IMX462 utilizes 4 CSI-2 D-PHY lanes. This enables the video capture
pipeline behind the CSI40 Rx to be enabled to process images from the
sensor.
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
---
* Changes since v1
- Drop 'status = "okay"' property for the fixed regulators.
---
arch/arm64/boot/dts/renesas/Makefile | 3 +
...8a779g3-sparrow-hawk-camera-j1-imx462.dtso | 119 ++++++++++++++++++
2 files changed, 122 insertions(+)
create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso
diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
index 12803c4fbc80..79d174077ddc 100644
--- a/arch/arm64/boot/dts/renesas/Makefile
+++ b/arch/arm64/boot/dts/renesas/Makefile
@@ -97,10 +97,13 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g2-white-hawk-single-ard-audio-da7212.dtb
DTC_FLAGS_r8a779g3-sparrow-hawk += -Wno-spi_bus_bridge
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx462.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
r8a779g3-sparrow-hawk-camera-j1-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtb
+r8a779g3-sparrow-hawk-camera-j1-imx462-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx462.dtbo
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx462.dtb
r8a779g3-sparrow-hawk-camera-j2-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j2-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx219.dtb
r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
diff --git a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso
new file mode 100644
index 000000000000..066e9f8f0add
--- /dev/null
+++ b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso
@@ -0,0 +1,119 @@
+// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+/*
+ * Device Tree Overlay for an IMX462 camera sensor in connector J1 on R-Car V4H
+ * ES3.0 Sparrow Hawk board.
+ *
+ * Copyright 2025 Renesas Electronics Corp.
+ * Copyright 2025 Niklas Söderlund <niklas.soderlund@ragnatech.se>
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/media/video-interfaces.h>
+
+&{/} {
+ clk_cam_j1: clk_cam_j1 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <24000000>;
+ status = "okay";
+ };
+
+ /* Page 29 / CSI_IF_CN / J1 */
+ reg_cam_j1: reg_cam_j1 {
+ compatible = "regulator-fixed";
+ regulator-name = "reg_cam_j1";
+ enable-active-high;
+ gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
+ };
+
+ reg_cam_j1_dummy: reg_cam_j1_dummy {
+ compatible = "regulator-fixed";
+ regulator-name = "reg_cam_j1_dummy";
+ };
+};
+
+&i2c1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ imx462_j1: imx462@1a {
+ compatible = "sony,imx462lqr";
+ reg = <0x1a>;
+ status = "okay";
+
+ clocks = <&clk_cam_j1>;
+ clock-names = "xclk";
+ clock-frequency = <37125000>;
+
+ vdddo-supply = <®_cam_j1>;
+ vdda-supply = <®_cam_j1_dummy>;
+ vddd-supply = <®_cam_j1_dummy>;
+
+ orientation = <2>;
+ rotation = <0>;
+
+ port {
+ imx462_j1_out: endpoint {
+ link-frequencies = /bits/ 64 <222750000 148500000>;
+ data-lanes = <1 2 3 4>;
+ remote-endpoint = <&csi40_in>;
+ };
+ };
+ };
+};
+
+/* Page 29 / CSI_IF_CN */
+&csi40 {
+ status = "okay";
+
+ ports {
+ port {
+ csi40_in: endpoint {
+ bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
+ clock-lanes = <0>;
+ data-lanes = <1 2 3 4>;
+ remote-endpoint = <&imx462_j1_out>;
+ };
+ };
+ };
+};
+
+&isp0 {
+ status = "okay";
+};
+
+&vin00 {
+ status = "okay";
+};
+
+&vin01 {
+ status = "okay";
+};
+
+&vin02 {
+ status = "okay";
+};
+
+&vin03 {
+ status = "okay";
+};
+
+&vin04 {
+ status = "okay";
+};
+
+&vin05 {
+ status = "okay";
+};
+
+&vin06 {
+ status = "okay";
+};
+
+&vin07 {
+ status = "okay";
+};
--
2.50.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2 5/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J2
2025-07-01 11:26 [PATCH v2 0/5] arm64: dts: renesas: sparrow-hawk: Add overlays for camera sensors Niklas Söderlund
` (3 preceding siblings ...)
2025-07-01 11:26 ` [PATCH v2 4/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J1 Niklas Söderlund
@ 2025-07-01 11:26 ` Niklas Söderlund
4 siblings, 0 replies; 11+ messages in thread
From: Niklas Söderlund @ 2025-07-01 11:26 UTC (permalink / raw)
To: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Cc: Niklas Söderlund
Add an overlay to connect an IMX462 camera sensor to the J2 connector.
The IMX462 utilizes 4 CSI-2 D-PHY lanes. This enables the video capture
pipeline behind the CSI41 Rx to be enabled to process images from the
sensor.
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
---
* Changes since v1
- Drop 'status = "okay"' property for the fixed regulators.
---
arch/arm64/boot/dts/renesas/Makefile | 3 +
...8a779g3-sparrow-hawk-camera-j2-imx462.dtso | 119 ++++++++++++++++++
2 files changed, 122 insertions(+)
create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx462.dtso
diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
index 79d174077ddc..837e084cc07c 100644
--- a/arch/arm64/boot/dts/renesas/Makefile
+++ b/arch/arm64/boot/dts/renesas/Makefile
@@ -99,6 +99,7 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx462.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx219.dtbo
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx462.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
r8a779g3-sparrow-hawk-camera-j1-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtb
@@ -106,6 +107,8 @@ r8a779g3-sparrow-hawk-camera-j1-imx462-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx462.dtb
r8a779g3-sparrow-hawk-camera-j2-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j2-imx219.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx219.dtb
+r8a779g3-sparrow-hawk-camera-j2-imx462-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j2-imx462.dtbo
+dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx462.dtb
r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtb
diff --git a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx462.dtso b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx462.dtso
new file mode 100644
index 000000000000..1a66fc44274a
--- /dev/null
+++ b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx462.dtso
@@ -0,0 +1,119 @@
+// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+/*
+ * Device Tree Overlay for an IMX462 camera sensor in connector J2 on R-Car V4H
+ * ES3.0 Sparrow Hawk board.
+ *
+ * Copyright 2025 Renesas Electronics Corp.
+ * Copyright 2025 Niklas Söderlund <niklas.soderlund@ragnatech.se>
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/media/video-interfaces.h>
+
+&{/} {
+ clk_cam_j2: clk_cam_j2 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <24000000>;
+ status = "okay";
+ };
+
+ /* Page 29 / CSI_IF_CN / J2 */
+ reg_cam_j2: reg_cam_j2 {
+ compatible = "regulator-fixed";
+ regulator-name = "reg_cam_j2";
+ enable-active-high;
+ gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>;
+ };
+
+ reg_cam_j2_dummy: reg_cam_j2_dummy {
+ compatible = "regulator-fixed";
+ regulator-name = "reg_cam_j2_dummy";
+ };
+};
+
+&i2c2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ imx462_j2: imx462@1a {
+ compatible = "sony,imx462lqr";
+ reg = <0x1a>;
+ status = "okay";
+
+ clocks = <&clk_cam_j2>;
+ clock-names = "xclk";
+ clock-frequency = <37125000>;
+
+ vdddo-supply = <®_cam_j2>;
+ vdda-supply = <®_cam_j2_dummy>;
+ vddd-supply = <®_cam_j2_dummy>;
+
+ orientation = <2>;
+ rotation = <0>;
+
+ port {
+ imx462_j2_out: endpoint {
+ link-frequencies = /bits/ 64 <222750000 148500000>;
+ data-lanes = <1 2 3 4>;
+ remote-endpoint = <&csi41_in>;
+ };
+ };
+ };
+};
+
+/* Page 29 / CSI_IF_CN */
+&csi41 {
+ status = "okay";
+
+ ports {
+ port {
+ csi41_in: endpoint {
+ bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
+ clock-lanes = <0>;
+ data-lanes = <1 2 3 4>;
+ remote-endpoint = <&imx462_j2_out>;
+ };
+ };
+ };
+};
+
+&isp1 {
+ status = "okay";
+};
+
+&vin08 {
+ status = "okay";
+};
+
+&vin09 {
+ status = "okay";
+};
+
+&vin10 {
+ status = "okay";
+};
+
+&vin11 {
+ status = "okay";
+};
+
+&vin12 {
+ status = "okay";
+};
+
+&vin13 {
+ status = "okay";
+};
+
+&vin14 {
+ status = "okay";
+};
+
+&vin15 {
+ status = "okay";
+};
--
2.50.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target
2025-07-01 11:26 ` [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target Niklas Söderlund
@ 2025-07-03 10:01 ` Geert Uytterhoeven
2025-07-03 22:52 ` Laurent Pinchart
1 sibling, 0 replies; 11+ messages in thread
From: Geert Uytterhoeven @ 2025-07-03 10:01 UTC (permalink / raw)
To: Niklas Söderlund
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Marek Vasut,
linux-renesas-soc, devicetree
On Tue, 1 Jul 2025 at 13:26, Niklas Söderlund
<niklas.soderlund+renesas@ragnatech.se> wrote:
> The target to consider the dtbo file for installation is missing, add
> it.
>
> Fixes: a719915e76f2 ("arm64: dts: renesas: r8a779g3: Add Retronix R-Car V4H Sparrow Hawk board support")
> Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
i.e. will queue in renesas-devel for v6.17.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target
2025-07-01 11:26 ` [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target Niklas Söderlund
2025-07-03 10:01 ` Geert Uytterhoeven
@ 2025-07-03 22:52 ` Laurent Pinchart
1 sibling, 0 replies; 11+ messages in thread
From: Laurent Pinchart @ 2025-07-03 22:52 UTC (permalink / raw)
To: Niklas Söderlund
Cc: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Hi Niklas,
Thank you for the patch.
On Tue, Jul 01, 2025 at 01:26:08PM +0200, Niklas Söderlund wrote:
> The target to consider the dtbo file for installation is missing, add
> it.
>
> Fixes: a719915e76f2 ("arm64: dts: renesas: r8a779g3: Add Retronix R-Car V4H Sparrow Hawk board support")
> Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
> ---
> arch/arm64/boot/dts/renesas/Makefile | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
> index 677ba3aa8931..47e46ef99d36 100644
> --- a/arch/arm64/boot/dts/renesas/Makefile
> +++ b/arch/arm64/boot/dts/renesas/Makefile
> @@ -96,6 +96,7 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g2-white-hawk-single-ard-audio-da7212.dtb
>
> DTC_FLAGS_r8a779g3-sparrow-hawk += -Wno-spi_bus_bridge
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
> +dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
> r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtb
>
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 2/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J1
2025-07-01 11:26 ` [PATCH v2 2/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J1 Niklas Söderlund
@ 2025-07-03 23:03 ` Laurent Pinchart
2025-07-04 9:52 ` Niklas Söderlund
0 siblings, 1 reply; 11+ messages in thread
From: Laurent Pinchart @ 2025-07-03 23:03 UTC (permalink / raw)
To: Niklas Söderlund
Cc: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Hi Niklas,
Thank you for the patch.
The comments below apply to 3/5 where applicable.
On Tue, Jul 01, 2025 at 01:26:09PM +0200, Niklas Söderlund wrote:
> Add an overlay to connect an IMX219 camera sensor to the J1 connector.
> The IMX219 utilizes 2 CSI-2 D-PHY lanes. This enables the video capture
> pipeline behind the CSI40 Rx to be enabled to process images from the
> sensor.
>
> Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> ---
> * Changes since v1
> - Drop 'status = "okay"' property for the fixed regulators.
> ---
> arch/arm64/boot/dts/renesas/Makefile | 3 +
> ...8a779g3-sparrow-hawk-camera-j1-imx219.dtso | 118 ++++++++++++++++++
> 2 files changed, 121 insertions(+)
> create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
>
> diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
> index 47e46ef99d36..73218f7ec9af 100644
> --- a/arch/arm64/boot/dts/renesas/Makefile
> +++ b/arch/arm64/boot/dts/renesas/Makefile
> @@ -96,7 +96,10 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g2-white-hawk-single-ard-audio-da7212.dtb
>
> DTC_FLAGS_r8a779g3-sparrow-hawk += -Wno-spi_bus_bridge
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
> +dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
> +r8a779g3-sparrow-hawk-camera-j1-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
> +dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtb
> r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtb
>
> diff --git a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
> new file mode 100644
> index 000000000000..a9089d3a4b29
> --- /dev/null
> +++ b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
> @@ -0,0 +1,118 @@
> +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +/*
> + * Device Tree Overlay for an IMX219 camera sensor in connector J1 on R-Car V4H
> + * ES3.0 Sparrow Hawk board.
> + *
> + * Copyright 2025 Renesas Electronics Corp.
> + * Copyright 2025 Niklas Söderlund <niklas.soderlund@ragnatech.se>
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/media/video-interfaces.h>
> +
> +&{/} {
> + clk_cam_j1: clk_cam_j1 {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <24000000>;
> + status = "okay";
No need for status.
> + };
> +
> + /* Page 29 / CSI_IF_CN / J1 */
> + reg_cam_j1: reg_cam_j1 {
> + compatible = "regulator-fixed";
> + regulator-name = "reg_cam_j1";
> + enable-active-high;
> + gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
No need for a pinctrl entry ?
> + };
> +
> + reg_cam_j1_dummy: reg_cam_j1_dummy {
> + compatible = "regulator-fixed";
> + regulator-name = "reg_cam_j1_dummy";
> + };
> +};
> +
> +&i2c1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + status = "okay";
> +
> + imx219_j1: imx219@10 {
cam@10, and drop the label (it's unused).
> + compatible = "sony,imx219";
> + reg = <0x10>;
> + status = "okay";
Drop status.
> +
> + clocks = <&clk_cam_j1>;
> +
> + VANA-supply = <®_cam_j1>;
> + VDIG-supply = <®_cam_j1_dummy>;
> + VDDL-supply = <®_cam_j1_dummy>;
You could use the same regulator for the three supplies, and drop
reg_cam_j1_dummy.
> +
> + orientation = <2>;
> + rotation = <0>;
> +
> + port {
> + imx219_j1_out: endpoint {
> + clock-noncontinuous;
> + link-frequencies = /bits/ 64 <456000000>;
> + data-lanes = <1 2>;
> + remote-endpoint = <&csi40_in>;
> + };
> + };
> + };
> +};
> +
> +/* Page 29 / CSI_IF_CN */
> +&csi40 {
> + status = "okay";
> +
> + ports {
> + port {
> + csi40_in: endpoint {
> + bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
> + clock-lanes = <0>;
> + data-lanes = <1 2>;
> + remote-endpoint = <&imx219_j1_out>;
> + };
> + };
> + };
> +};
> +
> +&isp0 {
> + status = "okay";
> +};
> +
> +&vin00 {
> + status = "okay";
> +};
> +
> +&vin01 {
> + status = "okay";
> +};
> +
> +&vin02 {
> + status = "okay";
> +};
> +
> +&vin03 {
> + status = "okay";
> +};
> +
> +&vin04 {
> + status = "okay";
> +};
> +
> +&vin05 {
> + status = "okay";
> +};
> +
> +&vin06 {
> + status = "okay";
> +};
> +
> +&vin07 {
> + status = "okay";
> +};
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 4/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J1
2025-07-01 11:26 ` [PATCH v2 4/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J1 Niklas Söderlund
@ 2025-07-03 23:04 ` Laurent Pinchart
0 siblings, 0 replies; 11+ messages in thread
From: Laurent Pinchart @ 2025-07-03 23:04 UTC (permalink / raw)
To: Niklas Söderlund
Cc: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Hi Niklas,
Comments on 2/5 apply here too, as well as on 5/5.
On Tue, Jul 01, 2025 at 01:26:11PM +0200, Niklas Söderlund wrote:
> Add an overlay to connect an IMX462 camera sensor to the J1 connector.
> The IMX462 utilizes 4 CSI-2 D-PHY lanes. This enables the video capture
> pipeline behind the CSI40 Rx to be enabled to process images from the
> sensor.
>
> Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> ---
> * Changes since v1
> - Drop 'status = "okay"' property for the fixed regulators.
> ---
> arch/arm64/boot/dts/renesas/Makefile | 3 +
> ...8a779g3-sparrow-hawk-camera-j1-imx462.dtso | 119 ++++++++++++++++++
> 2 files changed, 122 insertions(+)
> create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso
>
> diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
> index 12803c4fbc80..79d174077ddc 100644
> --- a/arch/arm64/boot/dts/renesas/Makefile
> +++ b/arch/arm64/boot/dts/renesas/Makefile
> @@ -97,10 +97,13 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g2-white-hawk-single-ard-audio-da7212.dtb
> DTC_FLAGS_r8a779g3-sparrow-hawk += -Wno-spi_bus_bridge
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
> +dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx462.dtbo
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx219.dtbo
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
> r8a779g3-sparrow-hawk-camera-j1-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtb
> +r8a779g3-sparrow-hawk-camera-j1-imx462-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx462.dtbo
> +dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx462.dtb
> r8a779g3-sparrow-hawk-camera-j2-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j2-imx219.dtbo
> dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j2-imx219.dtb
> r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
> diff --git a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso
> new file mode 100644
> index 000000000000..066e9f8f0add
> --- /dev/null
> +++ b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx462.dtso
> @@ -0,0 +1,119 @@
> +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +/*
> + * Device Tree Overlay for an IMX462 camera sensor in connector J1 on R-Car V4H
> + * ES3.0 Sparrow Hawk board.
> + *
> + * Copyright 2025 Renesas Electronics Corp.
> + * Copyright 2025 Niklas Söderlund <niklas.soderlund@ragnatech.se>
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/media/video-interfaces.h>
> +
> +&{/} {
> + clk_cam_j1: clk_cam_j1 {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <24000000>;
> + status = "okay";
> + };
> +
> + /* Page 29 / CSI_IF_CN / J1 */
> + reg_cam_j1: reg_cam_j1 {
> + compatible = "regulator-fixed";
> + regulator-name = "reg_cam_j1";
> + enable-active-high;
> + gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
> + };
> +
> + reg_cam_j1_dummy: reg_cam_j1_dummy {
> + compatible = "regulator-fixed";
> + regulator-name = "reg_cam_j1_dummy";
> + };
> +};
> +
> +&i2c1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + status = "okay";
> +
> + imx462_j1: imx462@1a {
> + compatible = "sony,imx462lqr";
> + reg = <0x1a>;
> + status = "okay";
> +
> + clocks = <&clk_cam_j1>;
> + clock-names = "xclk";
> + clock-frequency = <37125000>;
> +
> + vdddo-supply = <®_cam_j1>;
> + vdda-supply = <®_cam_j1_dummy>;
> + vddd-supply = <®_cam_j1_dummy>;
> +
> + orientation = <2>;
> + rotation = <0>;
> +
> + port {
> + imx462_j1_out: endpoint {
> + link-frequencies = /bits/ 64 <222750000 148500000>;
> + data-lanes = <1 2 3 4>;
> + remote-endpoint = <&csi40_in>;
> + };
> + };
> + };
> +};
> +
> +/* Page 29 / CSI_IF_CN */
> +&csi40 {
> + status = "okay";
> +
> + ports {
> + port {
> + csi40_in: endpoint {
> + bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
> + clock-lanes = <0>;
> + data-lanes = <1 2 3 4>;
> + remote-endpoint = <&imx462_j1_out>;
> + };
> + };
> + };
> +};
> +
> +&isp0 {
> + status = "okay";
> +};
> +
> +&vin00 {
> + status = "okay";
> +};
> +
> +&vin01 {
> + status = "okay";
> +};
> +
> +&vin02 {
> + status = "okay";
> +};
> +
> +&vin03 {
> + status = "okay";
> +};
> +
> +&vin04 {
> + status = "okay";
> +};
> +
> +&vin05 {
> + status = "okay";
> +};
> +
> +&vin06 {
> + status = "okay";
> +};
> +
> +&vin07 {
> + status = "okay";
> +};
> --
> 2.50.0
>
>
--
Regards,
Laurent Pinchart
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 2/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J1
2025-07-03 23:03 ` Laurent Pinchart
@ 2025-07-04 9:52 ` Niklas Söderlund
0 siblings, 0 replies; 11+ messages in thread
From: Niklas Söderlund @ 2025-07-04 9:52 UTC (permalink / raw)
To: Laurent Pinchart
Cc: Geert Uytterhoeven, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Marek Vasut, linux-renesas-soc, devicetree
Hello Laurent,
Thanks for your time to review this work.
On 2025-07-04 02:03:19 +0300, Laurent Pinchart wrote:
> Hi Niklas,
>
> Thank you for the patch.
>
> The comments below apply to 3/5 where applicable.
>
> On Tue, Jul 01, 2025 at 01:26:09PM +0200, Niklas Söderlund wrote:
> > Add an overlay to connect an IMX219 camera sensor to the J1 connector.
> > The IMX219 utilizes 2 CSI-2 D-PHY lanes. This enables the video capture
> > pipeline behind the CSI40 Rx to be enabled to process images from the
> > sensor.
> >
> > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> > ---
> > * Changes since v1
> > - Drop 'status = "okay"' property for the fixed regulators.
> > ---
> > arch/arm64/boot/dts/renesas/Makefile | 3 +
> > ...8a779g3-sparrow-hawk-camera-j1-imx219.dtso | 118 ++++++++++++++++++
> > 2 files changed, 121 insertions(+)
> > create mode 100644 arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
> >
> > diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
> > index 47e46ef99d36..73218f7ec9af 100644
> > --- a/arch/arm64/boot/dts/renesas/Makefile
> > +++ b/arch/arm64/boot/dts/renesas/Makefile
> > @@ -96,7 +96,10 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g2-white-hawk-single-ard-audio-da7212.dtb
> >
> > DTC_FLAGS_r8a779g3-sparrow-hawk += -Wno-spi_bus_bridge
> > dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk.dtb
> > +dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
> > dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtbo
> > +r8a779g3-sparrow-hawk-camera-j1-imx219-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-camera-j1-imx219.dtbo
> > +dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-camera-j1-imx219.dtb
> > r8a779g3-sparrow-hawk-fan-pwm-dtbs := r8a779g3-sparrow-hawk.dtb r8a779g3-sparrow-hawk-fan-pwm.dtbo
> > dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g3-sparrow-hawk-fan-pwm.dtb
> >
> > diff --git a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
> > new file mode 100644
> > index 000000000000..a9089d3a4b29
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j1-imx219.dtso
> > @@ -0,0 +1,118 @@
> > +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +/*
> > + * Device Tree Overlay for an IMX219 camera sensor in connector J1 on R-Car V4H
> > + * ES3.0 Sparrow Hawk board.
> > + *
> > + * Copyright 2025 Renesas Electronics Corp.
> > + * Copyright 2025 Niklas Söderlund <niklas.soderlund@ragnatech.se>
> > + */
> > +
> > +/dts-v1/;
> > +/plugin/;
> > +
> > +#include <dt-bindings/gpio/gpio.h>
> > +#include <dt-bindings/media/video-interfaces.h>
> > +
> > +&{/} {
> > + clk_cam_j1: clk_cam_j1 {
> > + compatible = "fixed-clock";
> > + #clock-cells = <0>;
> > + clock-frequency = <24000000>;
> > + status = "okay";
>
> No need for status.
>
> > + };
> > +
> > + /* Page 29 / CSI_IF_CN / J1 */
> > + reg_cam_j1: reg_cam_j1 {
> > + compatible = "regulator-fixed";
> > + regulator-name = "reg_cam_j1";
> > + enable-active-high;
> > + gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
>
> No need for a pinctrl entry ?
As far as I can tell, no. No other user of gpio in the renesas DTS sets
pinctrl for gpio. Inspecting the pinmux configuration further makes me
believe this is correct.
Without this overlay loaded
# grep gpio /sys/kernel/debug/pinctrl/e6050000.pinctrl-sh-pfc/pinmux-pins
Format: pin (name): mux_owner gpio_owner hog?
pin 65 (GP_2_1): (MUX UNCLAIMED) e6058180.gpio:561
pin 107 (GP_3_11): (MUX UNCLAIMED) e6058980.gpio:591
pin 149 (GP_4_21): (MUX UNCLAIMED) e6060180.gpio:631
pin 150 (GP_4_22): (MUX UNCLAIMED) e6060180.gpio:632
pin 234 (GP_7_10): (MUX UNCLAIMED) e6061980.gpio:687
pin 269 (GP_8_13): (MUX UNCLAIMED) e6068180.gpio:711
With this overlay loaded.
# grep gpio /sys/kernel/debug/pinctrl/e6050000.pinctrl-sh-pfc/pinmux-pins
Format: pin (name): mux_owner gpio_owner hog?
pin 1 (GP_0_1): (MUX UNCLAIMED) e6050180.gpio:513
pin 65 (GP_2_1): (MUX UNCLAIMED) e6058180.gpio:561
pin 107 (GP_3_11): (MUX UNCLAIMED) e6058980.gpio:591
pin 149 (GP_4_21): (MUX UNCLAIMED) e6060180.gpio:631
pin 150 (GP_4_22): (MUX UNCLAIMED) e6060180.gpio:632
pin 234 (GP_7_10): (MUX UNCLAIMED) e6061980.gpio:687
pin 269 (GP_8_13): (MUX UNCLAIMED) e6068180.gpio:711
The GP_0_1 pin seems to behave just like the other gpio pins in the system.
I agree with all other comments, thanks!
>
> > + };
> > +
> > + reg_cam_j1_dummy: reg_cam_j1_dummy {
> > + compatible = "regulator-fixed";
> > + regulator-name = "reg_cam_j1_dummy";
> > + };
> > +};
> > +
> > +&i2c1 {
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + status = "okay";
> > +
> > + imx219_j1: imx219@10 {
>
> cam@10, and drop the label (it's unused).
>
> > + compatible = "sony,imx219";
> > + reg = <0x10>;
> > + status = "okay";
>
> Drop status.
>
> > +
> > + clocks = <&clk_cam_j1>;
> > +
> > + VANA-supply = <®_cam_j1>;
> > + VDIG-supply = <®_cam_j1_dummy>;
> > + VDDL-supply = <®_cam_j1_dummy>;
>
> You could use the same regulator for the three supplies, and drop
> reg_cam_j1_dummy.
>
> > +
> > + orientation = <2>;
> > + rotation = <0>;
> > +
> > + port {
> > + imx219_j1_out: endpoint {
> > + clock-noncontinuous;
> > + link-frequencies = /bits/ 64 <456000000>;
> > + data-lanes = <1 2>;
> > + remote-endpoint = <&csi40_in>;
> > + };
> > + };
> > + };
> > +};
> > +
> > +/* Page 29 / CSI_IF_CN */
> > +&csi40 {
> > + status = "okay";
> > +
> > + ports {
> > + port {
> > + csi40_in: endpoint {
> > + bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
> > + clock-lanes = <0>;
> > + data-lanes = <1 2>;
> > + remote-endpoint = <&imx219_j1_out>;
> > + };
> > + };
> > + };
> > +};
> > +
> > +&isp0 {
> > + status = "okay";
> > +};
> > +
> > +&vin00 {
> > + status = "okay";
> > +};
> > +
> > +&vin01 {
> > + status = "okay";
> > +};
> > +
> > +&vin02 {
> > + status = "okay";
> > +};
> > +
> > +&vin03 {
> > + status = "okay";
> > +};
> > +
> > +&vin04 {
> > + status = "okay";
> > +};
> > +
> > +&vin05 {
> > + status = "okay";
> > +};
> > +
> > +&vin06 {
> > + status = "okay";
> > +};
> > +
> > +&vin07 {
> > + status = "okay";
> > +};
>
> --
> Regards,
>
> Laurent Pinchart
--
Kind Regards,
Niklas Söderlund
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2025-07-04 9:52 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-01 11:26 [PATCH v2 0/5] arm64: dts: renesas: sparrow-hawk: Add overlays for camera sensors Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 1/5] arm64: dts: renesas: r8a779g3-sparrow-hawk-fan-pwm: Add missing install target Niklas Söderlund
2025-07-03 10:01 ` Geert Uytterhoeven
2025-07-03 22:52 ` Laurent Pinchart
2025-07-01 11:26 ` [PATCH v2 2/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J1 Niklas Söderlund
2025-07-03 23:03 ` Laurent Pinchart
2025-07-04 9:52 ` Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 3/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX219 on J2 Niklas Söderlund
2025-07-01 11:26 ` [PATCH v2 4/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J1 Niklas Söderlund
2025-07-03 23:04 ` Laurent Pinchart
2025-07-01 11:26 ` [PATCH v2 5/5] arm64: dts: renesas: sparrow-hawk: Add overlay for IMX462 on J2 Niklas Söderlund
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).