Linux Audio

Check our new training course

Linux kernel drivers training

May 6-19, 2025
Register
Loading...
v6.2
 1/*
 2 * Copyright 2014-2017 Lothar Waßmann <LW@KARO-electronics.de>
 3 *
 4 * This file is dual-licensed: you can use it either under the terms
 5 * of the GPL or the X11 license, at your option. Note that this dual
 6 * licensing only applies to this file, and not this project as a
 7 * whole.
 8 *
 9 *  a) This file is free software; you can redistribute it and/or
10 *     modify it under the terms of the GNU General Public License
11 *     version 2 as published by the Free Software Foundation.
12 *
13 *     This file is distributed in the hope that it will be useful,
14 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
15 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 *     GNU General Public License for more details.
17 *
18 * Or, alternatively,
19 *
20 *  b) Permission is hereby granted, free of charge, to any person
21 *     obtaining a copy of this software and associated documentation
22 *     files (the "Software"), to deal in the Software without
23 *     restriction, including without limitation the rights to use,
24 *     copy, modify, merge, publish, distribute, sublicense, and/or
25 *     sell copies of the Software, and to permit persons to whom the
26 *     Software is furnished to do so, subject to the following
27 *     conditions:
28 *
29 *     The above copyright notice and this permission notice shall be
30 *     included in all copies or substantial portions of the Software.
31 *
32 *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
33 *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
34 *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
35 *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
36 *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
37 *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
38 *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
39 *     OTHER DEALINGS IN THE SOFTWARE.
40 */
41
42/dts-v1/;
43#include "imx6dl.dtsi"
44#include "imx6qdl-tx6.dtsi"
45#include "imx6qdl-tx6-lvds.dtsi"
46
47/ {
48	model = "Ka-Ro electronics TX6U-811x Module";
49	compatible = "karo,imx6dl-tx6dl", "fsl,imx6dl";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50};
v4.6
  1/*
  2 * Copyright 2014 Lothar Waßmann <LW@KARO-electronics.de>
  3 *
  4 * The code contained herein is licensed under the GNU General Public
  5 * License. You may obtain a copy of the GNU General Public License
  6 * Version 2 at the following locations:
 
  7 *
  8 * http://www.opensource.org/licenses/gpl-license.html
  9 * http://www.gnu.org/copyleft/gpl.html
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 10 */
 11
 12/dts-v1/;
 13#include "imx6dl.dtsi"
 14#include "imx6qdl-tx6.dtsi"
 
 15
 16/ {
 17	model = "Ka-Ro electronics TX6U-811x Module";
 18	compatible = "karo,imx6dl-tx6dl", "fsl,imx6dl";
 19
 20	aliases {
 21		display = &lvds0;
 22		lvds0 = &lvds0;
 23		lvds1 = &lvds1;
 24	};
 25
 26	backlight0: backlight0 {
 27		compatible = "pwm-backlight";
 28		pwms = <&pwm2 0 500000 0>;
 29		power-supply = <&reg_lcd0_pwr>;
 30		/*
 31		 * a poor man's way to create a 1:1 relationship between
 32		 * the PWM value and the actual duty cycle
 33		 */
 34		brightness-levels = < 0  1  2  3  4  5  6  7  8  9
 35				     10 11 12 13 14 15 16 17 18 19
 36				     20 21 22 23 24 25 26 27 28 29
 37				     30 31 32 33 34 35 36 37 38 39
 38				     40 41 42 43 44 45 46 47 48 49
 39				     50 51 52 53 54 55 56 57 58 59
 40				     60 61 62 63 64 65 66 67 68 69
 41				     70 71 72 73 74 75 76 77 78 79
 42				     80 81 82 83 84 85 86 87 88 89
 43				     90 91 92 93 94 95 96 97 98 99
 44				    100>;
 45		default-brightness-level = <50>;
 46	};
 47
 48	backlight1: backlight1 {
 49		compatible = "pwm-backlight";
 50		pwms = <&pwm1 0 500000 0>;
 51		power-supply = <&reg_lcd1_pwr>;
 52		/*
 53		 * a poor man's way to create a 1:1 relationship between
 54		 * the PWM value and the actual duty cycle
 55		 */
 56		brightness-levels = < 0  1  2  3  4  5  6  7  8  9
 57				     10 11 12 13 14 15 16 17 18 19
 58				     20 21 22 23 24 25 26 27 28 29
 59				     30 31 32 33 34 35 36 37 38 39
 60				     40 41 42 43 44 45 46 47 48 49
 61				     50 51 52 53 54 55 56 57 58 59
 62				     60 61 62 63 64 65 66 67 68 69
 63				     70 71 72 73 74 75 76 77 78 79
 64				     80 81 82 83 84 85 86 87 88 89
 65				     90 91 92 93 94 95 96 97 98 99
 66				    100>;
 67		default-brightness-level = <50>;
 68	};
 69};
 70
 71&i2c3 {
 72	polytouch2: eeti@04 {
 73		compatible = "eeti,egalax_ts";
 74		reg = <0x04>;
 75		pinctrl-names = "default";
 76		pinctrl-0 = <&pinctrl_eeti>;
 77		interrupt-parent = <&gpio3>;
 78		interrupts = <22 0>;
 79		wakeup-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
 80		wakeup-source;
 81	};
 82};
 83
 84&iomuxc {
 85	imx6dl-tx6u-811x {
 86		pinctrl_eeti: eetigrp {
 87			fsl,pins = <
 88				MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b1 /* Interrupt */
 89			>;
 90		};
 91	};
 92};
 93
 94&kpp {
 95	status = "disabled"; /* pad conflict with backlight1 PWM */
 96};
 97
 98&ldb {
 99	status = "okay";
100
101	lvds0: lvds-channel@0 {
102		fsl,data-mapping = "spwg";
103		fsl,data-width = <18>;
104		status = "okay";
105
106		display-timings {
107			native-mode = <&lvds_timing0>;
108			lvds_timing0: hsd100pxn1 {
109				clock-frequency = <65000000>;
110				hactive = <1024>;
111				vactive = <768>;
112				hback-porch = <220>;
113				hfront-porch = <40>;
114				vback-porch = <21>;
115				vfront-porch = <7>;
116				hsync-len = <60>;
117				vsync-len = <10>;
118				de-active = <1>;
119				pixelclk-active = <1>;
120			};
121		};
122	};
123
124	lvds1: lvds-channel@1 {
125		fsl,data-mapping = "spwg";
126		fsl,data-width = <18>;
127		status = "disabled";
128
129		display-timings {
130			native-mode = <&lvds_timing1>;
131			lvds_timing1: hsd100pxn1 {
132				clock-frequency = <65000000>;
133				hactive = <1024>;
134				vactive = <768>;
135				hback-porch = <220>;
136				hfront-porch = <40>;
137				vback-porch = <21>;
138				vfront-porch = <7>;
139				hsync-len = <60>;
140				vsync-len = <10>;
141				de-active = <1>;
142				pixelclk-active = <1>;
143			};
144		};
145	};
146};
147
148&pwm1 {
149	status = "okay";
150};