diff options
Diffstat (limited to 'overlays/verdin-imx8mp_ov5640_overlay.dts')
-rw-r--r-- | overlays/verdin-imx8mp_ov5640_overlay.dts | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/overlays/verdin-imx8mp_ov5640_overlay.dts b/overlays/verdin-imx8mp_ov5640_overlay.dts new file mode 100644 index 0000000..5f6bfcb --- /dev/null +++ b/overlays/verdin-imx8mp_ov5640_overlay.dts @@ -0,0 +1,84 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2024 Toradex + */ + +/dts-v1/; +/plugin/; + +#include <dt-bindings/clock/imx8mp-clock.h> +#include <dt-bindings/gpio/gpio.h> + +/ { + compatible = "toradex,verdin-imx8mp"; +}; + +&{/} { + clk_camera_verdin_csi: camera-verdin-csi-clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <24000000>; + }; + + regulator_camera: regulator-camera { + compatible = "regulator-fixed"; + /* Verdin GPIO_8_CSI - Camera Connector 24 */ + gpio = <&gpio4 1 GPIO_ACTIVE_HIGH>; + enable-active-high; + regulator-name = "V_CSI"; + startup-delay-us = <5000>; + }; +}; + +/* Verdin I2C_4_CSI */ +&i2c3 { + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + camera@3c { + compatible = "ovti,ov5640"; + reg = <0x3c>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_gpio5>, <&pinctrl_gpio6>; + clocks = <&clk_camera_verdin_csi>; + clock-names = "xclk"; + AVDD-supply = <®ulator_camera>; + DOVDD-supply = <®ulator_camera>; + DVDD-supply = <®ulator_camera>; + /* Verdin GPIO6 - Camera Connector 22 */ + powerdown-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; + /* Verdin GPIO5 - Camera Connector 11 */ + reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; + + port { + ov5640_to_mipi_csi_0: endpoint { + remote-endpoint = <&mipi_csi_0_in>; + clock-lanes = <0>; + data-lanes = <1 2>; + }; + }; + }; +}; + +&isi_0 { + status = "okay"; +}; + +&mipi_csi_0 { + status = "okay"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + mipi_csi_0_in: endpoint { + remote-endpoint = <&ov5640_to_mipi_csi_0>; + data-lanes = <1 2>; + }; + }; + }; +}; |