xref: /freebsd/sys/contrib/device-tree/src/arm64/freescale/imx8mp-venice-gw74xx-imx219.dtso (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
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 = <&reg_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