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 0x4>; 26 linux,code = <11>; /* SW_FRONT_PROXIMITY */ 27 label = "SFH7741 Proximity Sensor"; 28 }; 29 button@145 { 30 /* Hall sensor */ 31 gpios = <&gpio4 17 0x4>; 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@0f { 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 }; 118 119 bu21013_tp@5d { 120 compatible = "rohm,bu21013_tp"; 121 reg = <0x5d>; 122 avdd-supply = <&ab8500_ldo_aux1_reg>; 123 124 rohm,touch-max-x = <384>; 125 rohm,touch-max-y = <704>; 126 rohm,flip-y; 127 }; 128 }; 129 130 pinctrl { 131 prox { 132 prox_stuib_mode: prox_stuib { 133 stuib_cfg { 134 pins = "GPIO217_AH12"; 135 ste,config = <&gpio_in_pu>; 136 }; 137 }; 138 }; 139 hall { 140 hall_stuib_mode: stuib_tvk { 141 stuib_cfg { 142 pins = "GPIO145_C13"; 143 ste,config = <&gpio_in_pu>; 144 }; 145 }; 146 }; 147 accelerometer { 148 accel_stuib_mode: accel_stuib { 149 /* Accelerometer interrupt lines 1 & 2 */ 150 stuib_cfg { 151 pins = "GPIO82_C1", "GPIO83_D3"; 152 ste,config = <&gpio_in_pu>; 153 }; 154 }; 155 }; 156 magnetometer { 157 magneto_stuib_mode: magneto_stuib { 158 /* Magnetometer uses GPIO 31 and 32, pull these up/down respectively */ 159 stuib_cfg1 { 160 pins = "GPIO31_V3"; 161 ste,config = <&gpio_in_pu>; 162 }; 163 stuib_cfg2 { 164 pins = "GPIO32_V2"; 165 ste,config = <&gpio_in_pd>; 166 }; 167 }; 168 }; 169 }; 170 }; 171}; 172