xref: /linux/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk-camera-j2-imx462.dtso (revision 4f38da1f027ea2c9f01bb71daa7a299c191b6940)
1// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2/*
3 * Device Tree Overlay for an IMX462 camera sensor on connector J2 on R-Car V4H
4 * ES3.0 Sparrow Hawk board.
5 *
6 * Copyright 2025 Renesas Electronics Corp.
7 * Copyright 2025 Niklas Söderlund <niklas.soderlund@ragnatech.se>
8 */
9
10/dts-v1/;
11/plugin/;
12
13#include <dt-bindings/gpio/gpio.h>
14#include <dt-bindings/media/video-interfaces.h>
15
16&{/} {
17	clk_cam_j2: clk-cam-j2 {
18		compatible = "fixed-clock";
19		#clock-cells = <0>;
20		clock-frequency = <37125000>;
21	};
22
23	/* Page 29 / CSI_IF_CN / J2 */
24	reg_cam_j2: reg-cam-j2 {
25		compatible = "regulator-fixed";
26		regulator-name = "cam-J2";
27		enable-active-high;
28		gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>;
29	};
30};
31
32&i2c2 {
33	#address-cells = <1>;
34	#size-cells = <0>;
35	status = "okay";
36
37	cam@1a {
38		compatible = "sony,imx462lqr";
39		reg = <0x1a>;
40
41		clocks = <&clk_cam_j2>;
42		clock-names = "xclk";
43		clock-frequency = <37125000>;
44
45		vdddo-supply = <&reg_cam_j2>;
46		vdda-supply = <&reg_cam_j2>;
47		vddd-supply = <&reg_cam_j2>;
48
49		orientation = <2>;
50		rotation = <0>;
51
52		port {
53			imx462_j2_out: endpoint {
54				link-frequencies = /bits/ 64 <222750000 148500000>;
55				data-lanes = <1 2 3 4>;
56				remote-endpoint = <&csi41_in>;
57			};
58		};
59	};
60};
61
62/* Page 29 / CSI_IF_CN */
63&csi41 {
64	status = "okay";
65
66	ports {
67		#address-cells = <1>;
68		#size-cells = <0>;
69
70		port@0 {
71			reg = <0>;
72
73			csi41_in: endpoint {
74				bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
75				clock-lanes = <0>;
76				data-lanes = <1 2 3 4>;
77				remote-endpoint = <&imx462_j2_out>;
78			};
79		};
80	};
81};
82
83&isp1 {
84	status = "okay";
85};
86
87&vin08 {
88	status = "okay";
89};
90
91&vin09 {
92	status = "okay";
93};
94
95&vin10 {
96	status = "okay";
97};
98
99&vin11 {
100	status = "okay";
101};
102
103&vin12 {
104	status = "okay";
105};
106
107&vin13 {
108	status = "okay";
109};
110
111&vin14 {
112	status = "okay";
113};
114
115&vin15 {
116	status = "okay";
117};
118