diff options
author | Guoniu.zhou <guoniu.zhou@nxp.com> | 2019-09-24 14:01:56 +0800 |
---|---|---|
committer | Dong Aisheng <aisheng.dong@nxp.com> | 2019-11-25 16:07:57 +0800 |
commit | a22e26b75ab0af2a8435e959b439ff73f6bebd77 (patch) | |
tree | 4de90d54108ca93e7189cd1ef3e7a5783d4dd4ac | |
parent | 83fc74ac28129f533578f215a592b85a2a0b1780 (diff) |
arm64: dts: imx8qm: Change OV10635 as default camera
Change OV10635 as default camera for IMX8QM platform and OV5640
as optional choice. For OV10635, IMX8QM support eight sensors.
For OV5640, IMX8QM support two.
Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
-rw-r--r-- | arch/arm64/boot/dts/freescale/Makefile | 2 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/imx8qm-mek-max9286.dts | 110 | ||||
-rw-r--r-- | arch/arm64/boot/dts/freescale/imx8qm-mek-ov5640.dts | 154 | ||||
-rwxr-xr-x | arch/arm64/boot/dts/freescale/imx8qm-mek.dts | 121 |
4 files changed, 243 insertions, 144 deletions
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile index 50e17190cdbf..6b8c7f628ffa 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile @@ -33,7 +33,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mq-pico-pi.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk-hdmi.dtb imx8mq-evk-dp.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mq-zii-ultra-rmb3.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mq-zii-ultra-zest.dtb -dtb-$(CONFIG_ARCH_MXC) += imx8qm-mek.dtb imx8qm-mek-max9286.dtb \ +dtb-$(CONFIG_ARCH_MXC) += imx8qm-mek.dtb imx8qm-mek-ov5640.dtb \ imx8qm-mek-enet2-tja1100.dtb imx8qm-mek-rpmsg.dtb \ imx8qm-mek-hdmi.dtb imx8qm-mek-dsp.dtb \ imx8qm-lpddr4-val.dtb diff --git a/arch/arm64/boot/dts/freescale/imx8qm-mek-max9286.dts b/arch/arm64/boot/dts/freescale/imx8qm-mek-max9286.dts deleted file mode 100644 index 9f133068331f..000000000000 --- a/arch/arm64/boot/dts/freescale/imx8qm-mek-max9286.dts +++ /dev/null @@ -1,110 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0+ -// Copyright NXP 2019 - -#include "imx8qm-mek.dts" - -&isi_0 { - status = "okay"; -}; - -&isi_1 { - status = "okay"; -}; - -&isi_2 { - status = "okay"; -}; - -&isi_3 { - status = "okay"; -}; - -&isi_4 { - status = "okay"; -}; - -&isi_5 { - status = "okay"; -}; - -&isi_6 { - status = "okay"; -}; - -&isi_7 { - status = "okay"; -}; - -&mipi_csi_0 { - virtual-channel; - - /* Camera 0 MIPI CSI-2 (CSIS0) */ - port@0 { - reg = <0>; - mipi_csi0_ep: endpoint { - remote-endpoint = <&max9286_0_ep>; - data-lanes = <1 2 3 4>; - }; - }; -}; - -&mipi_csi_1 { - virtual-channel; - - /* Camera 0 MIPI CSI-2 (CSIS0) */ - port@1 { - reg = <1>; - mipi_csi1_ep: endpoint { - remote-endpoint = <&max9286_1_ep>; - data-lanes = <1 2 3 4>; - }; - }; -}; - -&i2c_mipi_csi0 { - max9286_mipi@6a { - compatible = "maxim,max9286_mipi"; - reg = <0x6a>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mipi_csi0>; - clocks = <&clk_dummy>; - clock-names = "capture_mclk"; - mclk = <27000000>; - mclk_source = <0>; - pwn-gpios = <&lsio_gpio1 27 GPIO_ACTIVE_HIGH>; - virtual-channel; - status = "okay"; - port { - max9286_0_ep: endpoint { - remote-endpoint = <&mipi_csi0_ep>; - data-lanes = <1 2 3 4>; - }; - }; - }; - - /delete-node/ov5640_mipi@3c; -}; - -&i2c_mipi_csi1 { - max9286_mipi@6a { - compatible = "maxim,max9286_mipi"; - reg = <0x6a>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mipi_csi1>; - clocks = <&clk_dummy>; - clock-names = "capture_mclk"; - mclk = <27000000>; - mclk_source = <0>; - pwn-gpios = <&lsio_gpio1 30 GPIO_ACTIVE_HIGH>; - virtual-channel; - status = "okay"; - port { - max9286_1_ep: endpoint { - remote-endpoint = <&mipi_csi1_ep>; - data-lanes = <1 2 3 4>; - }; - }; - }; - - /delete-node/ov5640_mipi@3c; -}; diff --git a/arch/arm64/boot/dts/freescale/imx8qm-mek-ov5640.dts b/arch/arm64/boot/dts/freescale/imx8qm-mek-ov5640.dts new file mode 100644 index 000000000000..e58913258af8 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8qm-mek-ov5640.dts @@ -0,0 +1,154 @@ +// SPDX-License-Identifier: GPL-2.0+ +// Copyright NXP 2019 + +#include "imx8qm-mek.dts" + +&isi_0 { + status = "okay"; + + cap_device { + status = "okay"; + }; + + m2m_device { + status = "okay"; + }; +}; + +&isi_1 { + status = "disabled"; + + cap_device { + status = "disabled"; + }; +}; + +&isi_2 { + status = "disabled"; + + cap_device { + status = "disabled"; + }; +}; + +&isi_3 { + status = "disabled"; + + cap_device { + status = "disabled"; + }; +}; + +&isi_4 { + status = "okay"; + + cap_device { + status = "okay"; + }; +}; + +&isi_5 { + status = "disabled"; + + cap_device { + status = "disabled"; + }; +}; + +&isi_6 { + status = "disabled"; + + cap_device { + status = "disabled"; + }; +}; + +&isi_7 { + status = "disabled"; + + cap_device { + status = "disabled"; + }; +}; + +&mipi_csi_0 { + /delete-property/virtual-channel; + + /* Camera 0 MIPI CSI-2 (CSIS0) */ + port@0 { + reg = <0>; + mipi_csi0_ep: endpoint { + remote-endpoint = <&ov5640_mipi_0_ep>; + data-lanes = <1 2>; + bus-type = <4>; + }; + }; +}; + +&mipi_csi_1 { + /delete-property/virtual-channel; + + /* Camera 1 MIPI CSI-2 (CSIS0) */ + port@1 { + reg = <1>; + mipi_csi1_ep: endpoint { + remote-endpoint = <&ov5640_mipi_1_ep>; + data-lanes = <1 2>; + bus-type = <4>; + }; + }; +}; + +&i2c_mipi_csi0 { + ov5640_mipi_0: ov5640_mipi@3c { + compatible = "ovti,ov5640"; + reg = <0x3c>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_mipi_csi0>; + clocks = <&xtal24m>; + clock-names = "xclk"; + csi_id = <0>; + powerdown-gpios = <&lsio_gpio1 28 GPIO_ACTIVE_HIGH>; + reset-gpios = <&lsio_gpio1 27 GPIO_ACTIVE_LOW>; + mclk = <24000000>; + mclk_source = <0>; + mipi_csi; + status = "okay"; + port { + ov5640_mipi_0_ep: endpoint { + remote-endpoint = <&mipi_csi0_ep>; + data-lanes = <1 2>; + clocks-lanes = <0>; + }; + }; + }; + + /delete-node/max9286_mipi@6a; +}; + +&i2c_mipi_csi1 { + ov5640_mipi_1: ov5640_mipi@3c { + compatible = "ovti,ov5640"; + reg = <0x3c>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_mipi_csi1>; + clocks = <&xtal24m>; + clock-names = "xclk"; + csi_id = <0>; + powerdown-gpios = <&lsio_gpio1 31 GPIO_ACTIVE_HIGH>; + reset-gpios = <&lsio_gpio1 30 GPIO_ACTIVE_LOW>; + mclk = <24000000>; + mclk_source = <0>; + mipi_csi; + status = "okay"; + port { + ov5640_mipi_1_ep: endpoint { + remote-endpoint = <&mipi_csi1_ep>; + data-lanes = <1 2>; + clocks-lanes = <0>; + }; + }; + }; + + /delete-node/max9286_mipi@6a; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8qm-mek.dts b/arch/arm64/boot/dts/freescale/imx8qm-mek.dts index 5f5388762e56..a70da7279cf2 100755 --- a/arch/arm64/boot/dts/freescale/imx8qm-mek.dts +++ b/arch/arm64/boot/dts/freescale/imx8qm-mek.dts @@ -769,10 +769,70 @@ &isi_0 { status = "okay"; + + cap_device { + status = "okay"; + }; + + m2m_device { + status = "okay"; + }; +}; + +&isi_1 { + status = "okay"; + + cap_device { + status = "okay"; + }; +}; + +&isi_2 { + status = "okay"; + + cap_device { + status = "okay"; + }; +}; + +&isi_3 { + status = "okay"; + + cap_device { + status = "okay"; + }; }; &isi_4 { status = "okay"; + + cap_device { + status = "okay"; + }; +}; + +&isi_5 { + status = "okay"; + + cap_device { + status = "okay"; + }; +}; + +&isi_6 { + status = "okay"; + + cap_device { + status = "okay"; + }; +}; + +&isi_7 { + status = "okay"; + + cap_device { + status = "okay"; + }; }; &irqsteer_csi0 { @@ -786,15 +846,15 @@ &mipi_csi_0 { #address-cells = <1>; #size-cells = <0>; + virtual-channel; status = "okay"; /* Camera 0 MIPI CSI-2 (CSIS0) */ port@0 { reg = <0>; mipi_csi0_ep: endpoint { - remote-endpoint = <&ov5640_mipi_0_ep>; - data-lanes = <1 2>; - bus-type = <4>; + remote-endpoint = <&max9286_0_ep>; + data-lanes = <1 2 3 4>; }; }; }; @@ -802,15 +862,15 @@ &mipi_csi_1 { #address-cells = <1>; #size-cells = <0>; + virtual-channel; status = "okay"; - /* Camera 0 MIPI CSI-2 (CSIS0) */ + /* Camera 1 MIPI CSI-2 (CSIS1) */ port@1 { reg = <1>; mipi_csi1_ep: endpoint { - remote-endpoint = <&ov5640_mipi_1_ep>; - data-lanes = <1 2>; - bus-type = <4>; + remote-endpoint = <&max9286_1_ep>; + data-lanes = <1 2 3 4>; }; }; }; @@ -823,25 +883,22 @@ clock-frequency = <100000>; status = "okay"; - ov5640_mipi_0: ov5640_mipi@3c { - compatible = "ovti,ov5640"; - reg = <0x3c>; + max9286_mipi@6a { + compatible = "maxim,max9286_mipi"; + reg = <0x6a>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_mipi_csi0>; - clocks = <&xtal24m>; - clock-names = "xclk"; - csi_id = <0>; - powerdown-gpios = <&lsio_gpio1 28 GPIO_ACTIVE_HIGH>; - reset-gpios = <&lsio_gpio1 27 GPIO_ACTIVE_LOW>; - mclk = <24000000>; + clocks = <&clk_dummy>; + clock-names = "capture_mclk"; + mclk = <27000000>; mclk_source = <0>; - mipi_csi; + pwn-gpios = <&lsio_gpio1 27 GPIO_ACTIVE_HIGH>; + virtual-channel; status = "okay"; port { - ov5640_mipi_0_ep: endpoint { + max9286_0_ep: endpoint { remote-endpoint = <&mipi_csi0_ep>; - data-lanes = <1 2>; - clocks-lanes = <0>; + data-lanes = <1 2 3 4>; }; }; }; @@ -855,28 +912,26 @@ clock-frequency = <100000>; status = "okay"; - ov5640_mipi_1: ov5640_mipi@3c { - compatible = "ovti,ov5640"; - reg = <0x3c>; + max9286_mipi@6a { + compatible = "maxim,max9286_mipi"; + reg = <0x6a>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_mipi_csi1>; - clocks = <&xtal24m>; - clock-names = "xclk"; - csi_id = <0>; - powerdown-gpios = <&lsio_gpio1 31 GPIO_ACTIVE_HIGH>; - reset-gpios = <&lsio_gpio1 30 GPIO_ACTIVE_LOW>; - mclk = <24000000>; + clocks = <&clk_dummy>; + clock-names = "capture_mclk"; + mclk = <27000000>; mclk_source = <0>; - mipi_csi; + pwn-gpios = <&lsio_gpio1 30 GPIO_ACTIVE_HIGH>; + virtual-channel; status = "okay"; port { - ov5640_mipi_1_ep: endpoint { + max9286_1_ep: endpoint { remote-endpoint = <&mipi_csi1_ep>; - data-lanes = <1 2>; - clocks-lanes = <0>; + data-lanes = <1 2 3 4>; }; }; }; + }; &iomuxc { |