xref: /openbmc/u-boot/arch/arm/dts/imx6q-logicpd.dts (revision 748ad078eefea2ee5a3c8e53ca46e9e93c2fc7f1)
1f479cec3SAdam Ford/*
2*b64b5ad1SAdam Ford * Copyright 2018 Logic PD, Inc.
3f479cec3SAdam Ford * Based on SabreSD, Copyright 2016 Freescale Semiconductor, Inc.
4f479cec3SAdam Ford *
5f479cec3SAdam Ford * This file is dual-licensed: you can use it either under the terms
6f479cec3SAdam Ford * of the GPL or the X11 license, at your option. Note that this dual
7f479cec3SAdam Ford * licensing only applies to this file, and not this project as a
8f479cec3SAdam Ford * whole.
9f479cec3SAdam Ford *
10f479cec3SAdam Ford *  a) This file is free software; you can redistribute it and/or
11f479cec3SAdam Ford *     modify it under the terms of the GNU General Public License as
12f479cec3SAdam Ford *     published by the Free Software Foundation; either version 2 of the
13f479cec3SAdam Ford *     License, or (at your option) any later version.
14f479cec3SAdam Ford *
15f479cec3SAdam Ford *     This file is distributed in the hope that it will be useful,
16f479cec3SAdam Ford *     but WITHOUT ANY WARRANTY; without even the implied warranty of
17f479cec3SAdam Ford *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18f479cec3SAdam Ford *     GNU General Public License for more details.
19f479cec3SAdam Ford *
20f479cec3SAdam Ford * Or, alternatively,
21f479cec3SAdam Ford *
22f479cec3SAdam Ford *  b) Permission is hereby granted, free of charge, to any person
23f479cec3SAdam Ford *     obtaining a copy of this software and associated documentation
24f479cec3SAdam Ford *     files (the "Software"), to deal in the Software without
25f479cec3SAdam Ford *     restriction, including without limitation the rights to use,
26f479cec3SAdam Ford *     copy, modify, merge, publish, distribute, sublicense, and/or
27f479cec3SAdam Ford *     sell copies of the Software, and to permit persons to whom the
28f479cec3SAdam Ford *     Software is furnished to do so, subject to the following
29f479cec3SAdam Ford *     conditions:
30f479cec3SAdam Ford *
31f479cec3SAdam Ford *     The above copyright notice and this permission notice shall be
32f479cec3SAdam Ford *     included in all copies or substantial portions of the Software.
33f479cec3SAdam Ford *
34f479cec3SAdam Ford *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
35f479cec3SAdam Ford *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
36f479cec3SAdam Ford *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
37f479cec3SAdam Ford *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
38f479cec3SAdam Ford *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
39f479cec3SAdam Ford *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
40f479cec3SAdam Ford *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
41f479cec3SAdam Ford *     OTHER DEALINGS IN THE SOFTWARE.
42f479cec3SAdam Ford */
43f479cec3SAdam Ford
44f479cec3SAdam Ford/dts-v1/;
45*b64b5ad1SAdam Ford#include "imx6q.dtsi"
46*b64b5ad1SAdam Ford#include "imx6-logicpd-som.dtsi"
47*b64b5ad1SAdam Ford#include "imx6-logicpd-baseboard.dtsi"
48f479cec3SAdam Ford
49f479cec3SAdam Ford/ {
50*b64b5ad1SAdam Ford	model = "Logic PD i.MX6QD SOM-M3 (HDMI)";
51f479cec3SAdam Ford	compatible = "fsl,imx6q";
52f479cec3SAdam Ford
53*b64b5ad1SAdam Ford	backlight: backlight_lvds {
54*b64b5ad1SAdam Ford		compatible = "pwm-backlight";
55*b64b5ad1SAdam Ford		pwms = <&pwm3 0 20000>;
56*b64b5ad1SAdam Ford		brightness-levels = <0 4 8 16 32 64 128 255>;
57*b64b5ad1SAdam Ford		default-brightness-level = <6>;
58*b64b5ad1SAdam Ford		power-supply = <&reg_lcd>;
59f479cec3SAdam Ford	};
60f479cec3SAdam Ford
61*b64b5ad1SAdam Ford	reg_lcd: regulator-lcd {
62*b64b5ad1SAdam Ford		pinctrl-names = "default";
63*b64b5ad1SAdam Ford		pinctrl-0 = <&pinctrl_lcd_reg>;
64f479cec3SAdam Ford		compatible = "regulator-fixed";
65*b64b5ad1SAdam Ford		regulator-name = "lcd_panel_pwr";
66f479cec3SAdam Ford		regulator-min-microvolt = <3300000>;
67f479cec3SAdam Ford		regulator-max-microvolt = <3300000>;
68*b64b5ad1SAdam Ford		gpio = <&gpio4 17 GPIO_ACTIVE_HIGH>;
69*b64b5ad1SAdam Ford		enable-active-high;
70*b64b5ad1SAdam Ford		regulator-always-on;
71*b64b5ad1SAdam Ford		vin-supply = <&reg_3v3>;
72*b64b5ad1SAdam Ford		startup-delay-us = <500000>;
73*b64b5ad1SAdam Ford	};
74*b64b5ad1SAdam Ford
75*b64b5ad1SAdam Ford	lcd_reset: lcd_reset {
76*b64b5ad1SAdam Ford		pinctrl-names = "default";
77*b64b5ad1SAdam Ford		pinctrl-0 = <&pinctrl_lcd_reset>;
78*b64b5ad1SAdam Ford		compatible = "regulator-fixed";
79*b64b5ad1SAdam Ford		regulator-name = "nLCD_RESET";
80*b64b5ad1SAdam Ford		regulator-min-microvolt = <3300000>;
81*b64b5ad1SAdam Ford		regulator-max-microvolt = <3300000>;
82*b64b5ad1SAdam Ford		gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>;
83*b64b5ad1SAdam Ford		enable-active-high;
84*b64b5ad1SAdam Ford		regulator-always-on;
85*b64b5ad1SAdam Ford		vin-supply = <&reg_lcd>;
86*b64b5ad1SAdam Ford	};
87*b64b5ad1SAdam Ford
88*b64b5ad1SAdam Ford	panel-lvds0 {
89*b64b5ad1SAdam Ford		compatible = "ampire,am800480b3tmqw";
90*b64b5ad1SAdam Ford		backlight = <&backlight>;
91*b64b5ad1SAdam Ford
92*b64b5ad1SAdam Ford		port {
93*b64b5ad1SAdam Ford			panel_in_lvds0: endpoint {
94*b64b5ad1SAdam Ford				remote-endpoint = <&lvds0_out>;
95*b64b5ad1SAdam Ford			};
96*b64b5ad1SAdam Ford		};
97f479cec3SAdam Ford	};
98f479cec3SAdam Ford};
99f479cec3SAdam Ford
100*b64b5ad1SAdam Ford&hdmi {
101*b64b5ad1SAdam Ford	ddc-i2c-bus = <&i2c3>;
102f479cec3SAdam Ford	status = "okay";
103f479cec3SAdam Ford};
104f479cec3SAdam Ford
105*b64b5ad1SAdam Ford&i2c1 {
106*b64b5ad1SAdam Ford	ili_touch: ilitouch@26 {
107*b64b5ad1SAdam Ford		compatible = "ili,ili2117a";
108*b64b5ad1SAdam Ford		reg = <0x26>;
109f479cec3SAdam Ford		pinctrl-names = "default";
110*b64b5ad1SAdam Ford		pinctrl-0 = <&pinctrl_touchscreen>;
111*b64b5ad1SAdam Ford		interrupts-extended = <&gpio1 6 IRQ_TYPE_EDGE_RISING>;
112*b64b5ad1SAdam Ford		ili2117a,poll-period = <10>;
113*b64b5ad1SAdam Ford		ili2117a,max-touch = <2>;
114*b64b5ad1SAdam Ford	};
115f479cec3SAdam Ford};
116f479cec3SAdam Ford
117*b64b5ad1SAdam Ford&reg_hdmi {
118*b64b5ad1SAdam Ford	regulator-always-on;
119f479cec3SAdam Ford};
120f479cec3SAdam Ford
121*b64b5ad1SAdam Ford&ldb {
122f479cec3SAdam Ford	status = "okay";
123*b64b5ad1SAdam Ford
124*b64b5ad1SAdam Ford	lvds-channel@0 {
125*b64b5ad1SAdam Ford		fsl,data-mapping = "spwg";
126*b64b5ad1SAdam Ford		fsl,data-width = <24>;
127*b64b5ad1SAdam Ford		status = "okay";
128*b64b5ad1SAdam Ford
129*b64b5ad1SAdam Ford		port@4 {
130*b64b5ad1SAdam Ford			reg = <4>;
131*b64b5ad1SAdam Ford
132*b64b5ad1SAdam Ford			lvds0_out: endpoint {
133*b64b5ad1SAdam Ford				remote-endpoint = <&panel_in_lvds0>;
134*b64b5ad1SAdam Ford			};
135*b64b5ad1SAdam Ford		};
136f479cec3SAdam Ford	};
137f479cec3SAdam Ford
138*b64b5ad1SAdam Ford};
139*b64b5ad1SAdam Ford
140*b64b5ad1SAdam Ford&clks {
141*b64b5ad1SAdam Ford	assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
142*b64b5ad1SAdam Ford			  <&clks IMX6QDL_CLK_LDB_DI1_SEL>,
143*b64b5ad1SAdam Ford			  <&clks IMX6QDL_CLK_IPU1_DI0_PRE_SEL>,
144*b64b5ad1SAdam Ford			  <&clks IMX6QDL_CLK_IPU2_DI0_PRE_SEL>;
145*b64b5ad1SAdam Ford	assigned-clock-parents = <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>,
146*b64b5ad1SAdam Ford				 <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>,
147*b64b5ad1SAdam Ford				 <&clks IMX6QDL_CLK_PLL2_PFD2_396M>,
148*b64b5ad1SAdam Ford				 <&clks IMX6QDL_CLK_PLL2_PFD2_396M>;
149*b64b5ad1SAdam Ford};
150*b64b5ad1SAdam Ford
151*b64b5ad1SAdam Ford&pwm3 {
152f479cec3SAdam Ford	status = "okay";
153f479cec3SAdam Ford};
154f479cec3SAdam Ford
155f479cec3SAdam Ford&usdhc2 {
156f479cec3SAdam Ford	cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
157f479cec3SAdam Ford};
158f479cec3SAdam Ford
159f479cec3SAdam Ford&iomuxc {
160*b64b5ad1SAdam Ford	pinctrl_lcd_reg: lcdreg {
161f479cec3SAdam Ford		fsl,pins = <
162*b64b5ad1SAdam Ford			MX6QDL_PAD_DI0_PIN15__GPIO4_IO17	0x100b0	/* R_LCD_PANEL_PWR */
163f479cec3SAdam Ford		>;
164f479cec3SAdam Ford	};
165f479cec3SAdam Ford
166*b64b5ad1SAdam Ford	pinctrl_lcd_reset: lcdreset {
167f479cec3SAdam Ford		fsl,pins = <
168*b64b5ad1SAdam Ford			MX6QDL_PAD_EIM_A25__GPIO5_IO02      0x100b0	/* LCD_nRESET */
169f479cec3SAdam Ford		>;
170f479cec3SAdam Ford	};
171f479cec3SAdam Ford
172*b64b5ad1SAdam Ford	pinctrl_touchscreen: touchscreengrp {
173f479cec3SAdam Ford		fsl,pins = <
174*b64b5ad1SAdam Ford			MX6QDL_PAD_GPIO_6__GPIO1_IO06	0x1b0b0	/* TOUCH_nPINTDAV */
175f479cec3SAdam Ford		>;
176f479cec3SAdam Ford	};
177*b64b5ad1SAdam Ford};
178f479cec3SAdam Ford
179