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}; 213