1724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2724ba675SRob Herring#include <dt-bindings/input/input.h> 3724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 4724ba675SRob Herring#include <dt-bindings/leds/common.h> 5724ba675SRob Herring#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 6724ba675SRob Herring#include <dt-bindings/pinctrl/qcom,pmic-mpp.h> 7724ba675SRob Herring#include "qcom-msm8660.dtsi" 8724ba675SRob Herring 9724ba675SRob Herring/ { 10724ba675SRob Herring model = "Qualcomm APQ8060 Dragonboard"; 11724ba675SRob Herring compatible = "qcom,apq8060-dragonboard", "qcom,msm8660"; 12724ba675SRob Herring 13724ba675SRob Herring aliases { 14724ba675SRob Herring serial0 = &gsbi12_serial; 15724ba675SRob Herring }; 16724ba675SRob Herring 17724ba675SRob Herring chosen { 18724ba675SRob Herring stdout-path = "serial0:115200n8"; 19724ba675SRob Herring }; 20724ba675SRob Herring 21724ba675SRob Herring /* Main power of the board: 3.7V */ 22724ba675SRob Herring vph: regulator-fixed { 23724ba675SRob Herring compatible = "regulator-fixed"; 24724ba675SRob Herring regulator-min-microvolt = <3700000>; 25724ba675SRob Herring regulator-max-microvolt = <3700000>; 26724ba675SRob Herring regulator-name = "VPH"; 27724ba675SRob Herring regulator-type = "voltage"; 28724ba675SRob Herring regulator-always-on; 29724ba675SRob Herring regulator-boot-on; 30724ba675SRob Herring }; 31724ba675SRob Herring 32724ba675SRob Herring /* GPIO controlled ethernet power regulator */ 33724ba675SRob Herring dragon_veth: xc622a331mrg { 34724ba675SRob Herring compatible = "regulator-fixed"; 35724ba675SRob Herring regulator-name = "XC6222A331MR-G"; 36724ba675SRob Herring regulator-min-microvolt = <3300000>; 37724ba675SRob Herring regulator-max-microvolt = <3300000>; 38724ba675SRob Herring vin-supply = <&vph>; 39724ba675SRob Herring gpio = <&pm8058_gpio 40 GPIO_ACTIVE_HIGH>; 40724ba675SRob Herring enable-active-high; 41724ba675SRob Herring pinctrl-names = "default"; 42724ba675SRob Herring pinctrl-0 = <&dragon_veth_gpios>; 43724ba675SRob Herring regulator-always-on; 44724ba675SRob Herring }; 45724ba675SRob Herring 46724ba675SRob Herring /* VDDvario fixed regulator */ 47724ba675SRob Herring dragon_vario: nds332p { 48724ba675SRob Herring compatible = "regulator-fixed"; 49724ba675SRob Herring regulator-name = "NDS332P"; 50724ba675SRob Herring regulator-min-microvolt = <1800000>; 51724ba675SRob Herring regulator-max-microvolt = <1800000>; 52724ba675SRob Herring vin-supply = <&pm8058_s3>; 53724ba675SRob Herring }; 54724ba675SRob Herring 55724ba675SRob Herring /* This is a levelshifter for SDCC5 */ 56724ba675SRob Herring dragon_vio_txb: txb0104rgyr { 57724ba675SRob Herring compatible = "regulator-fixed"; 58724ba675SRob Herring regulator-name = "Dragon SDCC levelshifter"; 59724ba675SRob Herring vin-supply = <&pm8058_l14>; 60724ba675SRob Herring regulator-always-on; 61724ba675SRob Herring }; 62724ba675SRob Herring 63724ba675SRob Herring /* 64724ba675SRob Herring * Capella CM3605 light and proximity sensor mounted directly 65724ba675SRob Herring * on the sensor board. 66724ba675SRob Herring */ 67724ba675SRob Herring cm3605 { 68724ba675SRob Herring compatible = "capella,cm3605"; 69724ba675SRob Herring vdd-supply = <&pm8058_l14>; // 2.85V 70724ba675SRob Herring aset-gpios = <&pm8058_gpio 35 GPIO_ACTIVE_LOW>; 71724ba675SRob Herring capella,aset-resistance-ohms = <100000>; 72724ba675SRob Herring /* Trig on both edges - getting close or far away */ 73724ba675SRob Herring interrupts-extended = <&pm8058_gpio 34 IRQ_TYPE_EDGE_BOTH>; 74724ba675SRob Herring /* MPP05 analog input to the XOADC */ 75*b01dbb6cSDmitry Baryshkov io-channels = <&pm8058_xoadc 0x00 0x05>; 76724ba675SRob Herring io-channel-names = "aout"; 77724ba675SRob Herring pinctrl-names = "default"; 78724ba675SRob Herring pinctrl-0 = <&dragon_cm3605_gpios>, <&dragon_cm3605_mpps>; 79724ba675SRob Herring }; 80724ba675SRob Herring}; 81724ba675SRob Herring 82724ba675SRob Herring&ebi2 { 83724ba675SRob Herring /* The EBI2 will instantiate first, then populate its children */ 84724ba675SRob Herring pinctrl-names = "default"; 85724ba675SRob Herring pinctrl-0 = <&dragon_ebi2_pins>; 86724ba675SRob Herring status = "okay"; 87724ba675SRob Herring 88724ba675SRob Herring /* 89724ba675SRob Herring * An on-board SMSC LAN9221 chip for "debug ethernet", 90724ba675SRob Herring * which is actually just an ordinary ethernet on the 91724ba675SRob Herring * EBI2. This has a 25MHz chrystal next to it, so no 92724ba675SRob Herring * clocking is needed. 93724ba675SRob Herring */ 94724ba675SRob Herring ethernet@2,0 { 95724ba675SRob Herring compatible = "smsc,lan9221", "smsc,lan9115"; 96724ba675SRob Herring reg = <2 0x0 0x100>; 97724ba675SRob Herring /* 98724ba675SRob Herring * The second interrupt is the PME interrupt 99724ba675SRob Herring * for network wakeup, connected to the TLMM. 100724ba675SRob Herring */ 101724ba675SRob Herring interrupts-extended = <&pm8058_gpio 7 IRQ_TYPE_EDGE_FALLING>, 102724ba675SRob Herring <&tlmm 29 IRQ_TYPE_EDGE_RISING>; 103724ba675SRob Herring reset-gpios = <&tlmm 30 GPIO_ACTIVE_LOW>; 104724ba675SRob Herring vdd33a-supply = <&dragon_veth>; 105724ba675SRob Herring vddvario-supply = <&dragon_vario>; 106724ba675SRob Herring pinctrl-names = "default"; 107724ba675SRob Herring pinctrl-0 = <&dragon_ethernet_gpios>; 108724ba675SRob Herring phy-mode = "mii"; 109724ba675SRob Herring reg-io-width = <2>; 110724ba675SRob Herring smsc,force-external-phy; 111724ba675SRob Herring smsc,irq-push-pull; 112724ba675SRob Herring 113724ba675SRob Herring /* 114724ba675SRob Herring * SLOW chipselect config 115724ba675SRob Herring * Delay 9 cycles (140ns@64MHz) between SMSC 116724ba675SRob Herring * LAN9221 Ethernet controller reads and writes 117724ba675SRob Herring * on CS2. 118724ba675SRob Herring */ 119724ba675SRob Herring qcom,xmem-recovery-cycles = <0>; 120724ba675SRob Herring qcom,xmem-write-hold-cycles = <3>; 121724ba675SRob Herring qcom,xmem-write-delta-cycles = <31>; 122724ba675SRob Herring qcom,xmem-read-delta-cycles = <28>; 123724ba675SRob Herring qcom,xmem-write-wait-cycles = <9>; 124724ba675SRob Herring qcom,xmem-read-wait-cycles = <9>; 125724ba675SRob Herring }; 126724ba675SRob Herring}; 127724ba675SRob Herring 128724ba675SRob Herring&gsbi3 { 129724ba675SRob Herring qcom,mode = <GSBI_PROT_I2C>; 130724ba675SRob Herring status = "okay"; 131724ba675SRob Herring}; 132724ba675SRob Herring 133724ba675SRob Herring&gsbi3_i2c { 134724ba675SRob Herring pinctrl-names = "default"; 135724ba675SRob Herring pinctrl-0 = <&dragon_gsbi3_i2c_pins>; 136724ba675SRob Herring status = "okay"; 137724ba675SRob Herring 138724ba675SRob Herring touchscreen@24 { 139724ba675SRob Herring compatible = "cypress,cy8ctma340"; 140724ba675SRob Herring reg = <0x24>; 141724ba675SRob Herring /* Certainly we can do at least 400 kHz */ 142724ba675SRob Herring clock-frequency = <400000>; 143724ba675SRob Herring /* IRQ on GPIO61 called /CTP_INT */ 144724ba675SRob Herring interrupt-parent = <&tlmm>; 145724ba675SRob Herring interrupts = <61 IRQ_TYPE_EDGE_FALLING>; 146724ba675SRob Herring /* 147724ba675SRob Herring * The I2C bus is using a PCA9306 level translator from L16A 148724ba675SRob Herring * to L2B so these two voltages are needed and L16A is 149724ba675SRob Herring * kind of the IO voltage, however L16Aisn't really fed to 150724ba675SRob Herring * the TMA340, which relies entirely on L2B (PM8901 L2). 151724ba675SRob Herring */ 152724ba675SRob Herring vcpin-supply = <&pm8058_l16>; 153724ba675SRob Herring vdd-supply = <&pm8901_l2>; 154724ba675SRob Herring /* GPIO58, called WAKE_CTP */ 155724ba675SRob Herring reset-gpios = <&tlmm 58 GPIO_ACTIVE_LOW>; 156724ba675SRob Herring touchscreen-size-x = <480>; 157724ba675SRob Herring touchscreen-size-y = <800>; 158724ba675SRob Herring active-interval-ms = <0>; 159724ba675SRob Herring touch-timeout-ms = <255>; 160724ba675SRob Herring lowpower-interval-ms = <10>; 161724ba675SRob Herring bootloader-key = /bits/ 8 <0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07>; 162724ba675SRob Herring pinctrl-names = "default"; 163724ba675SRob Herring pinctrl-0 = <&dragon_tma340_gpios>; 164724ba675SRob Herring }; 165724ba675SRob Herring}; 166724ba675SRob Herring 167724ba675SRob Herring&gsbi8 { 168724ba675SRob Herring qcom,mode = <GSBI_PROT_I2C>; 169724ba675SRob Herring status = "okay"; 170724ba675SRob Herring}; 171724ba675SRob Herring 172724ba675SRob Herring&gsbi8_i2c { 173724ba675SRob Herring pinctrl-names = "default"; 174724ba675SRob Herring pinctrl-0 = <&dragon_gsbi8_i2c_pins>; 175724ba675SRob Herring status = "okay"; 176724ba675SRob Herring 177724ba675SRob Herring eeprom@52 { 178724ba675SRob Herring /* A 16KiB Platform ID EEPROM on the CPU carrier board */ 179724ba675SRob Herring compatible = "atmel,24c128"; 180724ba675SRob Herring reg = <0x52>; 181724ba675SRob Herring vcc-supply = <&pm8058_s3>; 182724ba675SRob Herring pagesize = <64>; 183724ba675SRob Herring }; 184724ba675SRob Herring wm8903: wm8903@1a { 185724ba675SRob Herring /* This Woolfson Micro device has an unrouted interrupt line */ 186724ba675SRob Herring compatible = "wlf,wm8903"; 187724ba675SRob Herring reg = <0x1a>; 188724ba675SRob Herring 189724ba675SRob Herring AVDD-supply = <&pm8058_l16>; 190724ba675SRob Herring CPVDD-supply = <&pm8058_l16>; 191724ba675SRob Herring DBVDD-supply = <&pm8058_s3>; 192724ba675SRob Herring DCVDD-supply = <&pm8058_l0>; 193724ba675SRob Herring 194724ba675SRob Herring gpio-controller; 195724ba675SRob Herring #gpio-cells = <2>; 196724ba675SRob Herring 197724ba675SRob Herring micdet-cfg = <0>; 198724ba675SRob Herring micdet-delay = <100>; 199724ba675SRob Herring gpio-cfg = <0xffffffff 0xffffffff 0 0xffffffff 0xffffffff>; 200724ba675SRob Herring }; 201724ba675SRob Herring}; 202724ba675SRob Herring 203724ba675SRob Herring&gsbi12 { 204724ba675SRob Herring qcom,mode = <GSBI_PROT_I2C_UART>; 205724ba675SRob Herring status = "okay"; 206724ba675SRob Herring}; 207724ba675SRob Herring 208724ba675SRob Herring&gsbi12_serial { 209724ba675SRob Herring pinctrl-names = "default"; 210724ba675SRob Herring pinctrl-0 = <&dragon_gsbi12_serial_pins>; 211724ba675SRob Herring status = "okay"; 212724ba675SRob Herring}; 213724ba675SRob Herring 214724ba675SRob Herring&gsbi12_i2c { 215724ba675SRob Herring pinctrl-names = "default"; 216724ba675SRob Herring pinctrl-0 = <&dragon_gsbi12_i2c_pins>; 217724ba675SRob Herring status = "okay"; 218724ba675SRob Herring 219724ba675SRob Herring ak8975@c { 220724ba675SRob Herring compatible = "asahi-kasei,ak8975"; 221724ba675SRob Herring reg = <0x0c>; 222724ba675SRob Herring interrupt-parent = <&pm8058_gpio>; 223724ba675SRob Herring interrupts = <33 IRQ_TYPE_EDGE_RISING>; 224724ba675SRob Herring pinctrl-names = "default"; 225724ba675SRob Herring pinctrl-0 = <&dragon_ak8975_gpios>; 226724ba675SRob Herring vid-supply = <&pm8058_lvs0>; // 1.8V 227724ba675SRob Herring vdd-supply = <&pm8058_l14>; // 2.85V 228724ba675SRob Herring }; 229724ba675SRob Herring bmp085@77 { 230724ba675SRob Herring compatible = "bosch,bmp085"; 231724ba675SRob Herring reg = <0x77>; 232724ba675SRob Herring interrupt-parent = <&pm8058_gpio>; 233724ba675SRob Herring interrupts = <16 IRQ_TYPE_EDGE_RISING>; 234724ba675SRob Herring reset-gpios = <&tlmm 86 GPIO_ACTIVE_LOW>; 235724ba675SRob Herring pinctrl-names = "default"; 236724ba675SRob Herring pinctrl-0 = <&dragon_bmp085_gpios>; 237724ba675SRob Herring vddd-supply = <&pm8058_lvs0>; // 1.8V 238724ba675SRob Herring vdda-supply = <&pm8058_l14>; // 2.85V 239724ba675SRob Herring }; 240724ba675SRob Herring mpu3050@68 { 241724ba675SRob Herring compatible = "invensense,mpu3050"; 242724ba675SRob Herring reg = <0x68>; 243724ba675SRob Herring /* 244724ba675SRob Herring * GPIO17 is pulled high by a 10k 245724ba675SRob Herring * resistor to VLOGIC so needs to be 246724ba675SRob Herring * active low/falling edge. 247724ba675SRob Herring */ 248724ba675SRob Herring interrupts-extended = <&pm8058_gpio 17 IRQ_TYPE_EDGE_FALLING>; 249724ba675SRob Herring pinctrl-names = "default"; 250724ba675SRob Herring pinctrl-0 = <&dragon_mpu3050_gpios>; 251724ba675SRob Herring vlogic-supply = <&pm8058_lvs0>; // 1.8V 252724ba675SRob Herring vdd-supply = <&pm8058_l14>; // 2.85V 253724ba675SRob Herring 254724ba675SRob Herring /* 255724ba675SRob Herring * The MPU-3050 acts as a hub for the 256724ba675SRob Herring * accelerometer. 257724ba675SRob Herring */ 258724ba675SRob Herring i2c-gate { 259724ba675SRob Herring #address-cells = <1>; 260724ba675SRob Herring #size-cells = <0>; 261724ba675SRob Herring 262724ba675SRob Herring kxsd9@18 { 263724ba675SRob Herring compatible = "kionix,kxsd9"; 264724ba675SRob Herring reg = <0x18>; 265724ba675SRob Herring interrupt-parent = <&tlmm>; 266724ba675SRob Herring interrupts = <57 IRQ_TYPE_EDGE_FALLING>; 267724ba675SRob Herring pinctrl-names = "default"; 268724ba675SRob Herring pinctrl-0 = <&dragon_kxsd9_gpios>; 269724ba675SRob Herring iovdd-supply = <&pm8058_lvs0>; // 1.8V 270724ba675SRob Herring vdd-supply = <&pm8058_l14>; // 2.85V 271724ba675SRob Herring }; 272724ba675SRob Herring }; 273724ba675SRob Herring }; 274724ba675SRob Herring}; 275724ba675SRob Herring 276724ba675SRob Herring&pm8058_gpio { 277724ba675SRob Herring dragon_ethernet_gpios: ethernet-state { 278724ba675SRob Herring pinconf { 279724ba675SRob Herring pins = "gpio7"; 280724ba675SRob Herring function = "normal"; 281724ba675SRob Herring input-enable; 282724ba675SRob Herring bias-disable; 283724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 284724ba675SRob Herring }; 285724ba675SRob Herring }; 286724ba675SRob Herring dragon_bmp085_gpios: bmp085-state { 287724ba675SRob Herring pinconf { 288724ba675SRob Herring pins = "gpio16"; 289724ba675SRob Herring function = "normal"; 290724ba675SRob Herring input-enable; 291724ba675SRob Herring bias-disable; 292724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 293724ba675SRob Herring }; 294724ba675SRob Herring }; 295724ba675SRob Herring dragon_mpu3050_gpios: mpu3050-state { 296724ba675SRob Herring pinconf { 297724ba675SRob Herring pins = "gpio17"; 298724ba675SRob Herring function = "normal"; 299724ba675SRob Herring input-enable; 300724ba675SRob Herring bias-disable; 301724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 302724ba675SRob Herring }; 303724ba675SRob Herring }; 304724ba675SRob Herring dragon_sdcc3_gpios: sdcc3-state { 305724ba675SRob Herring pinconf { 306724ba675SRob Herring pins = "gpio22"; 307724ba675SRob Herring function = "normal"; 308724ba675SRob Herring input-enable; 309724ba675SRob Herring bias-disable; 310724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 311724ba675SRob Herring }; 312724ba675SRob Herring }; 313724ba675SRob Herring dragon_sdcc5_gpios: sdcc5-state { 314724ba675SRob Herring pinconf { 315724ba675SRob Herring pins = "gpio26"; 316724ba675SRob Herring function = "normal"; 317724ba675SRob Herring input-enable; 318724ba675SRob Herring bias-pull-up; 319724ba675SRob Herring qcom,pull-up-strength = <PMIC_GPIO_PULL_UP_30>; 320724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 321724ba675SRob Herring }; 322724ba675SRob Herring }; 323724ba675SRob Herring dragon_ak8975_gpios: ak8975-state { 324724ba675SRob Herring pinconf { 325724ba675SRob Herring pins = "gpio33"; 326724ba675SRob Herring function = "normal"; 327724ba675SRob Herring input-enable; 328724ba675SRob Herring bias-disable; 329724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 330724ba675SRob Herring }; 331724ba675SRob Herring }; 332724ba675SRob Herring dragon_cm3605_gpios: cm3605-state { 333724ba675SRob Herring /* Pin 34 connected to the proxy IRQ */ 334724ba675SRob Herring gpio34-pins { 335724ba675SRob Herring pins = "gpio34"; 336724ba675SRob Herring function = "normal"; 337724ba675SRob Herring input-enable; 338724ba675SRob Herring bias-disable; 339724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 340724ba675SRob Herring }; 341724ba675SRob Herring /* Pin 35 connected to ASET */ 342724ba675SRob Herring gpio35-pins { 343724ba675SRob Herring pins = "gpio35"; 344724ba675SRob Herring function = "normal"; 345724ba675SRob Herring output-high; 346724ba675SRob Herring bias-disable; 347724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 348724ba675SRob Herring }; 349724ba675SRob Herring }; 350724ba675SRob Herring dragon_veth_gpios: veth-state { 351724ba675SRob Herring pinconf { 352724ba675SRob Herring pins = "gpio40"; 353724ba675SRob Herring function = "normal"; 354724ba675SRob Herring bias-disable; 355724ba675SRob Herring drive-push-pull; 356724ba675SRob Herring }; 357724ba675SRob Herring }; 358724ba675SRob Herring}; 359724ba675SRob Herring 360724ba675SRob Herring&pm8058_keypad { 361724ba675SRob Herring linux,keymap = < 362724ba675SRob Herring MATRIX_KEY(0, 0, KEY_MENU) 363724ba675SRob Herring MATRIX_KEY(0, 2, KEY_1) 364724ba675SRob Herring MATRIX_KEY(0, 3, KEY_4) 365724ba675SRob Herring MATRIX_KEY(0, 4, KEY_7) 366724ba675SRob Herring MATRIX_KEY(1, 0, KEY_UP) 367724ba675SRob Herring MATRIX_KEY(1, 1, KEY_LEFT) 368724ba675SRob Herring MATRIX_KEY(1, 2, KEY_DOWN) 369724ba675SRob Herring MATRIX_KEY(1, 3, KEY_5) 370724ba675SRob Herring MATRIX_KEY(1, 3, KEY_8) 371724ba675SRob Herring MATRIX_KEY(2, 0, KEY_HOME) 372724ba675SRob Herring MATRIX_KEY(2, 1, KEY_REPLY) 373724ba675SRob Herring MATRIX_KEY(2, 2, KEY_2) 374724ba675SRob Herring MATRIX_KEY(2, 3, KEY_6) 375724ba675SRob Herring MATRIX_KEY(3, 0, KEY_VOLUMEUP) 376724ba675SRob Herring MATRIX_KEY(3, 1, KEY_RIGHT) 377724ba675SRob Herring MATRIX_KEY(3, 2, KEY_3) 378724ba675SRob Herring MATRIX_KEY(3, 3, KEY_9) 379724ba675SRob Herring MATRIX_KEY(3, 4, KEY_SWITCHVIDEOMODE) 380724ba675SRob Herring MATRIX_KEY(4, 0, KEY_VOLUMEDOWN) 381724ba675SRob Herring MATRIX_KEY(4, 1, KEY_BACK) 382724ba675SRob Herring MATRIX_KEY(4, 2, KEY_CAMERA) 383724ba675SRob Herring MATRIX_KEY(4, 3, KEY_KBDILLUMTOGGLE) 384724ba675SRob Herring >; 385724ba675SRob Herring keypad,num-rows = <6>; 386724ba675SRob Herring keypad,num-columns = <5>; 387724ba675SRob Herring}; 388724ba675SRob Herring 389724ba675SRob Herring&pm8058_led48 { 390724ba675SRob Herring /* 391724ba675SRob Herring * The keypad LED @0x48 is routed to 392724ba675SRob Herring * the sensor board where it is 393724ba675SRob Herring * connected to an infrared LED 394724ba675SRob Herring * SFH4650 (60mW, @850nm) next to the 395724ba675SRob Herring * ambient light and proximity sensor 396724ba675SRob Herring * Capella Microsystems CM3605. 397724ba675SRob Herring */ 398724ba675SRob Herring label = "pm8058:infrared:proximitysensor"; 399724ba675SRob Herring default-state = "off"; 400724ba675SRob Herring linux,default-trigger = "cm3605"; 401724ba675SRob Herring status = "okay"; 402724ba675SRob Herring}; 403724ba675SRob Herring 404724ba675SRob Herring&pm8058_led131 { 405724ba675SRob Herring label = "pm8058:red"; 406724ba675SRob Herring color = <LED_COLOR_ID_RED>; 407724ba675SRob Herring default-state = "off"; 408724ba675SRob Herring status = "okay"; 409724ba675SRob Herring}; 410724ba675SRob Herring 411724ba675SRob Herring&pm8058_led132 { 412724ba675SRob Herring /* 413724ba675SRob Herring * This is actually green too on my 414724ba675SRob Herring * board, but documented as yellow. 415724ba675SRob Herring */ 416724ba675SRob Herring label = "pm8058:yellow"; 417724ba675SRob Herring color = <LED_COLOR_ID_YELLOW>; 418724ba675SRob Herring default-state = "off"; 419724ba675SRob Herring linux,default-trigger = "mmc0"; 420724ba675SRob Herring status = "okay"; 421724ba675SRob Herring}; 422724ba675SRob Herring 423724ba675SRob Herring&pm8058_led133 { 424724ba675SRob Herring label = "pm8058:green"; 425724ba675SRob Herring function = LED_FUNCTION_HEARTBEAT; 426724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 427724ba675SRob Herring default-state = "on"; 428724ba675SRob Herring linux,default-trigger = "heartbeat"; 429724ba675SRob Herring status = "okay"; 430724ba675SRob Herring}; 431724ba675SRob Herring 432724ba675SRob Herring&pm8058_mpps { 433724ba675SRob Herring dragon_cm3605_mpps: cm3605-mpps-state { 434724ba675SRob Herring pins = "mpp5"; 435724ba675SRob Herring function = "analog"; 436724ba675SRob Herring input-enable; 437724ba675SRob Herring bias-high-impedance; 438724ba675SRob Herring /* Let's use channel 5 */ 439724ba675SRob Herring qcom,amux-route = <PMIC_MPP_AMUX_ROUTE_CH5>; 440724ba675SRob Herring power-source = <PM8058_GPIO_S3>; 441724ba675SRob Herring }; 442724ba675SRob Herring}; 443724ba675SRob Herring 444724ba675SRob Herring&rpm { 445724ba675SRob Herring /* 446724ba675SRob Herring * Set up of the PMIC RPM regulators for this board 447724ba675SRob Herring * PM8901 supplies "preliminary regulators" whatever 448724ba675SRob Herring * that means 449724ba675SRob Herring */ 450724ba675SRob Herring regulators-0 { 451724ba675SRob Herring vdd_l0-supply = <&pm8901_s4>; 452724ba675SRob Herring vdd_l1-supply = <&vph>; 453724ba675SRob Herring vdd_l2-supply = <&vph>; 454724ba675SRob Herring vdd_l3-supply = <&vph>; 455724ba675SRob Herring vdd_l4-supply = <&vph>; 456724ba675SRob Herring vdd_l5-supply = <&vph>; 457724ba675SRob Herring vdd_l6-supply = <&vph>; 458724ba675SRob Herring /* vdd_s0-supply, vdd_s1-supply: SAW regulators */ 459724ba675SRob Herring vdd_s2-supply = <&vph>; 460724ba675SRob Herring vdd_s3-supply = <&vph>; 461724ba675SRob Herring vdd_s4-supply = <&vph>; 462724ba675SRob Herring lvs0_in-supply = <&pm8058_s3>; 463724ba675SRob Herring lvs1_in-supply = <&pm8901_s4>; 464724ba675SRob Herring lvs2_in-supply = <&pm8058_l0>; 465724ba675SRob Herring lvs3_in-supply = <&pm8058_s2>; 466724ba675SRob Herring mvs_in-supply = <&pm8058_s3>; 467724ba675SRob Herring 468724ba675SRob Herring l0 { 469724ba675SRob Herring regulator-min-microvolt = <1200000>; 470724ba675SRob Herring regulator-max-microvolt = <1200000>; 471724ba675SRob Herring bias-pull-down; 472724ba675SRob Herring }; 473724ba675SRob Herring l1 { 474724ba675SRob Herring regulator-min-microvolt = <3300000>; 475724ba675SRob Herring regulator-max-microvolt = <3300000>; 476724ba675SRob Herring bias-pull-down; 477724ba675SRob Herring }; 478724ba675SRob Herring l2 { 479724ba675SRob Herring /* TMA340 requires strictly 3.3V */ 480724ba675SRob Herring regulator-min-microvolt = <3300000>; 481724ba675SRob Herring regulator-max-microvolt = <3300000>; 482724ba675SRob Herring bias-pull-down; 483724ba675SRob Herring }; 484724ba675SRob Herring l3 { 485724ba675SRob Herring regulator-min-microvolt = <3300000>; 486724ba675SRob Herring regulator-max-microvolt = <3300000>; 487724ba675SRob Herring bias-pull-down; 488724ba675SRob Herring }; 489724ba675SRob Herring l4 { 490724ba675SRob Herring regulator-min-microvolt = <2600000>; 491724ba675SRob Herring regulator-max-microvolt = <2600000>; 492724ba675SRob Herring bias-pull-down; 493724ba675SRob Herring }; 494724ba675SRob Herring l5 { 495724ba675SRob Herring regulator-min-microvolt = <2850000>; 496724ba675SRob Herring regulator-max-microvolt = <2850000>; 497724ba675SRob Herring bias-pull-down; 498724ba675SRob Herring }; 499724ba675SRob Herring l6 { 500724ba675SRob Herring regulator-min-microvolt = <2200000>; 501724ba675SRob Herring regulator-max-microvolt = <2200000>; 502724ba675SRob Herring bias-pull-down; 503724ba675SRob Herring }; 504724ba675SRob Herring 505724ba675SRob Herring /* s0 and s1 are SAW regulators controlled over SPM */ 506724ba675SRob Herring s2 { 507724ba675SRob Herring regulator-min-microvolt = <1300000>; 508724ba675SRob Herring regulator-max-microvolt = <1300000>; 509724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 510724ba675SRob Herring bias-pull-down; 511724ba675SRob Herring }; 512724ba675SRob Herring s3 { 513724ba675SRob Herring regulator-min-microvolt = <1100000>; 514724ba675SRob Herring regulator-max-microvolt = <1100000>; 515724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 516724ba675SRob Herring bias-pull-down; 517724ba675SRob Herring }; 518724ba675SRob Herring s4 { 519724ba675SRob Herring regulator-min-microvolt = <1225000>; 520724ba675SRob Herring regulator-max-microvolt = <1225000>; 521724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 522724ba675SRob Herring bias-pull-down; 523724ba675SRob Herring }; 524724ba675SRob Herring 525724ba675SRob Herring /* LVS0 thru 3 and mvs are just switches */ 526724ba675SRob Herring lvs0 { 527724ba675SRob Herring regulator-always-on; 528724ba675SRob Herring }; 529724ba675SRob Herring lvs1 { }; 530724ba675SRob Herring lvs2 { }; 531724ba675SRob Herring lvs3 { }; 532724ba675SRob Herring mvs { }; 533724ba675SRob Herring 534724ba675SRob Herring }; 535724ba675SRob Herring 536724ba675SRob Herring regulators-1 { 537724ba675SRob Herring vdd_l0_l1_lvs-supply = <&pm8058_s3>; 538724ba675SRob Herring vdd_l2_l11_l12-supply = <&vph>; 539724ba675SRob Herring vdd_l3_l4_l5-supply = <&vph>; 540724ba675SRob Herring vdd_l6_l7-supply = <&vph>; 541724ba675SRob Herring vdd_l8-supply = <&vph>; 542724ba675SRob Herring vdd_l9-supply = <&vph>; 543724ba675SRob Herring vdd_l10-supply = <&vph>; 544724ba675SRob Herring vdd_l13_l16-supply = <&pm8058_s4>; 545724ba675SRob Herring vdd_l14_l15-supply = <&vph>; 546724ba675SRob Herring vdd_l17_l18-supply = <&vph>; 547724ba675SRob Herring vdd_l19_l20-supply = <&vph>; 548724ba675SRob Herring vdd_l21-supply = <&pm8058_s3>; 549724ba675SRob Herring vdd_l22-supply = <&pm8058_s3>; 550724ba675SRob Herring vdd_l23_l24_l25-supply = <&pm8058_s3>; 551724ba675SRob Herring vdd_s0-supply = <&vph>; 552724ba675SRob Herring vdd_s1-supply = <&vph>; 553724ba675SRob Herring vdd_s2-supply = <&vph>; 554724ba675SRob Herring vdd_s3-supply = <&vph>; 555724ba675SRob Herring vdd_s4-supply = <&vph>; 556724ba675SRob Herring vdd_ncp-supply = <&vph>; 557724ba675SRob Herring 558724ba675SRob Herring l0 { 559724ba675SRob Herring regulator-min-microvolt = <1200000>; 560724ba675SRob Herring regulator-max-microvolt = <1200000>; 561724ba675SRob Herring bias-pull-down; 562724ba675SRob Herring }; 563724ba675SRob Herring l1 { 564724ba675SRob Herring regulator-min-microvolt = <1200000>; 565724ba675SRob Herring regulator-max-microvolt = <1200000>; 566724ba675SRob Herring bias-pull-down; 567724ba675SRob Herring }; 568724ba675SRob Herring l2 { 569724ba675SRob Herring regulator-min-microvolt = <1800000>; 570724ba675SRob Herring regulator-max-microvolt = <2600000>; 571724ba675SRob Herring bias-pull-down; 572724ba675SRob Herring }; 573724ba675SRob Herring l3 { 574724ba675SRob Herring regulator-min-microvolt = <1800000>; 575724ba675SRob Herring regulator-max-microvolt = <1800000>; 576724ba675SRob Herring bias-pull-down; 577724ba675SRob Herring }; 578724ba675SRob Herring l4 { 579724ba675SRob Herring regulator-min-microvolt = <2850000>; 580724ba675SRob Herring regulator-max-microvolt = <2850000>; 581724ba675SRob Herring bias-pull-down; 582724ba675SRob Herring }; 583724ba675SRob Herring l5 { 584724ba675SRob Herring regulator-min-microvolt = <2850000>; 585724ba675SRob Herring regulator-max-microvolt = <2850000>; 586724ba675SRob Herring bias-pull-down; 587724ba675SRob Herring }; 588724ba675SRob Herring l6 { 589724ba675SRob Herring regulator-min-microvolt = <3000000>; 590724ba675SRob Herring regulator-max-microvolt = <3600000>; 591724ba675SRob Herring bias-pull-down; 592724ba675SRob Herring }; 593724ba675SRob Herring l7 { 594724ba675SRob Herring regulator-min-microvolt = <1800000>; 595724ba675SRob Herring regulator-max-microvolt = <1800000>; 596724ba675SRob Herring bias-pull-down; 597724ba675SRob Herring }; 598724ba675SRob Herring l8 { 599724ba675SRob Herring regulator-min-microvolt = <2900000>; 600724ba675SRob Herring regulator-max-microvolt = <3050000>; 601724ba675SRob Herring bias-pull-down; 602724ba675SRob Herring }; 603724ba675SRob Herring l9 { 604724ba675SRob Herring regulator-min-microvolt = <1800000>; 605724ba675SRob Herring regulator-max-microvolt = <1800000>; 606724ba675SRob Herring bias-pull-down; 607724ba675SRob Herring }; 608724ba675SRob Herring l10 { 609724ba675SRob Herring regulator-min-microvolt = <2600000>; 610724ba675SRob Herring regulator-max-microvolt = <2600000>; 611724ba675SRob Herring bias-pull-down; 612724ba675SRob Herring }; 613724ba675SRob Herring l11 { 614724ba675SRob Herring regulator-min-microvolt = <1500000>; 615724ba675SRob Herring regulator-max-microvolt = <1500000>; 616724ba675SRob Herring bias-pull-down; 617724ba675SRob Herring }; 618724ba675SRob Herring l12 { 619724ba675SRob Herring regulator-min-microvolt = <2900000>; 620724ba675SRob Herring regulator-max-microvolt = <2900000>; 621724ba675SRob Herring bias-pull-down; 622724ba675SRob Herring }; 623724ba675SRob Herring l13 { 624724ba675SRob Herring regulator-min-microvolt = <2050000>; 625724ba675SRob Herring regulator-max-microvolt = <2050000>; 626724ba675SRob Herring bias-pull-down; 627724ba675SRob Herring }; 628724ba675SRob Herring l14 { 629724ba675SRob Herring regulator-min-microvolt = <2850000>; 630724ba675SRob Herring regulator-max-microvolt = <2850000>; 631724ba675SRob Herring }; 632724ba675SRob Herring l15 { 633724ba675SRob Herring regulator-min-microvolt = <2850000>; 634724ba675SRob Herring regulator-max-microvolt = <2850000>; 635724ba675SRob Herring bias-pull-down; 636724ba675SRob Herring }; 637724ba675SRob Herring l16 { 638724ba675SRob Herring regulator-min-microvolt = <1800000>; 639724ba675SRob Herring regulator-max-microvolt = <1800000>; 640724ba675SRob Herring bias-pull-down; 641724ba675SRob Herring regulator-always-on; 642724ba675SRob Herring }; 643724ba675SRob Herring l17 { 644724ba675SRob Herring // 1.5V according to schematic 645724ba675SRob Herring regulator-min-microvolt = <2600000>; 646724ba675SRob Herring regulator-max-microvolt = <2600000>; 647724ba675SRob Herring bias-pull-down; 648724ba675SRob Herring }; 649724ba675SRob Herring l18 { 650724ba675SRob Herring regulator-min-microvolt = <2200000>; 651724ba675SRob Herring regulator-max-microvolt = <2200000>; 652724ba675SRob Herring bias-pull-down; 653724ba675SRob Herring }; 654724ba675SRob Herring l19 { 655724ba675SRob Herring regulator-min-microvolt = <2500000>; 656724ba675SRob Herring regulator-max-microvolt = <2500000>; 657724ba675SRob Herring bias-pull-down; 658724ba675SRob Herring }; 659724ba675SRob Herring l20 { 660724ba675SRob Herring regulator-min-microvolt = <1800000>; 661724ba675SRob Herring regulator-max-microvolt = <1800000>; 662724ba675SRob Herring bias-pull-down; 663724ba675SRob Herring }; 664724ba675SRob Herring l21 { 665724ba675SRob Herring // 1.1 V according to schematic 666724ba675SRob Herring regulator-min-microvolt = <1200000>; 667724ba675SRob Herring regulator-max-microvolt = <1200000>; 668724ba675SRob Herring bias-pull-down; 669724ba675SRob Herring regulator-always-on; 670724ba675SRob Herring }; 671724ba675SRob Herring l22 { 672724ba675SRob Herring // 1.2 V according to schematic 673724ba675SRob Herring regulator-min-microvolt = <1150000>; 674724ba675SRob Herring regulator-max-microvolt = <1150000>; 675724ba675SRob Herring bias-pull-down; 676724ba675SRob Herring }; 677724ba675SRob Herring l23 { 678724ba675SRob Herring // Unused 679724ba675SRob Herring regulator-min-microvolt = <1200000>; 680724ba675SRob Herring regulator-max-microvolt = <1200000>; 681724ba675SRob Herring bias-pull-down; 682724ba675SRob Herring }; 683724ba675SRob Herring l24 { 684724ba675SRob Herring // Unused 685724ba675SRob Herring regulator-min-microvolt = <1200000>; 686724ba675SRob Herring regulator-max-microvolt = <1200000>; 687724ba675SRob Herring bias-pull-down; 688724ba675SRob Herring }; 689724ba675SRob Herring l25 { 690724ba675SRob Herring regulator-min-microvolt = <1200000>; 691724ba675SRob Herring regulator-max-microvolt = <1200000>; 692724ba675SRob Herring bias-pull-down; 693724ba675SRob Herring }; 694724ba675SRob Herring 695724ba675SRob Herring s0 { 696724ba675SRob Herring // regulator-min-microvolt = <500000>; 697724ba675SRob Herring // regulator-max-microvolt = <1325000>; 698724ba675SRob Herring regulator-min-microvolt = <1100000>; 699724ba675SRob Herring regulator-max-microvolt = <1100000>; 700724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 701724ba675SRob Herring bias-pull-down; 702724ba675SRob Herring }; 703724ba675SRob Herring s1 { 704724ba675SRob Herring // regulator-min-microvolt = <500000>; 705724ba675SRob Herring // regulator-max-microvolt = <1250000>; 706724ba675SRob Herring regulator-min-microvolt = <1100000>; 707724ba675SRob Herring regulator-max-microvolt = <1100000>; 708724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 709724ba675SRob Herring bias-pull-down; 710724ba675SRob Herring }; 711724ba675SRob Herring s2 { 712724ba675SRob Herring // 1.3 V according to schematic 713724ba675SRob Herring regulator-min-microvolt = <1200000>; 714724ba675SRob Herring regulator-max-microvolt = <1400000>; 715724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 716724ba675SRob Herring bias-pull-down; 717724ba675SRob Herring }; 718724ba675SRob Herring s3 { 719724ba675SRob Herring regulator-min-microvolt = <1800000>; 720724ba675SRob Herring regulator-max-microvolt = <1800000>; 721724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 722724ba675SRob Herring regulator-always-on; 723724ba675SRob Herring bias-pull-down; 724724ba675SRob Herring }; 725724ba675SRob Herring s4 { 726724ba675SRob Herring regulator-min-microvolt = <2200000>; 727724ba675SRob Herring regulator-max-microvolt = <2200000>; 728724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 729724ba675SRob Herring regulator-always-on; 730724ba675SRob Herring bias-pull-down; 731724ba675SRob Herring }; 732724ba675SRob Herring 733724ba675SRob Herring /* LVS0 and LVS1 are just switches */ 734724ba675SRob Herring lvs0 { 735724ba675SRob Herring bias-pull-down; 736724ba675SRob Herring }; 737724ba675SRob Herring lvs1 { 738724ba675SRob Herring bias-pull-down; 739724ba675SRob Herring }; 740724ba675SRob Herring 741724ba675SRob Herring ncp { 742724ba675SRob Herring regulator-min-microvolt = <1800000>; 743724ba675SRob Herring regulator-max-microvolt = <1800000>; 744724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 745724ba675SRob Herring }; 746724ba675SRob Herring }; 747724ba675SRob Herring}; 748724ba675SRob Herring 749724ba675SRob Herring/* Internal 3.69 GiB eMMC */ 750724ba675SRob Herring&sdcc1 { 751724ba675SRob Herring pinctrl-names = "default"; 752724ba675SRob Herring pinctrl-0 = <&dragon_sdcc1_pins>; 753724ba675SRob Herring vmmc-supply = <&pm8901_l5>; 754724ba675SRob Herring vqmmc-supply = <&pm8901_lvs0>; 755724ba675SRob Herring status = "okay"; 756724ba675SRob Herring}; 757724ba675SRob Herring 758724ba675SRob Herring/* External micro SD card, directly connected, pulled up to 2.85 V */ 759724ba675SRob Herring&sdcc3 { 760724ba675SRob Herring /* Enable SSBI GPIO 22 as input, use for card detect */ 761724ba675SRob Herring pinctrl-names = "default"; 762724ba675SRob Herring pinctrl-0 = <&dragon_sdcc3_pins>, <&dragon_sdcc3_gpios>; 763724ba675SRob Herring cd-gpios = <&pm8058_gpio 22 GPIO_ACTIVE_LOW>; 764724ba675SRob Herring wp-gpios = <&tlmm 110 GPIO_ACTIVE_HIGH>; 765724ba675SRob Herring vmmc-supply = <&pm8058_l14>; 766724ba675SRob Herring status = "okay"; 767724ba675SRob Herring}; 768724ba675SRob Herring 769724ba675SRob Herring/* 770724ba675SRob Herring * Second external micro SD card, using two TXB104RGYR levelshifters 771724ba675SRob Herring * to lift from 1.8 V to 2.85 V 772724ba675SRob Herring */ 773724ba675SRob Herring&sdcc5 { 774724ba675SRob Herring /* Enable SSBI GPIO 26 as input, use for card detect */ 775724ba675SRob Herring pinctrl-names = "default"; 776724ba675SRob Herring pinctrl-0 = <&dragon_sdcc5_pins>, <&dragon_sdcc5_gpios>; 777724ba675SRob Herring cd-gpios = <&pm8058_gpio 26 GPIO_ACTIVE_LOW>; 778724ba675SRob Herring wp-gpios = <&tlmm 106 GPIO_ACTIVE_HIGH>; 779724ba675SRob Herring vmmc-supply = <&pm8058_l14>; 780724ba675SRob Herring vqmmc-supply = <&dragon_vio_txb>; 781724ba675SRob Herring status = "okay"; 782724ba675SRob Herring}; 783724ba675SRob Herring 784724ba675SRob Herring&tlmm { 785724ba675SRob Herring /* eMMC pins, all 8 data lines connected */ 786724ba675SRob Herring dragon_sdcc1_pins: sdcc1-state { 787724ba675SRob Herring clk-pins { 788724ba675SRob Herring pins = "gpio167"; /* SDC1 CLK */ 789724ba675SRob Herring function = "sdc1"; 790724ba675SRob Herring drive-strength = <16>; 791724ba675SRob Herring bias-disable; 792724ba675SRob Herring }; 793724ba675SRob Herring cmd-pins { 794724ba675SRob Herring pins = "gpio168"; /* SDC1 CMD */ 795724ba675SRob Herring function = "sdc1"; 796724ba675SRob Herring drive-strength = <10>; 797724ba675SRob Herring bias-pull-up; 798724ba675SRob Herring }; 799724ba675SRob Herring data-pins { 800724ba675SRob Herring /* SDC1 D0 to D7 */ 801724ba675SRob Herring pins = "gpio159", "gpio160", "gpio161", "gpio162", 802724ba675SRob Herring "gpio163", "gpio164", "gpio165", "gpio166"; 803724ba675SRob Herring function = "sdc1"; 804724ba675SRob Herring drive-strength = <10>; 805724ba675SRob Herring bias-pull-up; 806724ba675SRob Herring }; 807724ba675SRob Herring }; 808724ba675SRob Herring 809724ba675SRob Herring /* 810724ba675SRob Herring * The SDCC3 pins are hardcoded (non-muxable) but need some pin 811724ba675SRob Herring * configuration. 812724ba675SRob Herring */ 813724ba675SRob Herring dragon_sdcc3_pins: sdcc3-state { 814724ba675SRob Herring clk-pins { 815724ba675SRob Herring pins = "sdc3_clk"; 816724ba675SRob Herring drive-strength = <8>; 817724ba675SRob Herring bias-disable; 818724ba675SRob Herring }; 819724ba675SRob Herring cmd-pins { 820724ba675SRob Herring pins = "sdc3_cmd"; 821724ba675SRob Herring drive-strength = <8>; 822724ba675SRob Herring bias-pull-up; 823724ba675SRob Herring }; 824724ba675SRob Herring data-pins { 825724ba675SRob Herring pins = "sdc3_data"; 826724ba675SRob Herring drive-strength = <8>; 827724ba675SRob Herring bias-pull-up; 828724ba675SRob Herring }; 829724ba675SRob Herring }; 830724ba675SRob Herring 831724ba675SRob Herring /* Second SD card slot pins */ 832724ba675SRob Herring dragon_sdcc5_pins: sdcc5-state { 833724ba675SRob Herring clk-pins { 834724ba675SRob Herring pins = "gpio97"; /* SDC5 CLK */ 835724ba675SRob Herring function = "sdc5"; 836724ba675SRob Herring drive-strength = <16>; 837724ba675SRob Herring bias-disable; 838724ba675SRob Herring }; 839724ba675SRob Herring cmd-pins { 840724ba675SRob Herring pins = "gpio95"; /* SDC5 CMD */ 841724ba675SRob Herring function = "sdc5"; 842724ba675SRob Herring drive-strength = <10>; 843724ba675SRob Herring bias-pull-up; 844724ba675SRob Herring }; 845724ba675SRob Herring data-pins { 846724ba675SRob Herring /* SDC5 D0 to D3 */ 847724ba675SRob Herring pins = "gpio96", "gpio98", "gpio99", "gpio100"; 848724ba675SRob Herring function = "sdc5"; 849724ba675SRob Herring drive-strength = <10>; 850724ba675SRob Herring bias-pull-up; 851724ba675SRob Herring }; 852724ba675SRob Herring }; 853724ba675SRob Herring 854724ba675SRob Herring dragon_gsbi3_i2c_pins: gsbi3-i2c-state { 855724ba675SRob Herring pins = "gpio43", "gpio44"; 856724ba675SRob Herring function = "gsbi3"; 857724ba675SRob Herring drive-strength = <8>; 858724ba675SRob Herring /* These have external pull-up 2.2kOhm to 1.8V */ 859724ba675SRob Herring bias-disable; 860724ba675SRob Herring }; 861724ba675SRob Herring 862724ba675SRob Herring dragon_gsbi8_i2c_pins: gsbi8-i2c-state { 863724ba675SRob Herring pins = "gpio64", "gpio65"; 864724ba675SRob Herring function = "gsbi8"; 865724ba675SRob Herring drive-strength = <16>; 866724ba675SRob Herring /* These have external pull-up 2.2kOhm to 1.8V */ 867724ba675SRob Herring bias-disable; 868724ba675SRob Herring }; 869724ba675SRob Herring 870724ba675SRob Herring dragon_gsbi12_i2c_pins: gsbi12-i2c-state { 871724ba675SRob Herring pins = "gpio115", "gpio116"; 872724ba675SRob Herring function = "gsbi12"; 873724ba675SRob Herring drive-strength = <16>; 874724ba675SRob Herring /* These have external pull-up 4.7kOhm to 1.8V */ 875724ba675SRob Herring bias-disable; 876724ba675SRob Herring }; 877724ba675SRob Herring 878724ba675SRob Herring /* Primary serial port uart 0 pins */ 879724ba675SRob Herring dragon_gsbi12_serial_pins: gsbi12-serial-state { 880724ba675SRob Herring tx-pins { 881724ba675SRob Herring pins = "gpio117"; 882724ba675SRob Herring function = "gsbi12"; 883724ba675SRob Herring drive-strength = <8>; 884724ba675SRob Herring bias-disable; 885724ba675SRob Herring }; 886724ba675SRob Herring rx-pins { 887724ba675SRob Herring pins = "gpio118"; 888724ba675SRob Herring function = "gsbi12"; 889724ba675SRob Herring drive-strength = <2>; 890724ba675SRob Herring bias-pull-up; 891724ba675SRob Herring }; 892724ba675SRob Herring }; 893724ba675SRob Herring 894724ba675SRob Herring dragon_ebi2_pins: ebi2-state { 895724ba675SRob Herring /* 896724ba675SRob Herring * Pins used by EBI2 on the Dragonboard, actually only 897724ba675SRob Herring * CS2 is used by a real peripheral. CS0 is just 898724ba675SRob Herring * routed to a test point. 899724ba675SRob Herring */ 900724ba675SRob Herring mux0-pins { 901724ba675SRob Herring pins = 902724ba675SRob Herring /* "gpio39", CS1A_N this is not good to mux */ 903724ba675SRob Herring "gpio40", /* CS2A_N */ 904724ba675SRob Herring "gpio134"; /* CS0_N testpoint TP29 */ 905724ba675SRob Herring function = "ebi2cs"; 906724ba675SRob Herring }; 907724ba675SRob Herring mux1-pins { 908724ba675SRob Herring pins = 909724ba675SRob Herring /* EBI2_ADDR_7 downto EBI2_ADDR_0 address bus */ 910724ba675SRob Herring "gpio123", "gpio124", "gpio125", "gpio126", 911724ba675SRob Herring "gpio127", "gpio128", "gpio129", "gpio130", 912724ba675SRob Herring /* EBI2_DATA_15 downto EBI2_DATA_0 data bus */ 913724ba675SRob Herring "gpio135", "gpio136", "gpio137", "gpio138", 914724ba675SRob Herring "gpio139", "gpio140", "gpio141", "gpio142", 915724ba675SRob Herring "gpio143", "gpio144", "gpio145", "gpio146", 916724ba675SRob Herring "gpio147", "gpio148", "gpio149", "gpio150", 917724ba675SRob Herring "gpio151", /* EBI2_OE_N */ 918724ba675SRob Herring "gpio153", /* EBI2_ADV */ 919724ba675SRob Herring "gpio157"; /* EBI2_WE_N */ 920724ba675SRob Herring function = "ebi2"; 921724ba675SRob Herring }; 922724ba675SRob Herring }; 923724ba675SRob Herring 924724ba675SRob Herring /* Interrupt line for the KXSD9 accelerometer */ 925724ba675SRob Herring dragon_kxsd9_gpios: kxsd9-state { 926724ba675SRob Herring pins = "gpio57"; /* IRQ line */ 927724ba675SRob Herring function = "gpio"; 928724ba675SRob Herring bias-pull-up; 929724ba675SRob Herring }; 930724ba675SRob Herring 931724ba675SRob Herring dragon_tma340_gpios: tma340-state { 932724ba675SRob Herring reset-pins { 933724ba675SRob Herring /* RESET line, TS_ATTN, WAKE_CTP */ 934724ba675SRob Herring pins = "gpio58"; 935724ba675SRob Herring function = "gpio"; 936724ba675SRob Herring drive-strength = <6>; 937724ba675SRob Herring bias-disable; 938724ba675SRob Herring }; 939724ba675SRob Herring irq-pins { 940724ba675SRob Herring pins = "gpio61"; /* IRQ line */ 941724ba675SRob Herring function = "gpio"; 942724ba675SRob Herring drive-strength = <2>; 943724ba675SRob Herring bias-pull-up; 944724ba675SRob Herring }; 945724ba675SRob Herring }; 946724ba675SRob Herring}; 947724ba675SRob Herring 948*b01dbb6cSDmitry Baryshkov&pm8058_xoadc { 949724ba675SRob Herring /* Reference voltage 2.2 V */ 950724ba675SRob Herring xoadc-ref-supply = <&pm8058_l18>; 951724ba675SRob Herring 952724ba675SRob Herring /* Board-specific channels */ 953724ba675SRob Herring mpp5@5 { 954724ba675SRob Herring /* Connected to AOUT of ALS sensor */ 955724ba675SRob Herring reg = <0x00 0x05>; 956724ba675SRob Herring }; 957724ba675SRob Herring mpp6@6 { 958724ba675SRob Herring /* Connected to test point TP43 */ 959724ba675SRob Herring reg = <0x00 0x06>; 960724ba675SRob Herring }; 961724ba675SRob Herring mpp7@7 { 962724ba675SRob Herring /* Connected to battery thermistor */ 963724ba675SRob Herring reg = <0x00 0x07>; 964724ba675SRob Herring }; 965724ba675SRob Herring mpp8@8 { 966724ba675SRob Herring /* Connected to battery ID detector */ 967724ba675SRob Herring reg = <0x00 0x08>; 968724ba675SRob Herring }; 969724ba675SRob Herring mpp9@9 { 970724ba675SRob Herring /* Connected to XO thermistor */ 971724ba675SRob Herring reg = <0x00 0x09>; 972724ba675SRob Herring }; 973724ba675SRob Herring}; 974