// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* * Copyright 2021 Toradex */ // Verdin iMX8M Plus Mezzanine orderable at Toradex. // CSI Camera Module 5MP OV5640 previously orderable at Toradex. // Note: Uses the same Verdin GPIO2 as used for the Atmel MXT Touchscreen // and the same I2C bus as used for DSI display adapters! /dts-v1/; /plugin/; #include #include / { compatible = "toradex,verdin-imx8mp"; }; &cameradev { status = "okay"; }; /* Verdin I2C_2_DSI (JP3 2-3, JP4 2-3) */ &i2c2 { #address-cells = <1>; #size-cells = <0>; status = "okay"; ov5640_mipi@3c { assigned-clocks = <&clk IMX8MP_CLK_IPP_DO_CLKO2>; assigned-clock-parents = <&clk IMX8MP_CLK_24M>; assigned-clock-rates = <24000000>; AVDD-supply = <®_3p3v>; compatible = "ovti,ov5640"; clock-names = "xclk"; clocks = <&clk IMX8MP_CLK_IPP_DO_CLKO2>; csi_id = <1>; DOVDD-supply = <®_3p3v>; DVDD-supply = <®_3p3v>; mclk = <24000000>; mclk_source = <0>; mipi_csi; pinctrl-names = "default"; /* Verdin GPIO2 (JP6 1-2) */ powerdown-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>; PVDD-supply = <®_3p3v>; reg = <0x3c>; /* Verdin GPIO1 (JP5 1-2) */ reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>; status = "okay"; port { ov5640_mipi_1_ep: endpoint { clock-lanes = <0>; data-lanes = <1 2>; remote-endpoint = <&mipi_csi1_ep>; }; }; }; }; &isi_1 { status = "okay"; cap_device { status = "okay"; }; }; &mipi_csi_1 { #address-cells = <1>; #size-cells = <0>; status = "okay"; port@1 { reg = <1>; mipi_csi1_ep: endpoint { csis-hs-settle = <13>; csis-clk-settle = <2>; csis-wclk; data-lanes = <2>; remote-endpoint = <&ov5640_mipi_1_ep>; }; }; };