1*84943d6fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*84943d6fSEmmanuel Vadot/* 3*84943d6fSEmmanuel Vadot * Copyright 2023 Gateworks Corporation 4*84943d6fSEmmanuel Vadot */ 5*84943d6fSEmmanuel Vadot 6*84943d6fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 7*84943d6fSEmmanuel Vadot 8*84943d6fSEmmanuel Vadot#include "imx8mp-pinfunc.h" 9*84943d6fSEmmanuel Vadot 10*84943d6fSEmmanuel Vadot/dts-v1/; 11*84943d6fSEmmanuel Vadot/plugin/; 12*84943d6fSEmmanuel Vadot 13*84943d6fSEmmanuel Vadot&{/} { 14*84943d6fSEmmanuel Vadot compatible = "gw,imx8mp-gw74xx", "fsl,imx8mp"; 15*84943d6fSEmmanuel Vadot 16*84943d6fSEmmanuel Vadot reg_cam: regulator-cam { 17*84943d6fSEmmanuel Vadot pinctrl-names = "default"; 18*84943d6fSEmmanuel Vadot pinctrl-0 = <&pinctrl_reg_cam>; 19*84943d6fSEmmanuel Vadot compatible = "regulator-fixed"; 20*84943d6fSEmmanuel Vadot regulator-name = "reg_cam"; 21*84943d6fSEmmanuel Vadot gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>; 22*84943d6fSEmmanuel Vadot enable-active-high; 23*84943d6fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 24*84943d6fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 25*84943d6fSEmmanuel Vadot }; 26*84943d6fSEmmanuel Vadot 27*84943d6fSEmmanuel Vadot cam24m: cam24m { 28*84943d6fSEmmanuel Vadot compatible = "fixed-clock"; 29*84943d6fSEmmanuel Vadot #clock-cells = <0>; 30*84943d6fSEmmanuel Vadot clock-frequency = <24000000>; 31*84943d6fSEmmanuel Vadot clock-output-names = "cam24m"; 32*84943d6fSEmmanuel Vadot }; 33*84943d6fSEmmanuel Vadot}; 34*84943d6fSEmmanuel Vadot 35*84943d6fSEmmanuel Vadot&i2c4 { 36*84943d6fSEmmanuel Vadot #address-cells = <1>; 37*84943d6fSEmmanuel Vadot #size-cells = <0>; 38*84943d6fSEmmanuel Vadot 39*84943d6fSEmmanuel Vadot imx219: sensor@10 { 40*84943d6fSEmmanuel Vadot compatible = "sony,imx219"; 41*84943d6fSEmmanuel Vadot reg = <0x10>; 42*84943d6fSEmmanuel Vadot clocks = <&cam24m>; 43*84943d6fSEmmanuel Vadot VDIG-supply = <®_cam>; 44*84943d6fSEmmanuel Vadot 45*84943d6fSEmmanuel Vadot port { 46*84943d6fSEmmanuel Vadot /* MIPI CSI-2 bus endpoint */ 47*84943d6fSEmmanuel Vadot imx219_to_mipi_csi2: endpoint { 48*84943d6fSEmmanuel Vadot remote-endpoint = <&mipi_csi_0_in>; 49*84943d6fSEmmanuel Vadot clock-lanes = <0>; 50*84943d6fSEmmanuel Vadot data-lanes = <1 2>; 51*84943d6fSEmmanuel Vadot link-frequencies = /bits/ 64 <456000000>; 52*84943d6fSEmmanuel Vadot }; 53*84943d6fSEmmanuel Vadot }; 54*84943d6fSEmmanuel Vadot }; 55*84943d6fSEmmanuel Vadot}; 56*84943d6fSEmmanuel Vadot 57*84943d6fSEmmanuel Vadot&isi_0 { 58*84943d6fSEmmanuel Vadot status = "okay"; 59*84943d6fSEmmanuel Vadot}; 60*84943d6fSEmmanuel Vadot 61*84943d6fSEmmanuel Vadot&mipi_csi_0 { 62*84943d6fSEmmanuel Vadot status = "okay"; 63*84943d6fSEmmanuel Vadot 64*84943d6fSEmmanuel Vadot ports { 65*84943d6fSEmmanuel Vadot port@0 { 66*84943d6fSEmmanuel Vadot mipi_csi_0_in: endpoint { 67*84943d6fSEmmanuel Vadot remote-endpoint = <&imx219_to_mipi_csi2>; 68*84943d6fSEmmanuel Vadot data-lanes = <1 2>; 69*84943d6fSEmmanuel Vadot }; 70*84943d6fSEmmanuel Vadot }; 71*84943d6fSEmmanuel Vadot }; 72*84943d6fSEmmanuel Vadot}; 73*84943d6fSEmmanuel Vadot 74*84943d6fSEmmanuel Vadot&iomuxc { 75*84943d6fSEmmanuel Vadot pinctrl_reg_cam: regcamgrp { 76*84943d6fSEmmanuel Vadot fsl,pins = < 77*84943d6fSEmmanuel Vadot MX8MP_IOMUXC_GPIO1_IO04__GPIO1_IO04 0x41 78*84943d6fSEmmanuel Vadot >; 79*84943d6fSEmmanuel Vadot }; 80*84943d6fSEmmanuel Vadot}; 81