diff options
Diffstat (limited to 'overlays/apalis-imx8_ov5640_overlay.dts')
-rw-r--r-- | overlays/apalis-imx8_ov5640_overlay.dts | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/overlays/apalis-imx8_ov5640_overlay.dts b/overlays/apalis-imx8_ov5640_overlay.dts new file mode 100644 index 0000000..11722ff --- /dev/null +++ b/overlays/apalis-imx8_ov5640_overlay.dts @@ -0,0 +1,68 @@ +// CSI Camera Module 5MP OV5640 orderable at Toradex. + +/dts-v1/; +/plugin/; + +#include <dt-bindings/clock/imx8-clock.h> +#include <dt-bindings/gpio/gpio.h> + +/ { + compatible = "toradex,apalis-imx8"; +}; + +/* Apalis I2C3 (CAM) */ +&i2c3 { + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + ov5640_mipi@3c { + compatible = "ovti,ov5640"; + clocks = <&xtal24m>; + clock-names = "xclk"; + csi_id = <0>; + mclk = <24000000>; + mclk_source = <0>; + mipi_csi; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_gpio1>, <&pinctrl_gpio2>; + powerdown-gpios = <&lsio_gpio0 9 GPIO_ACTIVE_HIGH>; /* Apalis GPIO2 */ + reg = <0x3c>; + reset-gpios = <&lsio_gpio0 8 GPIO_ACTIVE_LOW>; /* Apalis GPIO1 */ + status = "okay"; + + port { + ov5640_mipi_1_ep: endpoint { + clocks-lanes = <0>; + data-lanes = <1 2>; + remote-endpoint = <&mipi_csi1_ep>; + }; + }; + }; +}; + +&isi_4 { + status = "okay"; + + cap_device { + status = "okay"; + }; +}; + +&mipi_csi_1 { + #address-cells = <1>; + #size-cells = <0>; + /delete-property/virtual-channel; + status = "okay"; + + /* Camera 1 MIPI CSI-2 (CSIS0) */ + port@1 { + reg = <1>; + + mipi_csi1_ep: endpoint { + bus-type = <4>; + data-lanes = <1 2>; + remote-endpoint = <&ov5640_mipi_1_ep>; + }; + }; +}; |