Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003  * Copyright 2012 ST-Ericsson AB
0004  */
0005 
0006 #include <dt-bindings/interrupt-controller/irq.h>
0007 
0008 / {
0009         gpio_keys {
0010                 compatible = "gpio-keys";
0011                 #address-cells = <1>;
0012                 #size-cells = <0>;
0013                 vdd-supply = <&ab8500_ldo_aux1_reg>;
0014                 pinctrl-names = "default";
0015                 pinctrl-0 = <&prox_stuib_mode>, <&hall_stuib_mode>;
0016 
0017                 button@139 {
0018                         /* Proximity sensor */
0019                         gpios = <&gpio6 25 GPIO_ACTIVE_HIGH>;
0020                         linux,code = <11>; /* SW_FRONT_PROXIMITY */
0021                         label = "SFH7741 Proximity Sensor";
0022                 };
0023                 button@145 {
0024                         /* Hall sensor */
0025                         gpios = <&gpio4 17 GPIO_ACTIVE_HIGH>;
0026                         linux,code = <0>; /* SW_LID */
0027                         label = "HED54XXU11 Hall Effect Sensor";
0028                 };
0029         };
0030 
0031         soc {
0032                 i2c@80004000 {
0033                         stmpe1601: stmpe1601@40 {
0034                                 compatible = "st,stmpe1601";
0035                                 reg = <0x40>;
0036                                 interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
0037                                 interrupt-parent = <&gpio6>;
0038                                 interrupt-controller;
0039                                 vcc-supply = <&db8500_vsmps2_reg>;
0040                                 vio-supply = <&db8500_vsmps2_reg>;
0041                                 pinctrl-names = "default";
0042                                 pinctrl-0 = <&stmpe_stuib_mode>;
0043 
0044                                 wakeup-source;
0045                                 st,autosleep-timeout = <1024>;
0046 
0047                                 stmpe_keypad {
0048                                         compatible = "st,stmpe-keypad";
0049 
0050                                         debounce-interval = <64>;
0051                                         st,scan-count = <8>;
0052                                         st,no-autorepeat;
0053 
0054                                         linux,keymap = <0x205006b
0055                                                         0x4010074
0056                                                         0x3050072
0057                                                         0x1030004
0058                                                         0x502006a
0059                                                         0x500000a
0060                                                         0x5008b
0061                                                         0x706001c
0062                                                         0x405000b
0063                                                         0x6070003
0064                                                         0x3040067
0065                                                         0x303006c
0066                                                         0x60400e7
0067                                                         0x602009e
0068                                                         0x4020073
0069                                                         0x5050002
0070                                                         0x4030069
0071                                                         0x3020008>;
0072                                 };
0073                         };
0074                 };
0075 
0076                 /* Sensors mounted on this board variant */
0077                 i2c@80128000 {
0078                         lis331dl@1c {
0079                                 /* Accelerometer */
0080                                 compatible = "st,lis331dl-accel";
0081                                 st,drdy-int-pin = <1>;
0082                                 reg = <0x1c>;
0083                                 vdd-supply = <&ab8500_ldo_aux1_reg>;
0084                                 vddio-supply = <&db8500_vsmps2_reg>;
0085                                 pinctrl-names = "default";
0086                                 pinctrl-0 = <&accel_stuib_mode>;
0087                                 interrupt-parent = <&gpio2>;
0088                                 interrupts = <18 IRQ_TYPE_EDGE_RISING>,
0089                                              <19 IRQ_TYPE_EDGE_RISING>;
0090                         };
0091                         ak8974@f {
0092                                 /* Magnetometer */
0093                                 compatible = "asahi-kasei,ak8974";
0094                                 reg = <0x0f>;
0095                                 vdd-supply = <&ab8500_ldo_aux1_reg>;
0096                                 vddio-supply = <&db8500_vsmps2_reg>;
0097                                 pinctrl-names = "default";
0098                                 pinctrl-0 = <&magneto_stuib_mode>;
0099                                 interrupt-parent = <&gpio1>;
0100                                 interrupts = <0 IRQ_TYPE_EDGE_RISING>;
0101                         };
0102                 };
0103 
0104                 i2c@80110000 {
0105                         bu21013_tp@5c {
0106                                 compatible = "rohm,bu21013_tp";
0107                                 reg = <0x5c>;
0108                                 avdd-supply = <&ab8500_ldo_aux1_reg>;
0109 
0110                                 rohm,touch-max-x = <384>;
0111                                 rohm,touch-max-y = <704>;
0112                                 rohm,flip-y;
0113                                 pinctrl-names = "default";
0114                                 pinctrl-0 = <&touch_rohm_mode>;
0115                         };
0116 
0117                         bu21013_tp@5d {
0118                                 compatible = "rohm,bu21013_tp";
0119                                 reg = <0x5d>;
0120                                 avdd-supply = <&ab8500_ldo_aux1_reg>;
0121 
0122                                 rohm,touch-max-x = <384>;
0123                                 rohm,touch-max-y = <704>;
0124                                 rohm,flip-y;
0125                                 pinctrl-names = "default";
0126                                 pinctrl-0 = <&touch_rohm_mode>;
0127                         };
0128                 };
0129 
0130                 pinctrl {
0131                         /* Pull up this GPIO pin */
0132                         stmpe {
0133                                 stmpe_stuib_mode: stmpe_stuib {
0134                                         stuib_cfg {
0135                                                 ste,pins = "GPIO218_AH11";
0136                                                 ste,config = <&gpio_in_pu>;
0137                                         };
0138                                 };
0139                         };
0140                         prox {
0141                                 prox_stuib_mode: prox_stuib {
0142                                         stuib_cfg {
0143                                                 pins = "GPIO217_AH12";
0144                                                 ste,config = <&gpio_in_pu>;
0145                                         };
0146                                 };
0147                         };
0148                         hall {
0149                                 hall_stuib_mode: stuib_tvk {
0150                                         stuib_cfg {
0151                                                 pins = "GPIO145_C13";
0152                                                 ste,config = <&gpio_in_pu>;
0153                                         };
0154                                 };
0155                         };
0156                         accelerometer {
0157                                 accel_stuib_mode: accel_stuib {
0158                                         /* Accelerometer interrupt lines 1 & 2 */
0159                                         stuib_cfg {
0160                                                 pins = "GPIO82_C1", "GPIO83_D3";
0161                                                 ste,config = <&gpio_in_pu>;
0162                                         };
0163                                 };
0164                         };
0165                         magnetometer {
0166                                 magneto_stuib_mode: magneto_stuib {
0167                                         /* Magnetometer uses GPIO 31 and 32, pull these up/down respectively */
0168                                         stuib_cfg1 {
0169                                                 pins = "GPIO31_V3";
0170                                                 ste,config = <&gpio_in_pu>;
0171                                         };
0172                                         stuib_cfg2 {
0173                                                 pins = "GPIO32_V2";
0174                                                 ste,config = <&gpio_in_pd>;
0175                                         };
0176                                 };
0177                         };
0178                         touch {
0179                                 touch_rohm_mode: touch_rohm {
0180                                         /*
0181                                          * ROHM touch screen uses GPIO 143 for
0182                                          * RST1, GPIO 146 for RST2 and
0183                                          * GPIO 67 for interrupts. Pull-up
0184                                          * the IRQ line and drive both
0185                                          * reset signals low.
0186                                          */
0187                                         stuib_cfg1 {
0188                                                 pins = "GPIO143_D12", "GPIO146_D13";
0189                                                 ste,config = <&gpio_out_lo>;
0190                                         };
0191                                         stuib_cfg2 {
0192                                                 pins = "GPIO67_G2";
0193                                                 ste,config = <&gpio_in_pu>;
0194                                         };
0195                                 };
0196                         };
0197                 };
0198 
0199                 mcde@a0350000 {
0200                         status = "okay";
0201 
0202                         dsi@a0351000 {
0203                                 panel {
0204                                         compatible = "samsung,s6d16d0";
0205                                         reg = <0>;
0206                                         vdd1-supply = <&ab8500_ldo_aux1_reg>;
0207                                         reset-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
0208                                 };
0209                         };
0210                 };
0211         };
0212 };