diff options
author | Oleksandr Suvorov <oleksandr.suvorov@toradex.com> | 2020-11-26 17:40:30 +0200 |
---|---|---|
committer | Oleksandr Suvorov <oleksandr.suvorov@toradex.com> | 2020-11-26 19:09:36 +0200 |
commit | 8d1da21238b7178539f3a3a4e63c1de54ea28cd6 (patch) | |
tree | f1a4a2740d97e6b45fb740a227032f47fbc791d8 | |
parent | 93790d35b53bc780a09c5c74954cc6c3825eda00 (diff) |
ARM: dts: apalis-imx6: take back ov5640 mipi csi stuff
According to decisions, move definitions of ov5640 stuff back to the
main devicetree, leaving only turning on stuff in an overlay.
Related-to: ELB-3240
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
-rw-r--r-- | arch/arm/boot/dts/imx6qdl-apalis.dtsi | 67 |
1 files changed, 65 insertions, 2 deletions
diff --git a/arch/arm/boot/dts/imx6qdl-apalis.dtsi b/arch/arm/boot/dts/imx6qdl-apalis.dtsi index d81f49cbd6b4..4983fc3bdfd3 100644 --- a/arch/arm/boot/dts/imx6qdl-apalis.dtsi +++ b/arch/arm/boot/dts/imx6qdl-apalis.dtsi @@ -65,6 +65,12 @@ status = "disabled"; }; + clk_ov5640_osc: clk_ov5640_osc_int { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <22000000>; + }; + lcd_display: disp0 { compatible = "fsl,imx-parallel-display"; #address-cells = <1>; @@ -129,6 +135,26 @@ regulator-always-on; }; + reg_ov5640_1v8_d_o_vdd: regulator-ov5640-1v8-d-o-vdd { + compatible = "regulator-fixed"; + regulator-name = "DOVDD/DVDD_1.8V"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + /* Note: The CSI module uses on-board 3.3V_SW supply */ + vin-supply = <®_module_3v3>; + }; + + reg_ov5640_2v8_a_vdd: regulator-ov5640-2v8-a-vdd { + compatible = "regulator-fixed"; + regulator-name = "AVDD/AFVDD_2.8V"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + regulator-always-on; + /* Note: The CSI module uses on-board 3.3V_SW supply */ + vin-supply = <®_module_3v3>; + }; + reg_usb_otg_vbus: regulator-usb-otg-vbus { compatible = "regulator-fixed"; pinctrl-names = "default"; @@ -529,6 +555,28 @@ status = "disabled"; }; + ov5640_csi_cam: ov5640_mipi@3c { + compatible = "ovti,ov5640"; + reg = <0x3c>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_apalis_gpio1 &pinctrl_apalis_gpio2 &pinctrl_cam_mclk>; + clocks = <&clks IMX6QDL_CLK_CKO2>; + clock-names = "xclk"; + DOVDD-supply = <®_ov5640_1v8_d_o_vdd>; + AVDD-supply = <®_ov5640_2v8_a_vdd>; + DVDD-supply = <®_ov5640_1v8_d_o_vdd>; + powerdown-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; + reset-gpios = <&gpio2 4 GPIO_ACTIVE_LOW>; + status = "disabled"; + + port { + ov5640_to_mipi_csi2: endpoint { + remote-endpoint = <&mipi_csi_from_ov5640>; + clock-lanes = <0>; + data-lanes = <1 2>; + }; + }; + }; }; /* @@ -710,6 +758,22 @@ remote-endpoint = <&vga_display_in>; }; +&mipi_csi { + #address-cells = <1>; + #size-cells = <0>; + status = "disabled"; + + port@0 { + reg = <0>; + + mipi_csi_from_ov5640: endpoint { + remote-endpoint = <&ov5640_to_mipi_csi2>; + clock-lanes = <0>; + data-lanes = <1 2>; + }; + }; +}; + &pwm1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pwm1>; @@ -823,8 +887,7 @@ * Mux the Apalis GPIOs */ pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_apalis_gpio1 &pinctrl_apalis_gpio2 - &pinctrl_apalis_gpio3 &pinctrl_apalis_gpio4 + pinctrl-0 = <&pinctrl_apalis_gpio3 &pinctrl_apalis_gpio4 &pinctrl_apalis_gpio7 &pinctrl_apalis_gpio8 >; |