diff options
author | Philippe Schenker <philippe.schenker@toradex.com> | 2019-07-23 12:17:57 +0200 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2020-02-12 11:06:01 +0100 |
commit | 7c2bdb8053bb2cd2933224d3bbe86b66a18429c5 (patch) | |
tree | 44f6622b94f8d01d45b0eb49b2b567a4189d162b /arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dtsi | |
parent | b63ab58115a5caa7c6bed4687d13b76be0b9362b (diff) |
ARM64: dts: colibri-imx8x: Separate eval devicetrees
This commit only creates fsl-imx8qxp-colibri-eval-v3.dtsi and moves
code.
It does not change code.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Diffstat (limited to 'arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dtsi')
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dtsi | 369 |
1 files changed, 369 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dtsi b/arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dtsi new file mode 100644 index 000000000000..8409a70a4e80 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dtsi @@ -0,0 +1,369 @@ +// SPDX-License-Identifier: GPL-2.0+ OR X11 +/* + * Copyright 2018-2019 Toradex + */ + +/* + * Choose output point for LCDIF block: + * LCDIF_OUT_ADV7125: VGA converter + VGA connector X24 + * LCDIF_OUT_DISPLAY: Panel connected to + * - Generic Display Connector X20, + * - Unified Interface Display Connector X34 + * + * NOTE: LCDIF output to LVDS transmitter is not supported for now. + */ +#define LCDIF_OUT_ADV7125 +//#define LCDIF_OUT_DISPLAY + +/ { + aliases { + rtc0 = &rtc_i2c; + rtc1 = &rtc; + }; + + display-subsystem { + status = "disabled"; + }; + + extcon_usbc_det: usbc_det { + compatible = "linux,extcon-usb-gpio"; + debounce = <25>; + id-gpio = <&gpio5 9 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usbc_det>; + }; + +#ifdef LCDIF_OUT_DISPLAY + panel { + compatible = "edt,et070080dh6"; + backlight = <&backlight>; + enable-gpios = <&gpio4 19 GPIO_ACTIVE_HIGH>; + + port { + lcd_panel_in: endpoint { + remote-endpoint = <&lcd_display_out>; + }; + }; + }; +#endif + +#if defined(LCDIF_OUT_ADV7125) + vga { + compatible = "vga-connector"; + label = "vga"; + status = "okay"; + + port { + vga_in: endpoint { + remote-endpoint = <&adv7125_out>; + }; + }; + }; + + vga-encoder { + compatible = "adi,adv7125", "adi,adv7123"; + status = "okay"; + vdd-supply = <&vdd_3v3_vga>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + lcd_display_in: endpoint { + remote-endpoint = <&lcdif_out>; + }; + }; + port@1 { + reg = <1>; + adv7125_out: endpoint { + remote-endpoint = <&vga_in>; + }; + }; + }; + }; +#endif + + regulators { + reg_usbh_vbus: regulator-usbh-vbus { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usbh1_reg>; + regulator-name = "usbh_vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio4 3 GPIO_ACTIVE_LOW>; + regulator-always-on; + }; + }; +}; + +&adma_lcdif { + pinctrl-names = "default"; + /* Dumb DAC to VGA converter doesn't support backlight, so + * instead use enable-gpios for LCDIF driver for this configuration + */ +#ifdef LCDIF_OUT_ADV7125 + pinctrl-0 = <&pinctrl_lcdif &pinctrl_gpio_bl_on>; + enable-gpios = <&gpio3 12 GPIO_ACTIVE_HIGH>; /* BKL1_ON */ + pinctrl-assert-gpios = <&gpio4 19 GPIO_ACTIVE_HIGH>; +#else + pinctrl-0 = <&pinctrl_lcdif>; +#endif + /* By default, Colibri iMX8QXP uses 18-bits output bus for eLCDIF. + * However, you can configure it to support 24-bits output. + * "X20 Generic Display Connector" of Colibri Evaluation Board v3.2 + * supports 24-bits mode. + */ + bus-width = <18>; + status = "okay"; + +#ifdef LCDIF_OUT_ADV7125 + port@0 { + lcdif_out: lcdif-endpoint { + remote-endpoint = <&lcd_display_in>; + }; + }; +#endif + +#ifdef LCDIF_OUT_DISPLAY + port@0 { + lcd_display_out: lcdif-endpoint { + remote-endpoint = <&lcd_panel_in>; + }; + }; +#endif +}; + +/* Display Prefetch Resolve, (Tiling) */ +&dpr1_channel1 { + status = "okay"; +}; + +&dpr1_channel2 { + status = "okay"; +}; + +&dpr1_channel3 { + status = "okay"; +}; + +&dpr2_channel1 { + status = "okay"; +}; + +&dpr2_channel2 { + status = "okay"; +}; + +&dpr2_channel3 { + status = "okay"; +}; + +&dpu1 { + status = "okay"; +}; + +&gpu_3d0 { + status = "okay"; +}; + +/* On-module MIPI CSI I2C accessible on FFC (X3) */ +&i2c0_mipi_lvds1 { + status = "okay"; + + ov5640_mipi: ov5640_mipi@3c { + compatible = "ovti,ov5640_mipi_v3"; + clocks = <&clk IMX8QXP_24MHZ>; + clock-names = "csi_mclk"; + csi_id = <0>; + mclk = <24000000>; + mclk_source = <0>; + mipi_csi; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_csi_ctl>; + pwn-gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>; + reg = <0x3c>; + rst-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; + status = "okay"; + + port { + ov5640_ep: endpoint { + remote-endpoint = <&mipi_csi0_ep>; + }; + }; + }; +}; + +&i2c1 { + status = "okay"; + + /* M41T0M6 real time clock on carrier board */ + rtc_i2c: rtc@68 { + compatible = "st,m41t0"; + reg = <0x68>; + }; +}; + +&isi_0 { + status = "okay"; +}; + +&isi_1 { + status = "okay"; +}; + +&isi_2 { + status = "okay"; +}; + +&isi_3 { + status = "okay"; +}; + +&ldb1 { + status = "disabled"; +}; + +&ldb1_phy { + status = "disabled"; +}; + +&ldb2 { + status = "disabled"; + + lvds-channel@0 { + fsl,data-mapping = "jeida"; + fsl,data-width = <24>; + status = "okay"; + }; +}; + +&ldb2_phy { + status = "disabled"; +}; + +/* Colibri SPI */ +&lpspi2 { + status = "okay"; + + spidev0: spidev@0 { + compatible = "toradex,evalspi"; + reg = <0>; + spi-max-frequency = <10000000>; + }; +}; + +/* On-module MIPI CSI accessible via FFC (X3) */ +&mipi_csi_0 { + status = "okay"; + + /* Camera 0 MIPI CSI-2 (CSIS0) */ + port@0 { + reg = <0>; + + mipi_csi0_ep: endpoint { + data-lanes = <1 2>; + remote-endpoint = <&ov5640_ep>; + }; + }; +}; + +&mipi_dsi1 { + status = "okay"; +}; + +&mipi_dsi_bridge1 { + status = "okay"; +}; + +&mipi_dsi_phy1 { + status = "okay"; +}; + +&mipi_dsi2 { + status = "okay"; +}; + +&mipi_dsi_bridge2 { + status = "okay"; +}; + +&mipi_dsi_phy2 { + status = "okay"; +}; + +&pixel_combiner { + status = "okay"; +}; + +&prg1 { + status = "okay"; +}; + +&prg2 { + status = "okay"; +}; + +&prg3 { + status = "okay"; +}; + +&prg4 { + status = "okay"; +}; + +&prg5 { + status = "okay"; +}; + +&prg6 { + status = "okay"; +}; + +&prg7 { + status = "okay"; +}; + +&prg8 { + status = "okay"; +}; + +&prg9 { + status = "okay"; +}; + +&pwm_adma_lcdif { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pwm_a>; + status = "okay"; +}; + +&usbotg1 { + extcon = <&extcon_usbc_det &extcon_usbc_det>; + vbus-supply = <®_usbh_vbus>; + srp-disable; + hnp-disable; + adp-disable; + power-polarity-active-high; + disable-over-current; + status = "okay"; +}; + +&usbotg3 { + dr_mode = "host"; + status = "okay"; +}; + +&vpu { + status = "disabled"; +}; + +&vpu_decoder { + status = "okay"; +}; + +&vpu_encoder { + status = "okay"; +}; |