]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blame - arch/arm/boot/dts/ste-href-tvk1281618.dtsi
UBUNTU: Ubuntu-5.3.0-29.31
[mirror_ubuntu-eoan-kernel.git] / arch / arm / boot / dts / ste-href-tvk1281618.dtsi
CommitLineData
fcaf2036 1// SPDX-License-Identifier: GPL-2.0-or-later
9c19cfa9
LW
2/*
3 * Copyright 2012 ST-Ericsson AB
4 *
9c19cfa9
LW
5 * Device Tree for the TVK1281618 UIB
6 */
7
8#include <dt-bindings/interrupt-controller/irq.h>
9
10/ {
1a780d45
LW
11 gpio_keys {
12 compatible = "gpio-keys";
13 #address-cells = <1>;
14 #size-cells = <0>;
15 vdd-supply = <&ab8500_ldo_aux1_reg>;
16 pinctrl-names = "default";
17 pinctrl-0 = <&prox_tvk_mode>, <&hall_tvk_mode>;
18
19 button@139 {
20 /* Proximity sensor */
1b1e8e02 21 gpios = <&gpio6 25 GPIO_ACTIVE_HIGH>;
1a780d45
LW
22 linux,code = <11>; /* SW_FRONT_PROXIMITY */
23 label = "SFH7741 Proximity Sensor";
24 };
25 button@145 {
26 /* Hall sensor */
1b1e8e02 27 gpios = <&gpio4 17 GPIO_ACTIVE_HIGH>;
1a780d45
LW
28 linux,code = <0>; /* SW_LID */
29 label = "HED54XXU11 Hall Effect Sensor";
30 };
31 };
32
9c19cfa9 33 soc {
84919b96 34 i2c@80004000 {
7e0a51a0
LW
35 tc35893@44 {
36 compatible = "toshiba,tc35893";
84919b96
LW
37 reg = <0x44>;
38 interrupt-parent = <&gpio6>;
39 interrupts = <26 IRQ_TYPE_EDGE_RISING>;
a45cb698
LW
40 pinctrl-names = "default";
41 pinctrl-0 = <&tc35893_tvk_mode>;
84919b96
LW
42
43 interrupt-controller;
7e0a51a0 44 #interrupt-cells = <1>;
84919b96
LW
45
46 tc3589x_gpio {
7e0a51a0
LW
47 compatible = "toshiba,tc3589x-gpio";
48 interrupts = <0>;
84919b96
LW
49
50 interrupt-controller;
51 #interrupt-cells = <2>;
52 gpio-controller;
53 #gpio-cells = <2>;
54 };
7e0a51a0
LW
55 tc3589x_keypad {
56 compatible = "toshiba,tc3589x-keypad";
57 interrupts = <6>;
58 debounce-delay-ms = <4>;
59 keypad,num-columns = <8>;
60 keypad,num-rows = <8>;
61 linux,no-autorepeat;
506822ea 62 wakeup-source;
7e0a51a0
LW
63 linux,keymap = <0x0301006b
64 0x04010066
65 0x06040072
66 0x040200d7
67 0x0303006a
68 0x0205000e
69 0x0607008b
70 0x0500001c
71 0x0403000b
72 0x03040034
73 0x05020067
74 0x0305006c
75 0x040500e7
76 0x0005009e
77 0x06020073
78 0x01030039
79 0x07060069
80 0x050500d9>;
81 };
84919b96
LW
82 };
83 };
d0e3bc81
LW
84 /* Sensors mounted on this board variant */
85 i2c@80128000 {
86 lsm303dlh@18 {
87 /* Accelerometer */
88 compatible = "st,lsm303dlh-accel";
89 st,drdy-int-pin = <1>;
7ba5dd53 90 drive-open-drain;
d0e3bc81
LW
91 reg = <0x18>;
92 vdd-supply = <&ab8500_ldo_aux1_reg>;
93 vddio-supply = <&db8500_vsmps2_reg>;
94 pinctrl-names = "default";
95 pinctrl-0 = <&accel_tvk_mode>;
2f23cda3 96 /*
83919ef0
LW
97 * These interrupts cannot be used: the other component
98 * ST-Micro L3D4200D gyro that is connected to the same lines
99 * cannot set its DRDY line to open drain, so it cannot be
100 * shared with other peripherals. The should be defined for
101 * the falling edge if they could be wired together.
102 *
103 * interrupts-extended =
104 * <&gpio1 0 IRQ_TYPE_EDGE_FALLING>,
105 * <&gpio2 19 IRQ_TYPE_EDGE_FALLING>;
2f23cda3 106 */
83919ef0
LW
107 };
108 lsm303dlh@1e {
109 /* Magnetometer */
93deea9a 110 compatible = "st,lsm303dlh-magn";
d0e3bc81
LW
111 reg = <0x1e>;
112 vdd-supply = <&ab8500_ldo_aux1_reg>;
113 vddio-supply = <&db8500_vsmps2_reg>;
83919ef0
LW
114 /*
115 * These interrupts cannot be used: the other component
116 * ST-Micro L3D4200D gyro that is connected to the same lines
117 * cannot set its DRDY line to open drain, so it cannot be
118 * shared with other peripherals. The should be defined for
119 * the falling edge if they could be wired together.
120 *
121 * interrupts-extended =
122 * <&gpio1 0 IRQ_TYPE_EDGE_FALLING>,
123 * <&gpio2 19 IRQ_TYPE_EDGE_FALLING>;
124 */
2f23cda3
LW
125 };
126 lis331dl@1c {
127 /* Accelerometer */
128 compatible = "st,lis331dl-accel";
129 st,drdy-int-pin = <1>;
130 reg = <0x1c>;
131 vdd-supply = <&ab8500_ldo_aux1_reg>;
132 vddio-supply = <&db8500_vsmps2_reg>;
133 pinctrl-names = "default";
134 pinctrl-0 = <&accel_tvk_mode>;
135 interrupt-parent = <&gpio2>;
83919ef0
LW
136 /* INT2 would need to be open drain */
137 interrupts = <18 IRQ_TYPE_EDGE_RISING>,
138 <19 IRQ_TYPE_EDGE_RISING>;
2f23cda3 139 };
8dccafaa 140 ak8974@f {
2f23cda3
LW
141 /* Magnetometer */
142 compatible = "asahi-kasei,ak8974";
143 reg = <0x0f>;
83919ef0
LW
144 avdd-supply = <&ab8500_ldo_aux1_reg>;
145 dvdd-supply = <&db8500_vsmps2_reg>;
d0e3bc81 146 pinctrl-names = "default";
2f23cda3 147 pinctrl-0 = <&gyro_magn_tvk_mode>;
83919ef0
LW
148 /*
149 * These interrupts cannot be used: the other component
150 * ST-Micro L3D4200D gyro that is connected to the same lines
151 * cannot set its DRDY line to open drain, so it cannot be
152 * shared with other peripherals. The should be defined for
153 * the falling edge if they could be wired together.
154 *
155 * interrupts-extended =
156 * <&gpio1 0 IRQ_TYPE_EDGE_FALLING>,
157 * <&gpio0 31 IRQ_TYPE_EDGE_FALLING>;
158 */
d0e3bc81
LW
159 };
160 l3g4200d@68 {
161 /* Gyroscope */
162 compatible = "st,l3g4200d-gyro";
163 st,drdy-int-pin = <2>;
164 reg = <0x68>;
165 vdd-supply = <&ab8500_ldo_aux1_reg>;
166 vddio-supply = <&db8500_vsmps2_reg>;
2f23cda3
LW
167 pinctrl-names = "default";
168 pinctrl-0 = <&gyro_magn_tvk_mode>;
83919ef0
LW
169 interrupts-extended =
170 <&gpio1 0 IRQ_TYPE_EDGE_RISING>,
171 <&gpio0 31 IRQ_TYPE_EDGE_RISING>;
d0e3bc81
LW
172 };
173 lsp001wm@5c {
174 /* Barometer/pressure sensor */
175 compatible = "st,lps001wp-press";
176 reg = <0x5c>;
177 vdd-supply = <&ab8500_ldo_aux1_reg>;
178 vddio-supply = <&db8500_vsmps2_reg>;
179 };
180 };
7ad86d61
LW
181
182 i2c@80110000 {
183 synaptics@4b {
184 /* Synaptics RMI4 TM1217 touchscreen */
185 compatible = "syna,rmi4-i2c";
186 #address-cells = <1>;
187 #size-cells = <0>;
188 reg = <0x4b>;
189 vdd-supply = <&ab8500_ldo_aux1_reg>;
190 vddio-supply = <&db8500_vsmps2_reg>;
191 pinctrl-names = "default";
192 pinctrl-0 = <&synaptics_tvk_mode>;
193 interrupt-parent = <&gpio2>;
194 interrupts = <20 IRQ_TYPE_EDGE_FALLING>;
195
196 rmi-f01@1 {
197 reg = <0x1>;
198 syna,nosleep = <1>;
199 };
200 rmi-f11@11 {
201 reg = <0x11>;
202 touchscreen-inverted-x;
203 syna,sensor-type = <1>;
204 };
205 };
206 };
207
a45cb698
LW
208 pinctrl {
209 /* Pull up this GPIO pin */
210 tc35893 {
211 tc35893_tvk_mode: tc35893_tvk {
212 tvk_cfg {
1637d480 213 pins = "GPIO218_AH11";
a45cb698
LW
214 ste,config = <&gpio_in_pu>;
215 };
216 };
217 };
1a780d45
LW
218 prox {
219 prox_tvk_mode: prox_tvk {
220 tvk_cfg {
1637d480 221 pins = "GPIO217_AH12";
1a780d45
LW
222 ste,config = <&gpio_in_pu>;
223 };
224 };
225 };
226 hall {
227 hall_tvk_mode: hall_tvk {
228 tvk_cfg {
1637d480 229 pins = "GPIO145_C13";
1a780d45
LW
230 ste,config = <&gpio_in_pu>;
231 };
232 };
233 };
d0e3bc81
LW
234 accelerometer {
235 accel_tvk_mode: accel_tvk {
236 /* Accelerometer interrupt lines 1 & 2 */
237 tvk_cfg {
1637d480 238 pins = "GPIO82_C1", "GPIO83_D3";
83919ef0 239 ste,config = <&gpio_in_pd>;
d0e3bc81
LW
240 };
241 };
242 };
2f23cda3
LW
243 gyroscope {
244 /*
245 * These lines are shared between Gyroscope l3g400dh
246 * and AK8974 magnetometer.
247 */
248 gyro_magn_tvk_mode: gyro_magn_tvk {
249 /* GPIO 31 used for INT pull down the line */
d0e3bc81 250 tvk_cfg1 {
1637d480 251 pins = "GPIO31_V3";
2f23cda3 252 ste,config = <&gpio_in_pd>;
d0e3bc81 253 };
2f23cda3 254 /* GPIO 32 used for DRDY, pull this down */
d0e3bc81 255 tvk_cfg2 {
1637d480 256 pins = "GPIO32_V2";
d0e3bc81
LW
257 ste,config = <&gpio_in_pd>;
258 };
259 };
260 };
7ad86d61
LW
261 synaptics {
262 synaptics_tvk_mode: synaptics_tvk {
263 /* Touchscreen uses GPIO 84 */
264 tvk_cfg1 {
265 pins = "GPIO84_C2";
266 ste,config = <&gpio_in_pu>;
267 };
268 };
269 };
a45cb698 270 };
f4bdfcc2
LW
271
272 mcde@a0350000 {
273 status = "okay";
274
275 dsi@a0351000 {
276 panel {
277 compatible = "samsung,s6d16d0";
278 reg = <0>;
279 vdd1-supply = <&ab8500_ldo_aux1_reg>;
280 reset-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
281 };
282 };
283 };
9c19cfa9
LW
284 };
285};