1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Devicetree for the Samsung Galaxy Amp SGH-I407 also known as Kyle. 4*f126890aSEmmanuel Vadot * 5*f126890aSEmmanuel Vadot * The code also refers to "Kyle AT&T" reflecting that this mobile phone 6*f126890aSEmmanuel Vadot * was customized for the AT&T subsidiary Aio Wireless (All In One) and 7*f126890aSEmmanuel Vadot * offered by the company in 2013. 8*f126890aSEmmanuel Vadot */ 9*f126890aSEmmanuel Vadot 10*f126890aSEmmanuel Vadot/dts-v1/; 11*f126890aSEmmanuel Vadot#include "ste-db8500.dtsi" 12*f126890aSEmmanuel Vadot#include "ste-ab8505.dtsi" 13*f126890aSEmmanuel Vadot#include "ste-dbx5x0-pinctrl.dtsi" 14*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 15*f126890aSEmmanuel Vadot#include <dt-bindings/leds/common.h> 16*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h> 17*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 18*f126890aSEmmanuel Vadot 19*f126890aSEmmanuel Vadot/ { 20*f126890aSEmmanuel Vadot model = "Samsung Galaxy Amp (SGH-I407)"; 21*f126890aSEmmanuel Vadot compatible = "samsung,kyle", "st-ericsson,u8500"; 22*f126890aSEmmanuel Vadot 23*f126890aSEmmanuel Vadot chosen { 24*f126890aSEmmanuel Vadot stdout-path = &serial2; 25*f126890aSEmmanuel Vadot }; 26*f126890aSEmmanuel Vadot 27*f126890aSEmmanuel Vadot battery: battery { 28*f126890aSEmmanuel Vadot compatible = "samsung,eb425161la"; 29*f126890aSEmmanuel Vadot }; 30*f126890aSEmmanuel Vadot 31*f126890aSEmmanuel Vadot thermal-zones { 32*f126890aSEmmanuel Vadot battery-thermal { 33*f126890aSEmmanuel Vadot /* This zone will be polled by the battery temperature code */ 34*f126890aSEmmanuel Vadot polling-delay = <0>; 35*f126890aSEmmanuel Vadot polling-delay-passive = <0>; 36*f126890aSEmmanuel Vadot thermal-sensors = <&bat_therm>; 37*f126890aSEmmanuel Vadot 38*f126890aSEmmanuel Vadot trips { 39*f126890aSEmmanuel Vadot battery-crit-hi { 40*f126890aSEmmanuel Vadot temperature = <70000>; 41*f126890aSEmmanuel Vadot hysteresis = <2000>; 42*f126890aSEmmanuel Vadot type = "critical"; 43*f126890aSEmmanuel Vadot }; 44*f126890aSEmmanuel Vadot }; 45*f126890aSEmmanuel Vadot }; 46*f126890aSEmmanuel Vadot }; 47*f126890aSEmmanuel Vadot 48*f126890aSEmmanuel Vadot bat_therm: thermistor { 49*f126890aSEmmanuel Vadot compatible = "samsung,1404-001221"; 50*f126890aSEmmanuel Vadot io-channels = <&gpadc 0x02>; /* BatTemp */ 51*f126890aSEmmanuel Vadot pullup-uv = <1800000>; 52*f126890aSEmmanuel Vadot pullup-ohm = <230000>; 53*f126890aSEmmanuel Vadot pulldown-ohm = <0>; 54*f126890aSEmmanuel Vadot #thermal-sensor-cells = <0>; 55*f126890aSEmmanuel Vadot }; 56*f126890aSEmmanuel Vadot 57*f126890aSEmmanuel Vadot /* TI TXS0206 level translator for 2.9 V */ 58*f126890aSEmmanuel Vadot sd_level_translator: regulator-gpio { 59*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 60*f126890aSEmmanuel Vadot 61*f126890aSEmmanuel Vadot /* GPIO87 EN */ 62*f126890aSEmmanuel Vadot gpios = <&gpio2 23 GPIO_ACTIVE_HIGH>; 63*f126890aSEmmanuel Vadot enable-active-high; 64*f126890aSEmmanuel Vadot 65*f126890aSEmmanuel Vadot regulator-name = "sd-level-translator"; 66*f126890aSEmmanuel Vadot regulator-min-microvolt = <2900000>; 67*f126890aSEmmanuel Vadot regulator-max-microvolt = <2900000>; 68*f126890aSEmmanuel Vadot regulator-type = "voltage"; 69*f126890aSEmmanuel Vadot 70*f126890aSEmmanuel Vadot startup-delay-us = <200>; 71*f126890aSEmmanuel Vadot 72*f126890aSEmmanuel Vadot pinctrl-names = "default"; 73*f126890aSEmmanuel Vadot pinctrl-0 = <&sd_level_translator_default>; 74*f126890aSEmmanuel Vadot }; 75*f126890aSEmmanuel Vadot 76*f126890aSEmmanuel Vadot /* External LDO MIC5366-3.3YMT for eMMC */ 77*f126890aSEmmanuel Vadot ldo_3v3_reg: regulator-gpio-ldo-3v3 { 78*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 79*f126890aSEmmanuel Vadot regulator-name = "en-3v3-fixed-supply"; 80*f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 81*f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 82*f126890aSEmmanuel Vadot gpio = <&gpio6 31 GPIO_ACTIVE_HIGH>; 83*f126890aSEmmanuel Vadot startup-delay-us = <5000>; 84*f126890aSEmmanuel Vadot enable-active-high; 85*f126890aSEmmanuel Vadot pinctrl-names = "default"; 86*f126890aSEmmanuel Vadot pinctrl-0 = <&emmc_ldo_en_default_mode>; 87*f126890aSEmmanuel Vadot }; 88*f126890aSEmmanuel Vadot 89*f126890aSEmmanuel Vadot /* 90*f126890aSEmmanuel Vadot * External Ricoh RP152L010B-TR LCD LDO regulator for the display. 91*f126890aSEmmanuel Vadot * LCD_PWR_EN controls both a 3.0V and 1.8V output. 92*f126890aSEmmanuel Vadot */ 93*f126890aSEmmanuel Vadot lcd_3v0_reg: regulator-gpio-lcd-3v0 { 94*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 95*f126890aSEmmanuel Vadot /* Supplied in turn by VBAT */ 96*f126890aSEmmanuel Vadot regulator-name = "VREG_LCD_3V0"; 97*f126890aSEmmanuel Vadot regulator-min-microvolt = <3000000>; 98*f126890aSEmmanuel Vadot regulator-max-microvolt = <3000000>; 99*f126890aSEmmanuel Vadot /* GPIO219 controls this regulator */ 100*f126890aSEmmanuel Vadot gpio = <&gpio6 27 GPIO_ACTIVE_HIGH>; 101*f126890aSEmmanuel Vadot enable-active-high; 102*f126890aSEmmanuel Vadot pinctrl-names = "default"; 103*f126890aSEmmanuel Vadot pinctrl-0 = <&lcd_pwr_en_default_mode>; 104*f126890aSEmmanuel Vadot }; 105*f126890aSEmmanuel Vadot lcd_1v8_reg: regulator-gpio-lcd-1v8 { 106*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 107*f126890aSEmmanuel Vadot /* Supplied in turn by VBAT */ 108*f126890aSEmmanuel Vadot regulator-name = "VREG_LCD_1V8"; 109*f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 110*f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 111*f126890aSEmmanuel Vadot /* GPIO219 controls this regulator too */ 112*f126890aSEmmanuel Vadot gpio = <&gpio6 27 GPIO_ACTIVE_HIGH>; 113*f126890aSEmmanuel Vadot enable-active-high; 114*f126890aSEmmanuel Vadot pinctrl-names = "default"; 115*f126890aSEmmanuel Vadot pinctrl-0 = <&lcd_pwr_en_default_mode>; 116*f126890aSEmmanuel Vadot }; 117*f126890aSEmmanuel Vadot 118*f126890aSEmmanuel Vadot wlan_en: regulator-gpio-wlan-en { 119*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 120*f126890aSEmmanuel Vadot regulator-name = "wl-reg-on"; 121*f126890aSEmmanuel Vadot regulator-min-microvolt = <3000000>; 122*f126890aSEmmanuel Vadot regulator-max-microvolt = <3000000>; 123*f126890aSEmmanuel Vadot startup-delay-us = <200000>; 124*f126890aSEmmanuel Vadot /* GPIO215 WLAN_EN */ 125*f126890aSEmmanuel Vadot gpio = <&gpio6 23 GPIO_ACTIVE_HIGH>; 126*f126890aSEmmanuel Vadot enable-active-high; 127*f126890aSEmmanuel Vadot pinctrl-names = "default"; 128*f126890aSEmmanuel Vadot pinctrl-0 = <&wlan_en_default_mode>; 129*f126890aSEmmanuel Vadot }; 130*f126890aSEmmanuel Vadot 131*f126890aSEmmanuel Vadot vibrator { 132*f126890aSEmmanuel Vadot compatible = "gpio-vibrator"; 133*f126890aSEmmanuel Vadot enable-gpios = <&gpio6 3 GPIO_ACTIVE_HIGH>; 134*f126890aSEmmanuel Vadot pinctrl-names = "default"; 135*f126890aSEmmanuel Vadot pinctrl-0 = <&vibrator_default>; 136*f126890aSEmmanuel Vadot }; 137*f126890aSEmmanuel Vadot 138*f126890aSEmmanuel Vadot gpio-keys { 139*f126890aSEmmanuel Vadot compatible = "gpio-keys"; 140*f126890aSEmmanuel Vadot pinctrl-names = "default"; 141*f126890aSEmmanuel Vadot pinctrl-0 = <&gpio_keys_default_mode>; 142*f126890aSEmmanuel Vadot 143*f126890aSEmmanuel Vadot button-home { 144*f126890aSEmmanuel Vadot linux,code = <KEY_HOME>; 145*f126890aSEmmanuel Vadot label = "HOME"; 146*f126890aSEmmanuel Vadot /* GPIO91 */ 147*f126890aSEmmanuel Vadot gpios = <&gpio2 27 GPIO_ACTIVE_LOW>; 148*f126890aSEmmanuel Vadot }; 149*f126890aSEmmanuel Vadot button-volup { 150*f126890aSEmmanuel Vadot linux,code = <KEY_VOLUMEUP>; 151*f126890aSEmmanuel Vadot label = "VOL+"; 152*f126890aSEmmanuel Vadot /* GPIO67 */ 153*f126890aSEmmanuel Vadot gpios = <&gpio2 3 GPIO_ACTIVE_LOW>; 154*f126890aSEmmanuel Vadot }; 155*f126890aSEmmanuel Vadot button-voldown { 156*f126890aSEmmanuel Vadot linux,code = <KEY_VOLUMEDOWN>; 157*f126890aSEmmanuel Vadot label = "VOL-"; 158*f126890aSEmmanuel Vadot /* GPIO92 */ 159*f126890aSEmmanuel Vadot gpios = <&gpio2 28 GPIO_ACTIVE_LOW>; 160*f126890aSEmmanuel Vadot }; 161*f126890aSEmmanuel Vadot }; 162*f126890aSEmmanuel Vadot 163*f126890aSEmmanuel Vadot ktd253: backlight { 164*f126890aSEmmanuel Vadot compatible = "kinetic,ktd253"; 165*f126890aSEmmanuel Vadot /* GPIO 69 */ 166*f126890aSEmmanuel Vadot enable-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; 167*f126890aSEmmanuel Vadot /* Default to 13/32 brightness */ 168*f126890aSEmmanuel Vadot default-brightness = <13>; 169*f126890aSEmmanuel Vadot pinctrl-names = "default"; 170*f126890aSEmmanuel Vadot pinctrl-0 = <&gpio_backlight_default_mode>; 171*f126890aSEmmanuel Vadot }; 172*f126890aSEmmanuel Vadot 173*f126890aSEmmanuel Vadot /* Richtek RT8515GQW Flash LED Driver IC */ 174*f126890aSEmmanuel Vadot flash { 175*f126890aSEmmanuel Vadot compatible = "richtek,rt8515"; 176*f126890aSEmmanuel Vadot /* GPIO 140 */ 177*f126890aSEmmanuel Vadot enf-gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>; 178*f126890aSEmmanuel Vadot /* GPIO 141 */ 179*f126890aSEmmanuel Vadot ent-gpios = <&gpio4 13 GPIO_ACTIVE_HIGH>; 180*f126890aSEmmanuel Vadot /* 181*f126890aSEmmanuel Vadot * RFS is 16 kOhm and RTS is 100 kOhm giving 182*f126890aSEmmanuel Vadot * the flash max current 343mA and torch max 183*f126890aSEmmanuel Vadot * current 55 mA. 184*f126890aSEmmanuel Vadot */ 185*f126890aSEmmanuel Vadot richtek,rfs-ohms = <16000>; 186*f126890aSEmmanuel Vadot richtek,rts-ohms = <100000>; 187*f126890aSEmmanuel Vadot pinctrl-names = "default"; 188*f126890aSEmmanuel Vadot pinctrl-0 = <&gpio_flash_default_mode>; 189*f126890aSEmmanuel Vadot 190*f126890aSEmmanuel Vadot led { 191*f126890aSEmmanuel Vadot function = LED_FUNCTION_FLASH; 192*f126890aSEmmanuel Vadot color = <LED_COLOR_ID_WHITE>; 193*f126890aSEmmanuel Vadot flash-max-timeout-us = <250000>; 194*f126890aSEmmanuel Vadot flash-max-microamp = <343750>; 195*f126890aSEmmanuel Vadot led-max-microamp = <55000>; 196*f126890aSEmmanuel Vadot }; 197*f126890aSEmmanuel Vadot }; 198*f126890aSEmmanuel Vadot 199*f126890aSEmmanuel Vadot i2c-gpio-0 { 200*f126890aSEmmanuel Vadot compatible = "i2c-gpio"; 201*f126890aSEmmanuel Vadot sda-gpios = <&gpio4 16 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 202*f126890aSEmmanuel Vadot scl-gpios = <&gpio4 15 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 203*f126890aSEmmanuel Vadot pinctrl-names = "default"; 204*f126890aSEmmanuel Vadot pinctrl-0 = <&i2c_gpio_0_default>; 205*f126890aSEmmanuel Vadot #address-cells = <1>; 206*f126890aSEmmanuel Vadot #size-cells = <0>; 207*f126890aSEmmanuel Vadot /* TODO: this should be used by the NCP6914 Camera power management unit */ 208*f126890aSEmmanuel Vadot }; 209*f126890aSEmmanuel Vadot 210*f126890aSEmmanuel Vadot i2c-gpio-1 { 211*f126890aSEmmanuel Vadot compatible = "i2c-gpio"; 212*f126890aSEmmanuel Vadot sda-gpios = <&gpio4 24 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 213*f126890aSEmmanuel Vadot scl-gpios = <&gpio4 23 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; 214*f126890aSEmmanuel Vadot pinctrl-names = "default"; 215*f126890aSEmmanuel Vadot pinctrl-0 = <&i2c_gpio_1_default>; 216*f126890aSEmmanuel Vadot #address-cells = <1>; 217*f126890aSEmmanuel Vadot #size-cells = <0>; 218*f126890aSEmmanuel Vadot magnetometer@c { 219*f126890aSEmmanuel Vadot compatible = "alps,hscdtd008a"; 220*f126890aSEmmanuel Vadot reg = <0x0c>; 221*f126890aSEmmanuel Vadot avdd-supply = <&ab8500_ldo_aux1_reg>; 222*f126890aSEmmanuel Vadot dvdd-supply = <&ab8500_ldo_aux6_reg>; 223*f126890aSEmmanuel Vadot }; 224*f126890aSEmmanuel Vadot }; 225*f126890aSEmmanuel Vadot 226*f126890aSEmmanuel Vadot soc { 227*f126890aSEmmanuel Vadot // External Micro SD slot 228*f126890aSEmmanuel Vadot mmc@80126000 { 229*f126890aSEmmanuel Vadot arm,primecell-periphid = <0x10480180>; 230*f126890aSEmmanuel Vadot max-frequency = <100000000>; 231*f126890aSEmmanuel Vadot bus-width = <4>; 232*f126890aSEmmanuel Vadot cap-sd-highspeed; 233*f126890aSEmmanuel Vadot cap-mmc-highspeed; 234*f126890aSEmmanuel Vadot st,sig-pin-fbclk; 235*f126890aSEmmanuel Vadot full-pwr-cycle; 236*f126890aSEmmanuel Vadot vmmc-supply = <&ab8500_ldo_aux3_reg>; 237*f126890aSEmmanuel Vadot vqmmc-supply = <&sd_level_translator>; 238*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 239*f126890aSEmmanuel Vadot pinctrl-0 = <&mc0_a_1_default>; 240*f126890aSEmmanuel Vadot pinctrl-1 = <&mc0_a_1_sleep>; 241*f126890aSEmmanuel Vadot cd-gpios = <&gpio6 25 GPIO_ACTIVE_LOW>; // GPIO217 242*f126890aSEmmanuel Vadot status = "okay"; 243*f126890aSEmmanuel Vadot }; 244*f126890aSEmmanuel Vadot 245*f126890aSEmmanuel Vadot // WLAN SDIO channel 246*f126890aSEmmanuel Vadot mmc@80118000 { 247*f126890aSEmmanuel Vadot arm,primecell-periphid = <0x10480180>; 248*f126890aSEmmanuel Vadot max-frequency = <50000000>; 249*f126890aSEmmanuel Vadot bus-width = <4>; 250*f126890aSEmmanuel Vadot non-removable; 251*f126890aSEmmanuel Vadot cap-sd-highspeed; 252*f126890aSEmmanuel Vadot vmmc-supply = <&wlan_en>; 253*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 254*f126890aSEmmanuel Vadot pinctrl-0 = <&mc1_a_2_default>; 255*f126890aSEmmanuel Vadot pinctrl-1 = <&mc1_a_2_sleep>; 256*f126890aSEmmanuel Vadot status = "okay"; 257*f126890aSEmmanuel Vadot #address-cells = <1>; 258*f126890aSEmmanuel Vadot #size-cells = <0>; 259*f126890aSEmmanuel Vadot 260*f126890aSEmmanuel Vadot wifi@1 { 261*f126890aSEmmanuel Vadot compatible = "brcm,bcm4334-fmac", "brcm,bcm4329-fmac"; 262*f126890aSEmmanuel Vadot reg = <1>; 263*f126890aSEmmanuel Vadot /* GPIO216 WL_HOST_WAKE */ 264*f126890aSEmmanuel Vadot interrupt-parent = <&gpio6>; 265*f126890aSEmmanuel Vadot interrupts = <24 IRQ_TYPE_EDGE_FALLING>; 266*f126890aSEmmanuel Vadot interrupt-names = "host-wake"; 267*f126890aSEmmanuel Vadot pinctrl-names = "default"; 268*f126890aSEmmanuel Vadot pinctrl-0 = <&wlan_default_mode>; 269*f126890aSEmmanuel Vadot }; 270*f126890aSEmmanuel Vadot }; 271*f126890aSEmmanuel Vadot 272*f126890aSEmmanuel Vadot /* 273*f126890aSEmmanuel Vadot * eMMC seems to be mostly Samsung KLM4G1YE4C "4YMD1R" 274*f126890aSEmmanuel Vadot */ 275*f126890aSEmmanuel Vadot mmc@80005000 { 276*f126890aSEmmanuel Vadot arm,primecell-periphid = <0x10480180>; 277*f126890aSEmmanuel Vadot max-frequency = <100000000>; 278*f126890aSEmmanuel Vadot bus-width = <8>; 279*f126890aSEmmanuel Vadot non-removable; 280*f126890aSEmmanuel Vadot cap-mmc-highspeed; 281*f126890aSEmmanuel Vadot mmc-ddr-1_8v; 282*f126890aSEmmanuel Vadot no-sdio; 283*f126890aSEmmanuel Vadot no-sd; 284*f126890aSEmmanuel Vadot /* From datasheet page 26 figure 9: 300 ms set-up time for 4GB */ 285*f126890aSEmmanuel Vadot post-power-on-delay-ms = <300>; 286*f126890aSEmmanuel Vadot vmmc-supply = <&ldo_3v3_reg>; 287*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 288*f126890aSEmmanuel Vadot pinctrl-0 = <&mc2_a_1_default>; 289*f126890aSEmmanuel Vadot pinctrl-1 = <&mc2_a_1_sleep>; 290*f126890aSEmmanuel Vadot 291*f126890aSEmmanuel Vadot status = "okay"; 292*f126890aSEmmanuel Vadot }; 293*f126890aSEmmanuel Vadot 294*f126890aSEmmanuel Vadot /* GBF (Bluetooth) UART */ 295*f126890aSEmmanuel Vadot serial@80120000 { 296*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 297*f126890aSEmmanuel Vadot pinctrl-0 = <&u0_a_1_default>; 298*f126890aSEmmanuel Vadot pinctrl-1 = <&u0_a_1_sleep>; 299*f126890aSEmmanuel Vadot status = "okay"; 300*f126890aSEmmanuel Vadot 301*f126890aSEmmanuel Vadot bluetooth { 302*f126890aSEmmanuel Vadot /* BCM4334B0 actually */ 303*f126890aSEmmanuel Vadot compatible = "brcm,bcm4330-bt"; 304*f126890aSEmmanuel Vadot shutdown-gpios = <&gpio6 30 GPIO_ACTIVE_HIGH>; 305*f126890aSEmmanuel Vadot device-wakeup-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>; 306*f126890aSEmmanuel Vadot host-wakeup-gpios = <&gpio3 1 GPIO_ACTIVE_HIGH>; 307*f126890aSEmmanuel Vadot pinctrl-names = "default"; 308*f126890aSEmmanuel Vadot pinctrl-0 = <&bluetooth_default_mode>; 309*f126890aSEmmanuel Vadot }; 310*f126890aSEmmanuel Vadot }; 311*f126890aSEmmanuel Vadot 312*f126890aSEmmanuel Vadot /* GPF UART */ 313*f126890aSEmmanuel Vadot serial@80121000 { 314*f126890aSEmmanuel Vadot status = "okay"; 315*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 316*f126890aSEmmanuel Vadot pinctrl-0 = <&u1rxtx_a_1_default &u1ctsrts_a_1_default>; 317*f126890aSEmmanuel Vadot pinctrl-1 = <&u1rxtx_a_1_sleep &u1ctsrts_a_1_sleep>; 318*f126890aSEmmanuel Vadot 319*f126890aSEmmanuel Vadot gnss { 320*f126890aSEmmanuel Vadot /* The CSRG05TA03-ICJE-R is a SirfStarV 5t chip */ 321*f126890aSEmmanuel Vadot compatible = "csr,csrg05ta03-icje-r"; 322*f126890aSEmmanuel Vadot /* GPS_RSTN on GPIO21 */ 323*f126890aSEmmanuel Vadot reset-gpios = <&gpio0 21 GPIO_ACTIVE_LOW>; 324*f126890aSEmmanuel Vadot /* GPS_ON_OFF on GPIO86 */ 325*f126890aSEmmanuel Vadot sirf,onoff-gpios = <&gpio2 22 GPIO_ACTIVE_HIGH>; 326*f126890aSEmmanuel Vadot /* GPS_1V8 (VSMPS2) */ 327*f126890aSEmmanuel Vadot vcc-supply = <&db8500_vsmps2_reg>; 328*f126890aSEmmanuel Vadot pinctrl-names = "default"; 329*f126890aSEmmanuel Vadot pinctrl-0 = <&g05ta03_kyle_default>; 330*f126890aSEmmanuel Vadot /* According to /etc/sirfgps.conf */ 331*f126890aSEmmanuel Vadot current-speed = <460800>; 332*f126890aSEmmanuel Vadot }; 333*f126890aSEmmanuel Vadot }; 334*f126890aSEmmanuel Vadot 335*f126890aSEmmanuel Vadot /* Debugging console UART connected to AB8505 USB */ 336*f126890aSEmmanuel Vadot serial@80007000 { 337*f126890aSEmmanuel Vadot status = "okay"; 338*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 339*f126890aSEmmanuel Vadot pinctrl-0 = <&u2rxtx_c_1_default>; 340*f126890aSEmmanuel Vadot pinctrl-1 = <&u2rxtx_c_1_sleep>; 341*f126890aSEmmanuel Vadot }; 342*f126890aSEmmanuel Vadot 343*f126890aSEmmanuel Vadot prcmu@80157000 { 344*f126890aSEmmanuel Vadot ab8505 { 345*f126890aSEmmanuel Vadot phy { 346*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 347*f126890aSEmmanuel Vadot pinctrl-0 = <&usb_a_1_default>; 348*f126890aSEmmanuel Vadot pinctrl-1 = <&usb_a_1_sleep>; 349*f126890aSEmmanuel Vadot }; 350*f126890aSEmmanuel Vadot 351*f126890aSEmmanuel Vadot ab8500_fg { 352*f126890aSEmmanuel Vadot line-impedance-micro-ohms = <36000>; 353*f126890aSEmmanuel Vadot }; 354*f126890aSEmmanuel Vadot 355*f126890aSEmmanuel Vadot regulator { 356*f126890aSEmmanuel Vadot ab8500_ldo_aux1 { 357*f126890aSEmmanuel Vadot /* Used for VDD for sensors */ 358*f126890aSEmmanuel Vadot regulator-name = "AUX1"; 359*f126890aSEmmanuel Vadot regulator-min-microvolt = <3000000>; 360*f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 361*f126890aSEmmanuel Vadot }; 362*f126890aSEmmanuel Vadot 363*f126890aSEmmanuel Vadot ab8500_ldo_aux2 { 364*f126890aSEmmanuel Vadot /* Supplies the MMS touchscreen only with 3.3V */ 365*f126890aSEmmanuel Vadot regulator-name = "AUX2"; 366*f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 367*f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 368*f126890aSEmmanuel Vadot }; 369*f126890aSEmmanuel Vadot 370*f126890aSEmmanuel Vadot ab8500_ldo_aux3 { 371*f126890aSEmmanuel Vadot /* Used for voltage for external MMC/SD card */ 372*f126890aSEmmanuel Vadot regulator-name = "AUX3"; 373*f126890aSEmmanuel Vadot regulator-min-microvolt = <1100000>; 374*f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 375*f126890aSEmmanuel Vadot }; 376*f126890aSEmmanuel Vadot 377*f126890aSEmmanuel Vadot ab8500_ldo_aux4 { 378*f126890aSEmmanuel Vadot regulator-name = "AUX4"; 379*f126890aSEmmanuel Vadot /* Hammer to 3.3V for the touchscreen */ 380*f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 381*f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 382*f126890aSEmmanuel Vadot }; 383*f126890aSEmmanuel Vadot 384*f126890aSEmmanuel Vadot ab8500_ldo_aux5 { 385*f126890aSEmmanuel Vadot regulator-name = "AUX5"; 386*f126890aSEmmanuel Vadot /* 1.8V for the touchscreen */ 387*f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 388*f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 389*f126890aSEmmanuel Vadot }; 390*f126890aSEmmanuel Vadot 391*f126890aSEmmanuel Vadot ab8500_ldo_aux6 { 392*f126890aSEmmanuel Vadot regulator-name = "AUX6"; 393*f126890aSEmmanuel Vadot /* Used by sensors for 1.8 V in R0.1+ */ 394*f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 395*f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 396*f126890aSEmmanuel Vadot }; 397*f126890aSEmmanuel Vadot 398*f126890aSEmmanuel Vadot ab8500_ldo_aux8 { 399*f126890aSEmmanuel Vadot /* Unused */ 400*f126890aSEmmanuel Vadot regulator-name = "AUX8"; 401*f126890aSEmmanuel Vadot }; 402*f126890aSEmmanuel Vadot }; 403*f126890aSEmmanuel Vadot }; 404*f126890aSEmmanuel Vadot }; 405*f126890aSEmmanuel Vadot 406*f126890aSEmmanuel Vadot /* I2C0 */ 407*f126890aSEmmanuel Vadot i2c@80004000 { 408*f126890aSEmmanuel Vadot status = "okay"; 409*f126890aSEmmanuel Vadot 410*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 411*f126890aSEmmanuel Vadot pinctrl-0 = <&i2c0_a_1_default>; 412*f126890aSEmmanuel Vadot pinctrl-1 = <&i2c0_a_1_sleep>; 413*f126890aSEmmanuel Vadot 414*f126890aSEmmanuel Vadot proximity@44 { 415*f126890aSEmmanuel Vadot compatible = "sharp,gp2ap002s00f"; 416*f126890aSEmmanuel Vadot clock-frequency = <400000>; 417*f126890aSEmmanuel Vadot reg = <0x44>; 418*f126890aSEmmanuel Vadot 419*f126890aSEmmanuel Vadot interrupt-parent = <&gpio4>; 420*f126890aSEmmanuel Vadot interrupts = <18 IRQ_TYPE_EDGE_FALLING>; 421*f126890aSEmmanuel Vadot vdd-supply = <&ab8500_ldo_aux1_reg>; 422*f126890aSEmmanuel Vadot vio-supply = <&ab8500_ldo_aux6_reg>; 423*f126890aSEmmanuel Vadot pinctrl-names = "default"; 424*f126890aSEmmanuel Vadot pinctrl-0 = <&gp2ap002_kyle_default>; 425*f126890aSEmmanuel Vadot sharp,proximity-far-hysteresis = /bits/ 8 <0x2f>; 426*f126890aSEmmanuel Vadot sharp,proximity-close-hysteresis = /bits/ 8 <0x0f>; 427*f126890aSEmmanuel Vadot }; 428*f126890aSEmmanuel Vadot }; 429*f126890aSEmmanuel Vadot 430*f126890aSEmmanuel Vadot /* I2C2 */ 431*f126890aSEmmanuel Vadot i2c@80128000 { 432*f126890aSEmmanuel Vadot status = "okay"; 433*f126890aSEmmanuel Vadot 434*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 435*f126890aSEmmanuel Vadot pinctrl-0 = <&i2c2_b_2_default>; 436*f126890aSEmmanuel Vadot pinctrl-1 = <&i2c2_b_2_sleep>; 437*f126890aSEmmanuel Vadot 438*f126890aSEmmanuel Vadot accel@18 { 439*f126890aSEmmanuel Vadot compatible = "bosch,bma254"; 440*f126890aSEmmanuel Vadot clock-frequency = <400000>; 441*f126890aSEmmanuel Vadot reg = <0x18>; 442*f126890aSEmmanuel Vadot 443*f126890aSEmmanuel Vadot mount-matrix = "-1", "0", "0", 444*f126890aSEmmanuel Vadot "0", "-1", "0", 445*f126890aSEmmanuel Vadot "0", "0", "-1"; 446*f126890aSEmmanuel Vadot vdd-supply = <&ab8500_ldo_aux1_reg>; 447*f126890aSEmmanuel Vadot vddio-supply = <&ab8500_ldo_aux6_reg>; 448*f126890aSEmmanuel Vadot }; 449*f126890aSEmmanuel Vadot }; 450*f126890aSEmmanuel Vadot 451*f126890aSEmmanuel Vadot /* I2C3 */ 452*f126890aSEmmanuel Vadot i2c@80110000 { 453*f126890aSEmmanuel Vadot status = "okay"; 454*f126890aSEmmanuel Vadot 455*f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 456*f126890aSEmmanuel Vadot pinctrl-0 = <&i2c3_c_2_default>; 457*f126890aSEmmanuel Vadot pinctrl-1 = <&i2c3_c_2_sleep>; 458*f126890aSEmmanuel Vadot 459*f126890aSEmmanuel Vadot /* Melfas MMS134S touchscreen */ 460*f126890aSEmmanuel Vadot touchscreen@48 { 461*f126890aSEmmanuel Vadot compatible = "melfas,mms134s"; 462*f126890aSEmmanuel Vadot reg = <0x48>; 463*f126890aSEmmanuel Vadot /* GPIO218 for IRQ */ 464*f126890aSEmmanuel Vadot interrupt-parent = <&gpio6>; 465*f126890aSEmmanuel Vadot interrupts = <26 IRQ_TYPE_EDGE_FALLING>; 466*f126890aSEmmanuel Vadot /* AVDD is "analog supply", 2.57-3.47 V */ 467*f126890aSEmmanuel Vadot avdd-supply = <&ab8500_ldo_aux2_reg>; 468*f126890aSEmmanuel Vadot /* VDD is "digital supply" 1.71-3.47V */ 469*f126890aSEmmanuel Vadot vdd-supply = <&ab8500_ldo_aux5_reg>; 470*f126890aSEmmanuel Vadot 471*f126890aSEmmanuel Vadot touchscreen-size-x = <480>; 472*f126890aSEmmanuel Vadot touchscreen-size-y = <800>; 473*f126890aSEmmanuel Vadot 474*f126890aSEmmanuel Vadot pinctrl-names = "default"; 475*f126890aSEmmanuel Vadot pinctrl-0 = <&mms134s_kyle_default>; 476*f126890aSEmmanuel Vadot }; 477*f126890aSEmmanuel Vadot }; 478*f126890aSEmmanuel Vadot 479*f126890aSEmmanuel Vadot mcde@a0350000 { 480*f126890aSEmmanuel Vadot status = "okay"; 481*f126890aSEmmanuel Vadot pinctrl-names = "default"; 482*f126890aSEmmanuel Vadot pinctrl-0 = <&dsi_default_mode>; 483*f126890aSEmmanuel Vadot 484*f126890aSEmmanuel Vadot dsi@a0351000 { 485*f126890aSEmmanuel Vadot panel { 486*f126890aSEmmanuel Vadot /* 487*f126890aSEmmanuel Vadot * NT35510-based Hydis HVA40WV1 488*f126890aSEmmanuel Vadot * Apparently some Kyle models can have a NT35512 fitted 489*f126890aSEmmanuel Vadot * here instead. In that case the boot loader needs to 490*f126890aSEmmanuel Vadot * modify this compatible. 491*f126890aSEmmanuel Vadot */ 492*f126890aSEmmanuel Vadot compatible = "hydis,hva40wv1", "novatek,nt35510"; 493*f126890aSEmmanuel Vadot reg = <0>; 494*f126890aSEmmanuel Vadot /* v_lcd_3v0 2.3-4.8V */ 495*f126890aSEmmanuel Vadot vdd-supply = <&lcd_3v0_reg>; 496*f126890aSEmmanuel Vadot /* v_lcd_1v8 1.65-3.3V */ 497*f126890aSEmmanuel Vadot vddi-supply = <&lcd_1v8_reg>; 498*f126890aSEmmanuel Vadot /* GPIO 139 */ 499*f126890aSEmmanuel Vadot reset-gpios = <&gpio4 11 GPIO_ACTIVE_LOW>; 500*f126890aSEmmanuel Vadot pinctrl-names = "default"; 501*f126890aSEmmanuel Vadot pinctrl-0 = <&display_default_mode>; 502*f126890aSEmmanuel Vadot backlight = <&ktd253>; 503*f126890aSEmmanuel Vadot }; 504*f126890aSEmmanuel Vadot }; 505*f126890aSEmmanuel Vadot }; 506*f126890aSEmmanuel Vadot }; 507*f126890aSEmmanuel Vadot}; 508*f126890aSEmmanuel Vadot 509*f126890aSEmmanuel Vadot&pinctrl { 510*f126890aSEmmanuel Vadot /* 511*f126890aSEmmanuel Vadot * This extends the MC0_A_1 default config to include 512*f126890aSEmmanuel Vadot * the card detect GPIO217 line. 513*f126890aSEmmanuel Vadot */ 514*f126890aSEmmanuel Vadot sdi0 { 515*f126890aSEmmanuel Vadot mc0_a_1_default { 516*f126890aSEmmanuel Vadot default_cfg1 { 517*f126890aSEmmanuel Vadot /* GPIO18, 19 & 20 unused so pull down */ 518*f126890aSEmmanuel Vadot ste,config = <&gpio_in_pd>; 519*f126890aSEmmanuel Vadot }; 520*f126890aSEmmanuel Vadot default_cfg4 { 521*f126890aSEmmanuel Vadot pins = "GPIO217_AH12"; /* card detect */ 522*f126890aSEmmanuel Vadot ste,config = <&gpio_in_pd>; 523*f126890aSEmmanuel Vadot }; 524*f126890aSEmmanuel Vadot }; 525*f126890aSEmmanuel Vadot }; 526*f126890aSEmmanuel Vadot 527*f126890aSEmmanuel Vadot mcde { 528*f126890aSEmmanuel Vadot dsi_default_mode: dsi_default { 529*f126890aSEmmanuel Vadot default_mux1 { 530*f126890aSEmmanuel Vadot /* Mux in VSI0 used for DSI TE */ 531*f126890aSEmmanuel Vadot function = "lcd"; 532*f126890aSEmmanuel Vadot groups = "lcdvsi0_a_1"; /* VSI0 for LCD */ 533*f126890aSEmmanuel Vadot }; 534*f126890aSEmmanuel Vadot default_cfg1 { 535*f126890aSEmmanuel Vadot pins = "GPIO68_E1"; /* VSI0 */ 536*f126890aSEmmanuel Vadot ste,config = <&in_nopull>; 537*f126890aSEmmanuel Vadot }; 538*f126890aSEmmanuel Vadot }; 539*f126890aSEmmanuel Vadot }; 540*f126890aSEmmanuel Vadot 541*f126890aSEmmanuel Vadot /* Two GPIO lines used by the display */ 542*f126890aSEmmanuel Vadot display { 543*f126890aSEmmanuel Vadot display_default_mode: display_default { 544*f126890aSEmmanuel Vadot kyle_cfg1 { 545*f126890aSEmmanuel Vadot /* 546*f126890aSEmmanuel Vadot * OLED DETECT or check_pba, this appears to be high 547*f126890aSEmmanuel Vadot * on "PBA" which I guess is "prototype board A". 548*f126890aSEmmanuel Vadot */ 549*f126890aSEmmanuel Vadot pins = "GPIO93_B7"; 550*f126890aSEmmanuel Vadot ste,config = <&gpio_in_nopull>; 551*f126890aSEmmanuel Vadot }; 552*f126890aSEmmanuel Vadot kyle_cfg2 { 553*f126890aSEmmanuel Vadot pins = "GPIO139_C9"; 554*f126890aSEmmanuel Vadot /* 555*f126890aSEmmanuel Vadot * MIPI_DSI0_RESET_N resets the display, leave high 556*f126890aSEmmanuel Vadot * (de-asserted) so we only assert reset explicitly 557*f126890aSEmmanuel Vadot * from the display driver. 558*f126890aSEmmanuel Vadot */ 559*f126890aSEmmanuel Vadot ste,config = <&gpio_out_hi>; 560*f126890aSEmmanuel Vadot }; 561*f126890aSEmmanuel Vadot }; 562*f126890aSEmmanuel Vadot }; 563*f126890aSEmmanuel Vadot 564*f126890aSEmmanuel Vadot /* GPIO that enables the LDO regulator for the LCD display */ 565*f126890aSEmmanuel Vadot lcd-ldo { 566*f126890aSEmmanuel Vadot lcd_pwr_en_default_mode: lcd_pwr_en_default { 567*f126890aSEmmanuel Vadot /* LCD_PWR_EN on GPIO219 */ 568*f126890aSEmmanuel Vadot kyle_cfg1 { 569*f126890aSEmmanuel Vadot pins = "GPIO219_AG10"; 570*f126890aSEmmanuel Vadot ste,config = <&gpio_out_hi>; 571*f126890aSEmmanuel Vadot }; 572*f126890aSEmmanuel Vadot }; 573*f126890aSEmmanuel Vadot }; 574*f126890aSEmmanuel Vadot 575*f126890aSEmmanuel Vadot backlight { 576*f126890aSEmmanuel Vadot gpio_backlight_default_mode: backlight_default { 577*f126890aSEmmanuel Vadot kyle_cfg1 { 578*f126890aSEmmanuel Vadot pins = "GPIO69_E2"; /* LCD_BL_CTRL */ 579*f126890aSEmmanuel Vadot ste,config = <&gpio_out_lo>; 580*f126890aSEmmanuel Vadot }; 581*f126890aSEmmanuel Vadot }; 582*f126890aSEmmanuel Vadot }; 583*f126890aSEmmanuel Vadot flash { 584*f126890aSEmmanuel Vadot gpio_flash_default_mode: flash_default { 585*f126890aSEmmanuel Vadot kyle_cfg1 { 586*f126890aSEmmanuel Vadot pins = "GPIO140_B11", "GPIO141_C12"; 587*f126890aSEmmanuel Vadot ste,config = <&gpio_out_lo>; 588*f126890aSEmmanuel Vadot }; 589*f126890aSEmmanuel Vadot }; 590*f126890aSEmmanuel Vadot }; 591*f126890aSEmmanuel Vadot /* GPIO that enables the 2.9V SD card level translator */ 592*f126890aSEmmanuel Vadot sd-level-translator { 593*f126890aSEmmanuel Vadot sd_level_translator_default: sd_level_translator_default { 594*f126890aSEmmanuel Vadot /* level shifter on GPIO87 */ 595*f126890aSEmmanuel Vadot kyle_cfg1 { 596*f126890aSEmmanuel Vadot pins = "GPIO87_B3"; 597*f126890aSEmmanuel Vadot ste,config = <&gpio_out_hi>; 598*f126890aSEmmanuel Vadot }; 599*f126890aSEmmanuel Vadot }; 600*f126890aSEmmanuel Vadot }; 601*f126890aSEmmanuel Vadot /* GPIO that enables the LDO regulator for the eMMC */ 602*f126890aSEmmanuel Vadot emmc-ldo { 603*f126890aSEmmanuel Vadot emmc_ldo_en_default_mode: emmc_ldo_default { 604*f126890aSEmmanuel Vadot /* LDO enable on GPIO223 */ 605*f126890aSEmmanuel Vadot kyle_cfg1 { 606*f126890aSEmmanuel Vadot pins = "GPIO223_AH9"; 607*f126890aSEmmanuel Vadot ste,config = <&gpio_out_hi>; 608*f126890aSEmmanuel Vadot }; 609*f126890aSEmmanuel Vadot }; 610*f126890aSEmmanuel Vadot }; 611*f126890aSEmmanuel Vadot /* GPIO keys */ 612*f126890aSEmmanuel Vadot gpio-keys { 613*f126890aSEmmanuel Vadot gpio_keys_default_mode: gpio_keys_default { 614*f126890aSEmmanuel Vadot kyle_cfg1 { 615*f126890aSEmmanuel Vadot pins = "GPIO67_G2", /* VOL UP */ 616*f126890aSEmmanuel Vadot "GPIO91_B6", /* HOME */ 617*f126890aSEmmanuel Vadot "GPIO92_D6"; /* VOL DOWN */ 618*f126890aSEmmanuel Vadot ste,config = <&gpio_in_pu>; 619*f126890aSEmmanuel Vadot }; 620*f126890aSEmmanuel Vadot }; 621*f126890aSEmmanuel Vadot }; 622*f126890aSEmmanuel Vadot /* Interrupt line for light/proximity sensor GP2AP002 */ 623*f126890aSEmmanuel Vadot gp2ap002 { 624*f126890aSEmmanuel Vadot gp2ap002_kyle_default: gp2ap002_kyle { 625*f126890aSEmmanuel Vadot kyle_cfg1 { 626*f126890aSEmmanuel Vadot pins = "GPIO146_D13"; 627*f126890aSEmmanuel Vadot ste,config = <&gpio_in_nopull>; 628*f126890aSEmmanuel Vadot }; 629*f126890aSEmmanuel Vadot }; 630*f126890aSEmmanuel Vadot }; 631*f126890aSEmmanuel Vadot /* GPIO-based I2C bus for NCP6914 */ 632*f126890aSEmmanuel Vadot i2c-gpio-0 { 633*f126890aSEmmanuel Vadot i2c_gpio_0_default: i2c_gpio_0 { 634*f126890aSEmmanuel Vadot kyle_cfg1 { 635*f126890aSEmmanuel Vadot pins = "GPIO143_D12", "GPIO144_B13"; 636*f126890aSEmmanuel Vadot ste,config = <&gpio_in_nopull>; 637*f126890aSEmmanuel Vadot }; 638*f126890aSEmmanuel Vadot }; 639*f126890aSEmmanuel Vadot }; 640*f126890aSEmmanuel Vadot /* GPIO-based I2C bus for ALPS HSCD compass */ 641*f126890aSEmmanuel Vadot i2c-gpio-1 { 642*f126890aSEmmanuel Vadot i2c_gpio_1_default: i2c_gpio_1 { 643*f126890aSEmmanuel Vadot kyle_cfg1 { 644*f126890aSEmmanuel Vadot pins = "GPIO151_B17", "GPIO152_D16"; 645*f126890aSEmmanuel Vadot ste,config = <&gpio_in_nopull>; 646*f126890aSEmmanuel Vadot }; 647*f126890aSEmmanuel Vadot }; 648*f126890aSEmmanuel Vadot }; 649*f126890aSEmmanuel Vadot wlan { 650*f126890aSEmmanuel Vadot wlan_default_mode: wlan_default { 651*f126890aSEmmanuel Vadot kyle_cfg1 { 652*f126890aSEmmanuel Vadot pins = "GPIO216_AG12"; 653*f126890aSEmmanuel Vadot ste,config = <&gpio_in_pd>; 654*f126890aSEmmanuel Vadot }; 655*f126890aSEmmanuel Vadot }; 656*f126890aSEmmanuel Vadot wlan_en_default_mode: wlan_en_default { 657*f126890aSEmmanuel Vadot kyle_cfg2 { 658*f126890aSEmmanuel Vadot pins = "GPIO215_AH13"; 659*f126890aSEmmanuel Vadot ste,config = <&gpio_out_lo>; 660*f126890aSEmmanuel Vadot }; 661*f126890aSEmmanuel Vadot }; 662*f126890aSEmmanuel Vadot }; 663*f126890aSEmmanuel Vadot bluetooth { 664*f126890aSEmmanuel Vadot bluetooth_default_mode: bluetooth_default { 665*f126890aSEmmanuel Vadot kyle_cfg1 { 666*f126890aSEmmanuel Vadot pins = "GPIO199_AH23", "GPIO222_AJ9"; 667*f126890aSEmmanuel Vadot ste,config = <&gpio_out_lo>; 668*f126890aSEmmanuel Vadot }; 669*f126890aSEmmanuel Vadot kyle_cfg2 { 670*f126890aSEmmanuel Vadot pins = "GPIO97_D9"; 671*f126890aSEmmanuel Vadot ste,config = <&gpio_in_nopull>; 672*f126890aSEmmanuel Vadot }; 673*f126890aSEmmanuel Vadot }; 674*f126890aSEmmanuel Vadot }; 675*f126890aSEmmanuel Vadot vibrator { 676*f126890aSEmmanuel Vadot vibrator_default: vibrator_default { 677*f126890aSEmmanuel Vadot kyle_cfg1 { 678*f126890aSEmmanuel Vadot pins = "GPIO195_AG28"; /* MOT_EN */ 679*f126890aSEmmanuel Vadot ste,config = <&gpio_out_lo>; 680*f126890aSEmmanuel Vadot }; 681*f126890aSEmmanuel Vadot }; 682*f126890aSEmmanuel Vadot }; 683*f126890aSEmmanuel Vadot /* Interrupt line for the Melfas MMS134S touchscreen */ 684*f126890aSEmmanuel Vadot touchscreen { 685*f126890aSEmmanuel Vadot mms134s_kyle_default: mms134s_kyle { 686*f126890aSEmmanuel Vadot kyle_cfg1 { 687*f126890aSEmmanuel Vadot pins = "GPIO218_AH11"; 688*f126890aSEmmanuel Vadot ste,config = <&gpio_in_nopull>; 689*f126890aSEmmanuel Vadot }; 690*f126890aSEmmanuel Vadot }; 691*f126890aSEmmanuel Vadot }; 692*f126890aSEmmanuel Vadot g05ta03 { 693*f126890aSEmmanuel Vadot g05ta03_kyle_default: g05ta03 { 694*f126890aSEmmanuel Vadot /* Reset line, start out de-asserted */ 695*f126890aSEmmanuel Vadot kyle_cfg1 { 696*f126890aSEmmanuel Vadot pins = "GPIO21_AB3"; 697*f126890aSEmmanuel Vadot ste,config = <&gpio_out_hi>; 698*f126890aSEmmanuel Vadot }; 699*f126890aSEmmanuel Vadot /* GPS_ON_OFF, start out deasserted (off) */ 700*f126890aSEmmanuel Vadot kyle_cfg2 { 701*f126890aSEmmanuel Vadot pins = "GPIO86_C6"; 702*f126890aSEmmanuel Vadot ste,config = <&gpio_out_lo>; 703*f126890aSEmmanuel Vadot }; 704*f126890aSEmmanuel Vadot }; 705*f126890aSEmmanuel Vadot }; 706*f126890aSEmmanuel Vadot}; 707*f126890aSEmmanuel Vadot 708*f126890aSEmmanuel Vadot&ab8505_gpio { 709*f126890aSEmmanuel Vadot /* Hog a few default settings */ 710*f126890aSEmmanuel Vadot pinctrl-names = "default"; 711*f126890aSEmmanuel Vadot pinctrl-0 = <&gpio_default>; 712*f126890aSEmmanuel Vadot 713*f126890aSEmmanuel Vadot gpio { 714*f126890aSEmmanuel Vadot gpio_default: gpio_default { 715*f126890aSEmmanuel Vadot kyle_mux { 716*f126890aSEmmanuel Vadot /* Change unused pins to GPIO mode */ 717*f126890aSEmmanuel Vadot function = "gpio"; 718*f126890aSEmmanuel Vadot groups = "gpio3_a_1", /* default: SysClkReq4 */ 719*f126890aSEmmanuel Vadot "gpio14_a_1"; /* default: PWMOut1 */ 720*f126890aSEmmanuel Vadot }; 721*f126890aSEmmanuel Vadot kyle_cfg1 { 722*f126890aSEmmanuel Vadot pins = "GPIO11_B17", "GPIO13_D17", "GPIO50_L4"; 723*f126890aSEmmanuel Vadot bias-disable; 724*f126890aSEmmanuel Vadot }; 725*f126890aSEmmanuel Vadot }; 726*f126890aSEmmanuel Vadot }; 727*f126890aSEmmanuel Vadot}; 728