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