1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2724ba675SRob Herring#include <dt-bindings/input/input.h> 35c903b85SDmitry Baryshkov#include <dt-bindings/reset/qcom,gcc-msm8960.h> 4724ba675SRob Herring 5724ba675SRob Herring#include "qcom-msm8960.dtsi" 65c903b85SDmitry Baryshkov#include "pm8921.dtsi" 78d909805SRudraksha Gupta#include <dt-bindings/gpio/gpio.h> 88d909805SRudraksha Gupta#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 98d909805SRudraksha Gupta#include <dt-bindings/input/gpio-keys.h> 10724ba675SRob Herring 11724ba675SRob Herring/ { 12724ba675SRob Herring model = "Samsung Galaxy Express SGH-I437"; 13724ba675SRob Herring compatible = "samsung,expressatt", "qcom,msm8960"; 14724ba675SRob Herring chassis-type = "handset"; 15724ba675SRob Herring 16724ba675SRob Herring aliases { 17724ba675SRob Herring serial0 = &gsbi5_serial; 18724ba675SRob Herring mmc0 = &sdcc1; /* SDCC1 eMMC slot */ 19724ba675SRob Herring mmc1 = &sdcc3; /* SDCC3 SD card slot */ 20724ba675SRob Herring }; 21724ba675SRob Herring 22724ba675SRob Herring chosen { 23724ba675SRob Herring stdout-path = "serial0:115200n8"; 24724ba675SRob Herring }; 258d909805SRudraksha Gupta 268d909805SRudraksha Gupta gpio-keys { 278d909805SRudraksha Gupta compatible = "gpio-keys"; 288d909805SRudraksha Gupta 298d909805SRudraksha Gupta pinctrl-names = "default"; 308d909805SRudraksha Gupta pinctrl-0 = <&gpio_keys_pin_a>; 318d909805SRudraksha Gupta 328d909805SRudraksha Gupta key-home { 338d909805SRudraksha Gupta label = "Home"; 348d909805SRudraksha Gupta gpios = <&msmgpio 40 GPIO_ACTIVE_LOW>; 358d909805SRudraksha Gupta debounce-interval = <5>; 368d909805SRudraksha Gupta linux,code = <KEY_HOMEPAGE>; 378d909805SRudraksha Gupta wakeup-event-action = <EV_ACT_ASSERTED>; 388d909805SRudraksha Gupta wakeup-source; 398d909805SRudraksha Gupta }; 408d909805SRudraksha Gupta 418d909805SRudraksha Gupta key-volume-up { 428d909805SRudraksha Gupta label = "Volume Up"; 438d909805SRudraksha Gupta gpios = <&msmgpio 50 GPIO_ACTIVE_LOW>; 448d909805SRudraksha Gupta debounce-interval = <5>; 458d909805SRudraksha Gupta linux,code = <KEY_VOLUMEUP>; 468d909805SRudraksha Gupta }; 478d909805SRudraksha Gupta 488d909805SRudraksha Gupta key-volume-down { 498d909805SRudraksha Gupta label = "Volume Down"; 508d909805SRudraksha Gupta gpios = <&msmgpio 81 GPIO_ACTIVE_LOW>; 518d909805SRudraksha Gupta debounce-interval = <5>; 528d909805SRudraksha Gupta linux,code = <KEY_VOLUMEDOWN>; 538d909805SRudraksha Gupta }; 548d909805SRudraksha Gupta }; 55724ba675SRob Herring}; 56724ba675SRob Herring 57724ba675SRob Herring&gsbi5 { 58724ba675SRob Herring qcom,mode = <GSBI_PROT_I2C_UART>; 59724ba675SRob Herring status = "okay"; 60724ba675SRob Herring}; 61724ba675SRob Herring 62724ba675SRob Herring&gsbi5_serial { 63724ba675SRob Herring status = "okay"; 64724ba675SRob Herring}; 65724ba675SRob Herring 66724ba675SRob Herring&sdcc1 { 67724ba675SRob Herring vmmc-supply = <&pm8921_l5>; 68724ba675SRob Herring status = "okay"; 69724ba675SRob Herring}; 70724ba675SRob Herring 71724ba675SRob Herring&sdcc3 { 72724ba675SRob Herring vmmc-supply = <&pm8921_l6>; 73724ba675SRob Herring vqmmc-supply = <&pm8921_l7>; 74724ba675SRob Herring status = "okay"; 75724ba675SRob Herring}; 76724ba675SRob Herring 77724ba675SRob Herring&gsbi1 { 78724ba675SRob Herring qcom,mode = <GSBI_PROT_SPI>; 79724ba675SRob Herring pinctrl-0 = <&spi1_default>; 80724ba675SRob Herring pinctrl-names = "default"; 81724ba675SRob Herring status = "okay"; 82724ba675SRob Herring}; 83724ba675SRob Herring 84724ba675SRob Herring&gsbi1_spi { 85724ba675SRob Herring status = "okay"; 86724ba675SRob Herring}; 87724ba675SRob Herring 88*5936ee21SRudraksha Gupta&gsbi3 { 89*5936ee21SRudraksha Gupta qcom,mode = <GSBI_PROT_I2C>; 90*5936ee21SRudraksha Gupta status = "okay"; 91*5936ee21SRudraksha Gupta}; 92*5936ee21SRudraksha Gupta 93*5936ee21SRudraksha Gupta&gsbi3_i2c { 94*5936ee21SRudraksha Gupta status = "okay"; 95*5936ee21SRudraksha Gupta 96*5936ee21SRudraksha Gupta // Atmel mXT224S touchscreen 97*5936ee21SRudraksha Gupta touchscreen@4a { 98*5936ee21SRudraksha Gupta compatible = "atmel,maxtouch"; 99*5936ee21SRudraksha Gupta reg = <0x4a>; 100*5936ee21SRudraksha Gupta interrupt-parent = <&msmgpio>; 101*5936ee21SRudraksha Gupta interrupts = <11 IRQ_TYPE_EDGE_FALLING>; 102*5936ee21SRudraksha Gupta vdda-supply = <&pm8921_lvs6>; 103*5936ee21SRudraksha Gupta vdd-supply = <&pm8921_l17>; 104*5936ee21SRudraksha Gupta pinctrl-names = "default"; 105*5936ee21SRudraksha Gupta pinctrl-0 = <&touchscreen>; 106*5936ee21SRudraksha Gupta }; 107*5936ee21SRudraksha Gupta}; 108*5936ee21SRudraksha Gupta 109724ba675SRob Herring&msmgpio { 110724ba675SRob Herring spi1_default: spi1-default-state { 111724ba675SRob Herring mosi-pins { 112724ba675SRob Herring pins = "gpio6"; 113724ba675SRob Herring function = "gsbi1"; 114724ba675SRob Herring drive-strength = <12>; 115724ba675SRob Herring bias-disable; 116724ba675SRob Herring }; 117724ba675SRob Herring 118724ba675SRob Herring miso-pins { 119724ba675SRob Herring pins = "gpio7"; 120724ba675SRob Herring function = "gsbi1"; 121724ba675SRob Herring drive-strength = <12>; 122724ba675SRob Herring bias-disable; 123724ba675SRob Herring }; 124724ba675SRob Herring 125724ba675SRob Herring cs-pins { 126724ba675SRob Herring pins = "gpio8"; 127724ba675SRob Herring function = "gsbi1"; 128724ba675SRob Herring drive-strength = <12>; 129724ba675SRob Herring bias-disable; 130724ba675SRob Herring output-low; 131724ba675SRob Herring }; 132724ba675SRob Herring 133724ba675SRob Herring clk-pins { 134724ba675SRob Herring pins = "gpio9"; 135724ba675SRob Herring function = "gsbi1"; 136724ba675SRob Herring drive-strength = <12>; 137724ba675SRob Herring bias-disable; 138724ba675SRob Herring }; 139724ba675SRob Herring }; 1408d909805SRudraksha Gupta 1418d909805SRudraksha Gupta gpio_keys_pin_a: gpio-keys-active-state { 1428d909805SRudraksha Gupta pins = "gpio40", "gpio50", "gpio81"; 1438d909805SRudraksha Gupta function = "gpio"; 1448d909805SRudraksha Gupta drive-strength = <8>; 1458d909805SRudraksha Gupta bias-disable; 1468d909805SRudraksha Gupta }; 147*5936ee21SRudraksha Gupta 148*5936ee21SRudraksha Gupta touchscreen: touchscreen-int-state { 149*5936ee21SRudraksha Gupta pins = "gpio11"; 150*5936ee21SRudraksha Gupta function = "gpio"; 151*5936ee21SRudraksha Gupta output-enable; 152*5936ee21SRudraksha Gupta bias-disable; 153*5936ee21SRudraksha Gupta drive-strength = <2>; 154*5936ee21SRudraksha Gupta }; 155724ba675SRob Herring}; 156724ba675SRob Herring 15731c4b741SDmitry Baryshkov&pm8921 { 15831c4b741SDmitry Baryshkov interrupts-extended = <&msmgpio 104 IRQ_TYPE_LEVEL_LOW>; 15931c4b741SDmitry Baryshkov}; 16031c4b741SDmitry Baryshkov 161724ba675SRob Herring&rpm { 162724ba675SRob Herring regulators { 163724ba675SRob Herring compatible = "qcom,rpm-pm8921-regulators"; 164724ba675SRob Herring vin_lvs1_3_6-supply = <&pm8921_s4>; 165724ba675SRob Herring vin_lvs2-supply = <&pm8921_s4>; 166724ba675SRob Herring vin_lvs4_5_7-supply = <&pm8921_s4>; 167724ba675SRob Herring vdd_ncp-supply = <&pm8921_l6>; 168724ba675SRob Herring vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; 169724ba675SRob Herring vdd_l21_l23_l29-supply = <&pm8921_s8>; 170724ba675SRob Herring vdd_l24-supply = <&pm8921_s1>; 171724ba675SRob Herring vdd_l25-supply = <&pm8921_s1>; 172724ba675SRob Herring vdd_l27-supply = <&pm8921_s7>; 173724ba675SRob Herring vdd_l28-supply = <&pm8921_s7>; 174724ba675SRob Herring 175724ba675SRob Herring /* Buck SMPS */ 176724ba675SRob Herring pm8921_s1: s1 { 177724ba675SRob Herring regulator-always-on; 178724ba675SRob Herring regulator-min-microvolt = <1225000>; 179724ba675SRob Herring regulator-max-microvolt = <1225000>; 180724ba675SRob Herring qcom,switch-mode-frequency = <3200000>; 181724ba675SRob Herring bias-pull-down; 182724ba675SRob Herring }; 183724ba675SRob Herring 184724ba675SRob Herring pm8921_s2: s2 { 185724ba675SRob Herring regulator-min-microvolt = <1300000>; 186724ba675SRob Herring regulator-max-microvolt = <1300000>; 187724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 188724ba675SRob Herring bias-pull-down; 189724ba675SRob Herring }; 190724ba675SRob Herring 191724ba675SRob Herring pm8921_s3: s3 { 192724ba675SRob Herring regulator-min-microvolt = <500000>; 193724ba675SRob Herring regulator-max-microvolt = <1150000>; 194724ba675SRob Herring qcom,switch-mode-frequency = <4800000>; 195724ba675SRob Herring bias-pull-down; 196724ba675SRob Herring }; 197724ba675SRob Herring 198724ba675SRob Herring pm8921_s4: s4 { 199724ba675SRob Herring regulator-always-on; 200724ba675SRob Herring regulator-min-microvolt = <1800000>; 201724ba675SRob Herring regulator-max-microvolt = <1800000>; 202724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 203724ba675SRob Herring bias-pull-down; 204724ba675SRob Herring qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>; 205724ba675SRob Herring }; 206724ba675SRob Herring 207724ba675SRob Herring pm8921_s7: s7 { 208724ba675SRob Herring regulator-min-microvolt = <1150000>; 209724ba675SRob Herring regulator-max-microvolt = <1150000>; 210724ba675SRob Herring qcom,switch-mode-frequency = <3200000>; 211724ba675SRob Herring bias-pull-down; 212724ba675SRob Herring }; 213724ba675SRob Herring 214724ba675SRob Herring pm8921_s8: s8 { 215724ba675SRob Herring regulator-always-on; 216724ba675SRob Herring regulator-min-microvolt = <2050000>; 217724ba675SRob Herring regulator-max-microvolt = <2050000>; 218724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 219724ba675SRob Herring bias-pull-down; 220724ba675SRob Herring }; 221724ba675SRob Herring 222724ba675SRob Herring /* PMOS LDO */ 223724ba675SRob Herring pm8921_l1: l1 { 224724ba675SRob Herring regulator-always-on; 225724ba675SRob Herring regulator-min-microvolt = <1050000>; 226724ba675SRob Herring regulator-max-microvolt = <1050000>; 227724ba675SRob Herring bias-pull-down; 228724ba675SRob Herring }; 229724ba675SRob Herring 230724ba675SRob Herring pm8921_l2: l2 { 231724ba675SRob Herring regulator-min-microvolt = <1200000>; 232724ba675SRob Herring regulator-max-microvolt = <1200000>; 233724ba675SRob Herring bias-pull-down; 234724ba675SRob Herring }; 235724ba675SRob Herring 236724ba675SRob Herring pm8921_l3: l3 { 237724ba675SRob Herring regulator-min-microvolt = <3075000>; 238724ba675SRob Herring regulator-max-microvolt = <3300000>; 239724ba675SRob Herring bias-pull-down; 240724ba675SRob Herring }; 241724ba675SRob Herring 242724ba675SRob Herring pm8921_l4: l4 { 243724ba675SRob Herring regulator-always-on; 244724ba675SRob Herring regulator-min-microvolt = <1800000>; 245724ba675SRob Herring regulator-max-microvolt = <1800000>; 246724ba675SRob Herring bias-pull-down; 247724ba675SRob Herring }; 248724ba675SRob Herring 249724ba675SRob Herring pm8921_l5: l5 { 250724ba675SRob Herring regulator-min-microvolt = <2950000>; 251724ba675SRob Herring regulator-max-microvolt = <2950000>; 252724ba675SRob Herring bias-pull-down; 253724ba675SRob Herring }; 254724ba675SRob Herring 255724ba675SRob Herring pm8921_l6: l6 { 256724ba675SRob Herring regulator-min-microvolt = <2950000>; 257724ba675SRob Herring regulator-max-microvolt = <2950000>; 258724ba675SRob Herring bias-pull-down; 259724ba675SRob Herring }; 260724ba675SRob Herring 261724ba675SRob Herring pm8921_l7: l7 { 262724ba675SRob Herring regulator-always-on; 263724ba675SRob Herring regulator-min-microvolt = <1850000>; 264724ba675SRob Herring regulator-max-microvolt = <2950000>; 265724ba675SRob Herring bias-pull-down; 266724ba675SRob Herring }; 267724ba675SRob Herring 268724ba675SRob Herring pm8921_l8: l8 { 269724ba675SRob Herring regulator-min-microvolt = <3000000>; 270724ba675SRob Herring regulator-max-microvolt = <3100000>; 271724ba675SRob Herring bias-pull-down; 272724ba675SRob Herring }; 273724ba675SRob Herring 274724ba675SRob Herring pm8921_l9: l9 { 275724ba675SRob Herring regulator-min-microvolt = <2850000>; 276724ba675SRob Herring regulator-max-microvolt = <2850000>; 277724ba675SRob Herring bias-pull-down; 278724ba675SRob Herring }; 279724ba675SRob Herring 280724ba675SRob Herring pm8921_l10: l10 { 281724ba675SRob Herring regulator-min-microvolt = <3000000>; 282724ba675SRob Herring regulator-max-microvolt = <3000000>; 283724ba675SRob Herring bias-pull-down; 284724ba675SRob Herring }; 285724ba675SRob Herring 286724ba675SRob Herring pm8921_l11: l11 { 287724ba675SRob Herring regulator-min-microvolt = <2800000>; 288724ba675SRob Herring regulator-max-microvolt = <3300000>; 289724ba675SRob Herring bias-pull-down; 290724ba675SRob Herring }; 291724ba675SRob Herring 292724ba675SRob Herring pm8921_l12: l12 { 293724ba675SRob Herring regulator-min-microvolt = <1200000>; 294724ba675SRob Herring regulator-max-microvolt = <1200000>; 295724ba675SRob Herring bias-pull-down; 296724ba675SRob Herring }; 297724ba675SRob Herring 298724ba675SRob Herring pm8921_l14: l14 { 299724ba675SRob Herring regulator-min-microvolt = <1800000>; 300724ba675SRob Herring regulator-max-microvolt = <1800000>; 301724ba675SRob Herring bias-pull-down; 302724ba675SRob Herring }; 303724ba675SRob Herring 304724ba675SRob Herring pm8921_l15: l15 { 305724ba675SRob Herring regulator-min-microvolt = <1800000>; 306724ba675SRob Herring regulator-max-microvolt = <2950000>; 307724ba675SRob Herring bias-pull-down; 308724ba675SRob Herring }; 309724ba675SRob Herring 310724ba675SRob Herring pm8921_l16: l16 { 311724ba675SRob Herring regulator-min-microvolt = <2800000>; 312724ba675SRob Herring regulator-max-microvolt = <3000000>; 313724ba675SRob Herring bias-pull-down; 314724ba675SRob Herring }; 315724ba675SRob Herring 316724ba675SRob Herring pm8921_l17: l17 { 317*5936ee21SRudraksha Gupta regulator-min-microvolt = <3300000>; 318724ba675SRob Herring regulator-max-microvolt = <3300000>; 319724ba675SRob Herring bias-pull-down; 320724ba675SRob Herring }; 321724ba675SRob Herring 322724ba675SRob Herring pm8921_l18: l18 { 323724ba675SRob Herring regulator-min-microvolt = <1200000>; 324724ba675SRob Herring regulator-max-microvolt = <1500000>; 325724ba675SRob Herring bias-pull-down; 326724ba675SRob Herring }; 327724ba675SRob Herring 328724ba675SRob Herring pm8921_l21: l21 { 329724ba675SRob Herring regulator-min-microvolt = <1900000>; 330724ba675SRob Herring regulator-max-microvolt = <1900000>; 331724ba675SRob Herring bias-pull-down; 332724ba675SRob Herring }; 333724ba675SRob Herring 334724ba675SRob Herring pm8921_l22: l22 { 335724ba675SRob Herring regulator-min-microvolt = <2750000>; 336724ba675SRob Herring regulator-max-microvolt = <2750000>; 337724ba675SRob Herring bias-pull-down; 338724ba675SRob Herring }; 339724ba675SRob Herring 340724ba675SRob Herring pm8921_l23: l23 { 341724ba675SRob Herring regulator-always-on; 342724ba675SRob Herring regulator-min-microvolt = <1800000>; 343724ba675SRob Herring regulator-max-microvolt = <1800000>; 344724ba675SRob Herring bias-pull-down; 345724ba675SRob Herring }; 346724ba675SRob Herring 347724ba675SRob Herring pm8921_l24: l24 { 348724ba675SRob Herring regulator-min-microvolt = <750000>; 349724ba675SRob Herring regulator-max-microvolt = <1150000>; 350724ba675SRob Herring bias-pull-down; 351724ba675SRob Herring }; 352724ba675SRob Herring 353724ba675SRob Herring pm8921_l25: l25 { 354724ba675SRob Herring regulator-always-on; 355724ba675SRob Herring regulator-min-microvolt = <1225000>; 356724ba675SRob Herring regulator-max-microvolt = <1225000>; 357724ba675SRob Herring bias-pull-down; 358724ba675SRob Herring }; 359724ba675SRob Herring 360724ba675SRob Herring /* Low Voltage Switch */ 361724ba675SRob Herring pm8921_lvs1: lvs1 { 362724ba675SRob Herring bias-pull-down; 363724ba675SRob Herring }; 364724ba675SRob Herring 365724ba675SRob Herring pm8921_lvs2: lvs2 { 366724ba675SRob Herring bias-pull-down; 367724ba675SRob Herring }; 368724ba675SRob Herring 369724ba675SRob Herring pm8921_lvs3: lvs3 { 370724ba675SRob Herring bias-pull-down; 371724ba675SRob Herring }; 372724ba675SRob Herring 373724ba675SRob Herring pm8921_lvs4: lvs4 { 374724ba675SRob Herring bias-pull-down; 375724ba675SRob Herring }; 376724ba675SRob Herring 377724ba675SRob Herring pm8921_lvs5: lvs5 { 378724ba675SRob Herring bias-pull-down; 379724ba675SRob Herring }; 380724ba675SRob Herring 381724ba675SRob Herring pm8921_lvs6: lvs6 { 382724ba675SRob Herring bias-pull-down; 383724ba675SRob Herring }; 384724ba675SRob Herring 385724ba675SRob Herring pm8921_lvs7: lvs7 { 386724ba675SRob Herring bias-pull-down; 387724ba675SRob Herring }; 388724ba675SRob Herring 389724ba675SRob Herring pm8921_ncp: ncp { 390724ba675SRob Herring regulator-min-microvolt = <1800000>; 391724ba675SRob Herring regulator-max-microvolt = <1800000>; 392724ba675SRob Herring qcom,switch-mode-frequency = <1600000>; 393724ba675SRob Herring }; 394724ba675SRob Herring }; 395724ba675SRob Herring}; 396724ba675SRob Herring 397724ba675SRob Herring&usb_hs1_phy { 398724ba675SRob Herring v3p3-supply = <&pm8921_l3>; 399724ba675SRob Herring v1p8-supply = <&pm8921_l4>; 400724ba675SRob Herring}; 401724ba675SRob Herring 402724ba675SRob Herring&usb1 { 403724ba675SRob Herring dr_mode = "otg"; 404724ba675SRob Herring status = "okay"; 405724ba675SRob Herring}; 406