diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dts | 79 |
1 files changed, 69 insertions, 10 deletions
diff --git a/arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dts b/arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dts index 1a0bdf1240d2..ec05eeb99245 100644 --- a/arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dts +++ b/arch/arm64/boot/dts/freescale/fsl-imx8qxp-colibri-eval-v3.dts @@ -6,6 +6,18 @@ /dts-v1/; //#define IS_A0_SILICON +/* + * 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 + #include "dt-bindings/pwm/pwm.h" #include "fsl-imx8qxp-colibri-eval-v3.dtsi" @@ -13,7 +25,12 @@ model = "Toradex Colibri iMX8QXP"; compatible = "toradex,colibri-imx8qxp-eval-v3", "toradex,colibri-imx8qxp", "fsl,imx8qxp"; - backlight: backlight { + display-subsystem { + status = "disabled"; + }; + +#ifdef LCDIF_OUT_DISPLAY + lcdif_backlight: lcdif_backlight { compatible = "pwm-backlight"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_gpio_bl_on>; @@ -25,22 +42,18 @@ status = "okay"; }; - display-subsystem { - status = "disabled"; - }; - panel { compatible = "edt,et070080dh6"; - backlight = <&backlight>; + backlight = <&lcdif_backlight>; + enable-gpios = <&gpio4 19 GPIO_ACTIVE_HIGH>; port { lcd_panel_in: endpoint { -// remote-endpoint = <&lcdif_out>; - remote-endpoint = <&lcd_panel_in>; + remote-endpoint = <&lcd_display_out>; }; }; }; -#if 1 + lcd_display: disp0 { #address-cells = <1>; #size-cells = <0>; @@ -62,16 +75,62 @@ }; #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 }; &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 status = "okay"; port@0 { lcdif_out: lcdif-endpoint { - remote-endpoint = <&lcd_panel_in>; + remote-endpoint = <&lcd_display_in>; }; }; }; |