Linux Audio

Check our new training course

Loading...
v4.17
 
  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
 12#include <dt-bindings/interrupt-controller/irq.h>
 13
 14/ {
 15	gpio_keys {
 16		compatible = "gpio-keys";
 17		#address-cells = <1>;
 18		#size-cells = <0>;
 19		vdd-supply = <&ab8500_ldo_aux1_reg>;
 20		pinctrl-names = "default";
 21		pinctrl-0 = <&prox_stuib_mode>, <&hall_stuib_mode>;
 22
 23		button@139 {
 24			/* Proximity sensor */
 25			gpios = <&gpio6 25 GPIO_ACTIVE_HIGH>;
 26			linux,code = <11>; /* SW_FRONT_PROXIMITY */
 27			label = "SFH7741 Proximity Sensor";
 28		};
 29		button@145 {
 30			/* Hall sensor */
 31			gpios = <&gpio4 17 GPIO_ACTIVE_HIGH>;
 32			linux,code = <0>; /* SW_LID */
 33			label = "HED54XXU11 Hall Effect Sensor";
 34		};
 35	};
 36
 37	soc {
 38		i2c@80004000 {
 39			stmpe1601: stmpe1601@40 {
 40				compatible = "st,stmpe1601";
 41				reg = <0x40>;
 42				interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
 43				interrupt-parent = <&gpio6>;
 44				interrupt-controller;
 45				vcc-supply = <&db8500_vsmps2_reg>;
 46				vio-supply = <&db8500_vsmps2_reg>;
 
 
 47
 48				wakeup-source;
 49				st,autosleep-timeout = <1024>;
 50
 51				stmpe_keypad {
 52					compatible = "st,stmpe-keypad";
 53
 54					debounce-interval = <64>;
 55					st,scan-count = <8>;
 56					st,no-autorepeat;
 57
 58					linux,keymap = <0x205006b
 59							0x4010074
 60							0x3050072
 61							0x1030004
 62							0x502006a
 63							0x500000a
 64							0x5008b
 65							0x706001c
 66							0x405000b
 67							0x6070003
 68							0x3040067
 69							0x303006c
 70							0x60400e7
 71							0x602009e
 72							0x4020073
 73							0x5050002
 74							0x4030069
 75							0x3020008>;
 76				};
 77			};
 78		};
 79
 80		/* Sensors mounted on this board variant */
 81		i2c@80128000 {
 82			lis331dl@1c {
 83				/* Accelerometer */
 84				compatible = "st,lis331dl-accel";
 85				st,drdy-int-pin = <1>;
 86				reg = <0x1c>;
 87				vdd-supply = <&ab8500_ldo_aux1_reg>;
 88				vddio-supply = <&db8500_vsmps2_reg>;
 89				pinctrl-names = "default";
 90				pinctrl-0 = <&accel_stuib_mode>;
 91				interrupt-parent = <&gpio2>;
 92				interrupts = <18 IRQ_TYPE_EDGE_RISING>,
 93					     <19 IRQ_TYPE_EDGE_RISING>;
 94			};
 95			ak8974@f {
 96				/* Magnetometer */
 97				compatible = "asahi-kasei,ak8974";
 98				reg = <0x0f>;
 99				vdd-supply = <&ab8500_ldo_aux1_reg>;
100				vddio-supply = <&db8500_vsmps2_reg>;
101				pinctrl-names = "default";
102				pinctrl-0 = <&magneto_stuib_mode>;
103				interrupt-parent = <&gpio1>;
104				interrupts = <0 IRQ_TYPE_EDGE_RISING>;
105			};
106		};
107
108		i2c@80110000 {
109			bu21013_tp@5c {
110				compatible = "rohm,bu21013_tp";
111				reg = <0x5c>;
112				avdd-supply = <&ab8500_ldo_aux1_reg>;
113
114				rohm,touch-max-x = <384>;
115				rohm,touch-max-y = <704>;
116				rohm,flip-y;
117				pinctrl-names = "default";
118				pinctrl-0 = <&touch_rohm_mode>;
119			};
120
121			bu21013_tp@5d {
122				compatible = "rohm,bu21013_tp";
123				reg = <0x5d>;
124				avdd-supply = <&ab8500_ldo_aux1_reg>;
125
126				rohm,touch-max-x = <384>;
127				rohm,touch-max-y = <704>;
128				rohm,flip-y;
129				pinctrl-names = "default";
130				pinctrl-0 = <&touch_rohm_mode>;
131			};
132		};
133
134		pinctrl {
 
 
 
 
 
 
 
 
 
135			prox {
136				prox_stuib_mode: prox_stuib {
137					stuib_cfg {
138						pins = "GPIO217_AH12";
139						ste,config = <&gpio_in_pu>;
140					};
141				};
142			};
143			hall {
144				hall_stuib_mode: stuib_tvk {
145					stuib_cfg {
146						pins = "GPIO145_C13";
147						ste,config = <&gpio_in_pu>;
148					};
149				};
150			};
151			accelerometer {
152				accel_stuib_mode: accel_stuib {
153					/* Accelerometer interrupt lines 1 & 2 */
154					stuib_cfg {
155						pins = "GPIO82_C1", "GPIO83_D3";
156						ste,config = <&gpio_in_pu>;
157					};
158				};
159			};
160			magnetometer {
161				magneto_stuib_mode: magneto_stuib {
162					/* Magnetometer uses GPIO 31 and 32, pull these up/down respectively */
163					stuib_cfg1 {
164						pins = "GPIO31_V3";
165						ste,config = <&gpio_in_pu>;
166					};
167					stuib_cfg2 {
168						pins = "GPIO32_V2";
169						ste,config = <&gpio_in_pd>;
170					};
171				};
172			};
173			touch {
174				touch_rohm_mode: touch_rohm {
175					/*
176					 * ROHM touch screen uses GPIO 143 for
177					 * RST1, GPIO 146 for RST2 and
178					 * GPIO 67 for interrupts. Pull-up
179					 * the IRQ line and drive both
180					 * reset signals low.
181					 */
182					stuib_cfg1 {
183						pins = "GPIO143_D12", "GPIO146_D13";
184						ste,config = <&gpio_out_lo>;
185					};
186					stuib_cfg2 {
187						pins = "GPIO67_G2";
188						ste,config = <&gpio_in_pu>;
189					};
 
 
 
 
 
 
 
 
 
 
 
 
 
190				};
191			};
192		};
193	};
194};
v5.4
  1// SPDX-License-Identifier: GPL-2.0-or-later
  2/*
  3 * Copyright 2012 ST-Ericsson AB
 
 
 
 
 
 
 
  4 */
  5
  6#include <dt-bindings/interrupt-controller/irq.h>
  7
  8/ {
  9	gpio_keys {
 10		compatible = "gpio-keys";
 11		#address-cells = <1>;
 12		#size-cells = <0>;
 13		vdd-supply = <&ab8500_ldo_aux1_reg>;
 14		pinctrl-names = "default";
 15		pinctrl-0 = <&prox_stuib_mode>, <&hall_stuib_mode>;
 16
 17		button@139 {
 18			/* Proximity sensor */
 19			gpios = <&gpio6 25 GPIO_ACTIVE_HIGH>;
 20			linux,code = <11>; /* SW_FRONT_PROXIMITY */
 21			label = "SFH7741 Proximity Sensor";
 22		};
 23		button@145 {
 24			/* Hall sensor */
 25			gpios = <&gpio4 17 GPIO_ACTIVE_HIGH>;
 26			linux,code = <0>; /* SW_LID */
 27			label = "HED54XXU11 Hall Effect Sensor";
 28		};
 29	};
 30
 31	soc {
 32		i2c@80004000 {
 33			stmpe1601: stmpe1601@40 {
 34				compatible = "st,stmpe1601";
 35				reg = <0x40>;
 36				interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
 37				interrupt-parent = <&gpio6>;
 38				interrupt-controller;
 39				vcc-supply = <&db8500_vsmps2_reg>;
 40				vio-supply = <&db8500_vsmps2_reg>;
 41				pinctrl-names = "default";
 42				pinctrl-0 = <&stmpe_stuib_mode>;
 43
 44				wakeup-source;
 45				st,autosleep-timeout = <1024>;
 46
 47				stmpe_keypad {
 48					compatible = "st,stmpe-keypad";
 49
 50					debounce-interval = <64>;
 51					st,scan-count = <8>;
 52					st,no-autorepeat;
 53
 54					linux,keymap = <0x205006b
 55							0x4010074
 56							0x3050072
 57							0x1030004
 58							0x502006a
 59							0x500000a
 60							0x5008b
 61							0x706001c
 62							0x405000b
 63							0x6070003
 64							0x3040067
 65							0x303006c
 66							0x60400e7
 67							0x602009e
 68							0x4020073
 69							0x5050002
 70							0x4030069
 71							0x3020008>;
 72				};
 73			};
 74		};
 75
 76		/* Sensors mounted on this board variant */
 77		i2c@80128000 {
 78			lis331dl@1c {
 79				/* Accelerometer */
 80				compatible = "st,lis331dl-accel";
 81				st,drdy-int-pin = <1>;
 82				reg = <0x1c>;
 83				vdd-supply = <&ab8500_ldo_aux1_reg>;
 84				vddio-supply = <&db8500_vsmps2_reg>;
 85				pinctrl-names = "default";
 86				pinctrl-0 = <&accel_stuib_mode>;
 87				interrupt-parent = <&gpio2>;
 88				interrupts = <18 IRQ_TYPE_EDGE_RISING>,
 89					     <19 IRQ_TYPE_EDGE_RISING>;
 90			};
 91			ak8974@f {
 92				/* Magnetometer */
 93				compatible = "asahi-kasei,ak8974";
 94				reg = <0x0f>;
 95				vdd-supply = <&ab8500_ldo_aux1_reg>;
 96				vddio-supply = <&db8500_vsmps2_reg>;
 97				pinctrl-names = "default";
 98				pinctrl-0 = <&magneto_stuib_mode>;
 99				interrupt-parent = <&gpio1>;
100				interrupts = <0 IRQ_TYPE_EDGE_RISING>;
101			};
102		};
103
104		i2c@80110000 {
105			bu21013_tp@5c {
106				compatible = "rohm,bu21013_tp";
107				reg = <0x5c>;
108				avdd-supply = <&ab8500_ldo_aux1_reg>;
109
110				rohm,touch-max-x = <384>;
111				rohm,touch-max-y = <704>;
112				rohm,flip-y;
113				pinctrl-names = "default";
114				pinctrl-0 = <&touch_rohm_mode>;
115			};
116
117			bu21013_tp@5d {
118				compatible = "rohm,bu21013_tp";
119				reg = <0x5d>;
120				avdd-supply = <&ab8500_ldo_aux1_reg>;
121
122				rohm,touch-max-x = <384>;
123				rohm,touch-max-y = <704>;
124				rohm,flip-y;
125				pinctrl-names = "default";
126				pinctrl-0 = <&touch_rohm_mode>;
127			};
128		};
129
130		pinctrl {
131			/* Pull up this GPIO pin */
132			stmpe {
133				stmpe_stuib_mode: stmpe_stuib {
134					stuib_cfg {
135						ste,pins = "GPIO218_AH11";
136						ste,config = <&gpio_in_pu>;
137					};
138				};
139			};
140			prox {
141				prox_stuib_mode: prox_stuib {
142					stuib_cfg {
143						pins = "GPIO217_AH12";
144						ste,config = <&gpio_in_pu>;
145					};
146				};
147			};
148			hall {
149				hall_stuib_mode: stuib_tvk {
150					stuib_cfg {
151						pins = "GPIO145_C13";
152						ste,config = <&gpio_in_pu>;
153					};
154				};
155			};
156			accelerometer {
157				accel_stuib_mode: accel_stuib {
158					/* Accelerometer interrupt lines 1 & 2 */
159					stuib_cfg {
160						pins = "GPIO82_C1", "GPIO83_D3";
161						ste,config = <&gpio_in_pu>;
162					};
163				};
164			};
165			magnetometer {
166				magneto_stuib_mode: magneto_stuib {
167					/* Magnetometer uses GPIO 31 and 32, pull these up/down respectively */
168					stuib_cfg1 {
169						pins = "GPIO31_V3";
170						ste,config = <&gpio_in_pu>;
171					};
172					stuib_cfg2 {
173						pins = "GPIO32_V2";
174						ste,config = <&gpio_in_pd>;
175					};
176				};
177			};
178			touch {
179				touch_rohm_mode: touch_rohm {
180					/*
181					 * ROHM touch screen uses GPIO 143 for
182					 * RST1, GPIO 146 for RST2 and
183					 * GPIO 67 for interrupts. Pull-up
184					 * the IRQ line and drive both
185					 * reset signals low.
186					 */
187					stuib_cfg1 {
188						pins = "GPIO143_D12", "GPIO146_D13";
189						ste,config = <&gpio_out_lo>;
190					};
191					stuib_cfg2 {
192						pins = "GPIO67_G2";
193						ste,config = <&gpio_in_pu>;
194					};
195				};
196			};
197		};
198
199		mcde@a0350000 {
200			status = "okay";
201
202			dsi@a0351000 {
203				panel {
204					compatible = "samsung,s6d16d0";
205					reg = <0>;
206					vdd1-supply = <&ab8500_ldo_aux1_reg>;
207					reset-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
208				};
209			};
210		};
211	};
212};