Merge remote-tracking branches 'regulator/fix/88pm800', 'regulator/fix/max8973',...
[linux-drm-fsl-dcu.git] / arch / arm / boot / dts / ste-href-tvk1281618.dtsi
1 /*
2  * Copyright 2012 ST-Ericsson AB
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 or later at the following locations:
7  *
8  * http://www.opensource.org/licenses/gpl-license.html
9  * http://www.gnu.org/copyleft/gpl.html
10  *
11  * Device Tree for the TVK1281618 UIB
12  */
13
14 #include <dt-bindings/interrupt-controller/irq.h>
15
16 / {
17         gpio_keys {
18                 compatible = "gpio-keys";
19                 #address-cells = <1>;
20                 #size-cells = <0>;
21                 vdd-supply = <&ab8500_ldo_aux1_reg>;
22                 pinctrl-names = "default";
23                 pinctrl-0 = <&prox_tvk_mode>, <&hall_tvk_mode>;
24
25                 button@139 {
26                         /* Proximity sensor */
27                         gpios = <&gpio6 25 0x4>;
28                         linux,code = <11>; /* SW_FRONT_PROXIMITY */
29                         label = "SFH7741 Proximity Sensor";
30                 };
31                 button@145 {
32                         /* Hall sensor */
33                         gpios = <&gpio4 17 0x4>;
34                         linux,code = <0>; /* SW_LID */
35                         label = "HED54XXU11 Hall Effect Sensor";
36                 };
37         };
38
39         soc {
40                 /* Add Synaptics touch screen, TC35893 keypad etc here */
41                 i2c@80004000 {
42                         tc35893@44 {
43                                 compatible = "toshiba,tc35893";
44                                 reg = <0x44>;
45                                 interrupt-parent = <&gpio6>;
46                                 interrupts = <26 IRQ_TYPE_EDGE_RISING>;
47                                 pinctrl-names = "default";
48                                 pinctrl-0 = <&tc35893_tvk_mode>;
49
50                                 interrupt-controller;
51                                 #interrupt-cells = <1>;
52
53                                 tc3589x_gpio {
54                                         compatible = "toshiba,tc3589x-gpio";
55                                         interrupts = <0>;
56
57                                         interrupt-controller;
58                                         #interrupt-cells = <2>;
59                                         gpio-controller;
60                                         #gpio-cells = <2>;
61                                 };
62                                 tc3589x_keypad {
63                                         compatible = "toshiba,tc3589x-keypad";
64                                         interrupts = <6>;
65                                         debounce-delay-ms = <4>;
66                                         keypad,num-columns = <8>;
67                                         keypad,num-rows = <8>;
68                                         linux,no-autorepeat;
69                                         linux,wakeup;
70                                         linux,keymap = <0x0301006b
71                                                         0x04010066
72                                                         0x06040072
73                                                         0x040200d7
74                                                         0x0303006a
75                                                         0x0205000e
76                                                         0x0607008b
77                                                         0x0500001c
78                                                         0x0403000b
79                                                         0x03040034
80                                                         0x05020067
81                                                         0x0305006c
82                                                         0x040500e7
83                                                         0x0005009e
84                                                         0x06020073
85                                                         0x01030039
86                                                         0x07060069
87                                                         0x050500d9>;
88                                 };
89                         };
90                 };
91                 /* Sensors mounted on this board variant */
92                 i2c@80128000 {
93                         lsm303dlh@18 {
94                                 /* Accelerometer */
95                                 compatible = "st,lsm303dlh-accel";
96                                 st,drdy-int-pin = <1>;
97                                 reg = <0x18>;
98                                 vdd-supply = <&ab8500_ldo_aux1_reg>;
99                                 vddio-supply = <&db8500_vsmps2_reg>;
100                                 pinctrl-names = "default";
101                                 pinctrl-0 = <&accel_tvk_mode>;
102                                 interrupt-parent = <&gpio2>;
103                                 interrupts = <18 IRQ_TYPE_EDGE_RISING>,
104                                              <19 IRQ_TYPE_EDGE_RISING>;
105                         };
106                         lsm303dlh@1e {
107                                 /* Magnetometer */
108                                 compatible = "st,lsm303dlh-magn";
109                                 reg = <0x1e>;
110                                 vdd-supply = <&ab8500_ldo_aux1_reg>;
111                                 vddio-supply = <&db8500_vsmps2_reg>;
112                                 pinctrl-names = "default";
113                                 pinctrl-0 = <&magneto_tvk_mode>;
114                         };
115                         l3g4200d@68 {
116                                 /* Gyroscope */
117                                 compatible = "st,l3g4200d-gyro";
118                                 st,drdy-int-pin = <2>;
119                                 reg = <0x68>;
120                                 vdd-supply = <&ab8500_ldo_aux1_reg>;
121                                 vddio-supply = <&db8500_vsmps2_reg>;
122                         };
123                         lsp001wm@5c {
124                                 /* Barometer/pressure sensor */
125                                 compatible = "st,lps001wp-press";
126                                 reg = <0x5c>;
127                                 vdd-supply = <&ab8500_ldo_aux1_reg>;
128                                 vddio-supply = <&db8500_vsmps2_reg>;
129                         };
130                 };
131                 pinctrl {
132                         /* Pull up this GPIO pin */
133                         tc35893 {
134                                 tc35893_tvk_mode: tc35893_tvk {
135                                         tvk_cfg {
136                                                 pins = "GPIO218_AH11";
137                                                 ste,config = <&gpio_in_pu>;
138                                         };
139                                 };
140                         };
141                         prox {
142                                 prox_tvk_mode: prox_tvk {
143                                         tvk_cfg {
144                                                 pins = "GPIO217_AH12";
145                                                 ste,config = <&gpio_in_pu>;
146                                         };
147                                 };
148                         };
149                         hall {
150                                 hall_tvk_mode: hall_tvk {
151                                         tvk_cfg {
152                                                 pins = "GPIO145_C13";
153                                                 ste,config = <&gpio_in_pu>;
154                                         };
155                                 };
156                         };
157                         accelerometer {
158                                 accel_tvk_mode: accel_tvk {
159                                         /* Accelerometer interrupt lines 1 & 2 */
160                                         tvk_cfg {
161                                                 pins = "GPIO82_C1", "GPIO83_D3";
162                                                 ste,config = <&gpio_in_pu>;
163                                         };
164                                 };
165                         };
166                         magnetometer {
167                                 magneto_tvk_mode: magneto_tvk {
168                                         /* Magnetometer uses GPIO 31 and 32, pull these up/down respectively */
169                                         tvk_cfg1 {
170                                                 pins = "GPIO31_V3";
171                                                 ste,config = <&gpio_in_pu>;
172                                         };
173                                         tvk_cfg2 {
174                                                 pins = "GPIO32_V2";
175                                                 ste,config = <&gpio_in_pd>;
176                                         };
177                                 };
178                         };
179                 };
180         };
181 };