162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright 2022 Gateworks Corporation 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#include "imx8mm-pinfunc.h" 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci/dts-v1/; 1162306a36Sopenharmony_ci/plugin/; 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci&{/} { 1462306a36Sopenharmony_ci compatible = "gw,imx8mm-gw73xx-0x", "fsl,imx8mm"; 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci reg_cam: regulator-cam { 1762306a36Sopenharmony_ci pinctrl-names = "default"; 1862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_reg_cam>; 1962306a36Sopenharmony_ci compatible = "regulator-fixed"; 2062306a36Sopenharmony_ci regulator-name = "reg_cam"; 2162306a36Sopenharmony_ci gpio = <&gpio1 1 GPIO_ACTIVE_HIGH>; 2262306a36Sopenharmony_ci enable-active-high; 2362306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 2462306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 2562306a36Sopenharmony_ci }; 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci cam24m: cam24m { 2862306a36Sopenharmony_ci compatible = "fixed-clock"; 2962306a36Sopenharmony_ci #clock-cells = <0>; 3062306a36Sopenharmony_ci clock-frequency = <24000000>; 3162306a36Sopenharmony_ci clock-output-names = "cam24m"; 3262306a36Sopenharmony_ci }; 3362306a36Sopenharmony_ci}; 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci&csi { 3662306a36Sopenharmony_ci status = "okay"; 3762306a36Sopenharmony_ci}; 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ci&i2c3 { 4062306a36Sopenharmony_ci #address-cells = <1>; 4162306a36Sopenharmony_ci #size-cells = <0>; 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci imx219: sensor@10 { 4462306a36Sopenharmony_ci compatible = "sony,imx219"; 4562306a36Sopenharmony_ci reg = <0x10>; 4662306a36Sopenharmony_ci clocks = <&cam24m>; 4762306a36Sopenharmony_ci VDIG-supply = <®_cam>; 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci port { 5062306a36Sopenharmony_ci /* MIPI CSI-2 bus endpoint */ 5162306a36Sopenharmony_ci imx219_to_mipi_csi2: endpoint { 5262306a36Sopenharmony_ci remote-endpoint = <&imx8mm_mipi_csi_in>; 5362306a36Sopenharmony_ci clock-lanes = <0>; 5462306a36Sopenharmony_ci data-lanes = <1 2>; 5562306a36Sopenharmony_ci link-frequencies = /bits/ 64 <456000000>; 5662306a36Sopenharmony_ci }; 5762306a36Sopenharmony_ci }; 5862306a36Sopenharmony_ci }; 5962306a36Sopenharmony_ci}; 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci&mipi_csi { 6262306a36Sopenharmony_ci status = "okay"; 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci ports { 6562306a36Sopenharmony_ci #address-cells = <1>; 6662306a36Sopenharmony_ci #size-cells = <0>; 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci port@0 { 6962306a36Sopenharmony_ci reg = <0>; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci imx8mm_mipi_csi_in: endpoint { 7262306a36Sopenharmony_ci remote-endpoint = <&imx219_to_mipi_csi2>; 7362306a36Sopenharmony_ci data-lanes = <1 2>; 7462306a36Sopenharmony_ci }; 7562306a36Sopenharmony_ci }; 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ci port@1 { 7862306a36Sopenharmony_ci reg = <1>; 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci imx8mm_mipi_csi_out: endpoint { 8162306a36Sopenharmony_ci remote-endpoint = <&csi_in>; 8262306a36Sopenharmony_ci }; 8362306a36Sopenharmony_ci }; 8462306a36Sopenharmony_ci }; 8562306a36Sopenharmony_ci}; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci&iomuxc { 8862306a36Sopenharmony_ci pinctrl_reg_cam: regcamgrp { 8962306a36Sopenharmony_ci fsl,pins = < 9062306a36Sopenharmony_ci MX8MM_IOMUXC_GPIO1_IO01_GPIO1_IO1 0x41 9162306a36Sopenharmony_ci >; 9262306a36Sopenharmony_ci }; 9362306a36Sopenharmony_ci}; 94