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