1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2724ba675SRob Herring// 3724ba675SRob Herring// Copyright (C) 2019 Logic PD, Inc. 4724ba675SRob Herring 5724ba675SRob Herring/dts-v1/; 6724ba675SRob Herring#include "imx6q.dtsi" 7724ba675SRob Herring#include "imx6-logicpd-som.dtsi" 8724ba675SRob Herring#include "imx6-logicpd-baseboard.dtsi" 9724ba675SRob Herring 10724ba675SRob Herring/ { 11724ba675SRob Herring model = "Logic PD i.MX6QD SOM-M3"; 12724ba675SRob Herring compatible = "logicpd,imx6q-logicpd", "fsl,imx6q"; 13724ba675SRob Herring 14724ba675SRob Herring backlight: backlight-lvds { 15724ba675SRob Herring compatible = "pwm-backlight"; 16724ba675SRob Herring pwms = <&pwm3 0 20000 0>; 17724ba675SRob Herring brightness-levels = <0 4 8 16 32 64 128 255>; 18724ba675SRob Herring default-brightness-level = <6>; 19724ba675SRob Herring power-supply = <®_lcd>; 20724ba675SRob Herring }; 21724ba675SRob Herring 22724ba675SRob Herring panel-lvds0 { 23724ba675SRob Herring compatible = "okaya,rs800480t-7x0gp"; 24724ba675SRob Herring power-supply = <®_lcd_reset>; 25724ba675SRob Herring backlight = <&backlight>; 26724ba675SRob Herring 27724ba675SRob Herring port { 28724ba675SRob Herring panel_in_lvds0: endpoint { 29724ba675SRob Herring remote-endpoint = <&lvds0_out>; 30724ba675SRob Herring }; 31724ba675SRob Herring }; 32724ba675SRob Herring }; 33724ba675SRob Herring 34724ba675SRob Herring reg_lcd: regulator-lcd { 35724ba675SRob Herring pinctrl-names = "default"; 36724ba675SRob Herring pinctrl-0 = <&pinctrl_lcd_reg>; 37724ba675SRob Herring compatible = "regulator-fixed"; 38724ba675SRob Herring regulator-name = "lcd_panel_pwr"; 39724ba675SRob Herring regulator-min-microvolt = <3300000>; 40724ba675SRob Herring regulator-max-microvolt = <3300000>; 41724ba675SRob Herring gpio = <&gpio4 17 GPIO_ACTIVE_HIGH>; 42724ba675SRob Herring enable-active-high; 43724ba675SRob Herring vin-supply = <®_3v3>; 44724ba675SRob Herring startup-delay-us = <500000>; 45724ba675SRob Herring }; 46724ba675SRob Herring 47724ba675SRob Herring reg_lcd_reset: regulator-lcd-reset { 48724ba675SRob Herring pinctrl-names = "default"; 49724ba675SRob Herring pinctrl-0 = <&pinctrl_lcd_reset>; 50724ba675SRob Herring compatible = "regulator-fixed"; 51724ba675SRob Herring regulator-name = "nLCD_RESET"; 52724ba675SRob Herring regulator-min-microvolt = <3300000>; 53724ba675SRob Herring regulator-max-microvolt = <3300000>; 54724ba675SRob Herring gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>; 55724ba675SRob Herring enable-active-high; 56724ba675SRob Herring vin-supply = <®_lcd>; 57724ba675SRob Herring }; 58724ba675SRob Herring}; 59724ba675SRob Herring 60724ba675SRob Herring&clks { 61724ba675SRob Herring assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, 62724ba675SRob Herring <&clks IMX6QDL_CLK_LDB_DI1_SEL>, 63724ba675SRob Herring <&clks IMX6QDL_CLK_IPU1_DI0_PRE_SEL>, 64724ba675SRob Herring <&clks IMX6QDL_CLK_IPU2_DI0_PRE_SEL>; 65724ba675SRob Herring assigned-clock-parents = <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>, 66724ba675SRob Herring <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>, 67724ba675SRob Herring <&clks IMX6QDL_CLK_PLL2_PFD2_396M>, 68724ba675SRob Herring <&clks IMX6QDL_CLK_PLL2_PFD2_396M>; 69724ba675SRob Herring}; 70724ba675SRob Herring 71724ba675SRob Herring&hdmi { 72724ba675SRob Herring ddc-i2c-bus = <&i2c3>; 73724ba675SRob Herring status = "okay"; 74724ba675SRob Herring}; 75724ba675SRob Herring 76724ba675SRob Herring&i2c1 { 77724ba675SRob Herring touchscreen@26 { 78724ba675SRob Herring compatible = "ilitek,ili2117"; 79724ba675SRob Herring reg = <0x26>; 80724ba675SRob Herring pinctrl-names = "default"; 81724ba675SRob Herring pinctrl-0 = <&pinctrl_touchscreen>; 82724ba675SRob Herring interrupts-extended = <&gpio1 6 IRQ_TYPE_EDGE_RISING>; 83724ba675SRob Herring }; 84724ba675SRob Herring}; 85724ba675SRob Herring 86724ba675SRob Herring&ldb { 87724ba675SRob Herring status = "okay"; 88724ba675SRob Herring 89724ba675SRob Herring lvds-channel@0 { 90724ba675SRob Herring fsl,data-mapping = "spwg"; 91724ba675SRob Herring fsl,data-width = <24>; 92724ba675SRob Herring status = "okay"; 93724ba675SRob Herring 94724ba675SRob Herring port@4 { 95724ba675SRob Herring reg = <4>; 96724ba675SRob Herring lvds0_out: endpoint { 97724ba675SRob Herring remote-endpoint = <&panel_in_lvds0>; 98724ba675SRob Herring }; 99724ba675SRob Herring }; 100724ba675SRob Herring }; 101724ba675SRob Herring 102724ba675SRob Herring}; 103724ba675SRob Herring 104724ba675SRob Herring&pwm3 { 105724ba675SRob Herring status = "okay"; 106724ba675SRob Herring}; 107724ba675SRob Herring 108724ba675SRob Herring®_hdmi { 109724ba675SRob Herring regulator-always-on; /* Without this, the level shifter on HDMI doesn't turn on */ 110724ba675SRob Herring}; 111724ba675SRob Herring 112724ba675SRob Herring&iomuxc { 113*47208272SMarek Vasut pinctrl_lcd_reg: lcdreggrp { 114724ba675SRob Herring fsl,pins = < 115724ba675SRob Herring MX6QDL_PAD_DI0_PIN15__GPIO4_IO17 0x100b0 /* R_LCD_PANEL_PWR */ 116724ba675SRob Herring >; 117724ba675SRob Herring }; 118724ba675SRob Herring 119*47208272SMarek Vasut pinctrl_lcd_reset: lcdresetgrp { 120724ba675SRob Herring fsl,pins = < 121724ba675SRob Herring MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x100b0 /* LCD_nRESET */ 122724ba675SRob Herring >; 123724ba675SRob Herring }; 124724ba675SRob Herring 125724ba675SRob Herring pinctrl_touchscreen: touchscreengrp { 126724ba675SRob Herring fsl,pins = < 127724ba675SRob Herring MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x1b0b0 /* TOUCH_nPINTDAV */ 128724ba675SRob Herring >; 129724ba675SRob Herring }; 130724ba675SRob Herring}; 131