1c69af934SNeil Armstrong// SPDX-License-Identifier: GPL-2.0+ OR MIT 23106dba6SNeil Armstrong/* 33106dba6SNeil Armstrong * Device Tree Source for Sierra Wireless WP8548 Module 43106dba6SNeil Armstrong * 53106dba6SNeil Armstrong * Copyright (C) 2016 BayLibre, SAS. 63106dba6SNeil Armstrong * Author : Neil Armstrong <narmstrong@baylibre.com> 73106dba6SNeil Armstrong */ 83106dba6SNeil Armstrong 93106dba6SNeil Armstrong#include "qcom-mdm9615.dtsi" 10e9297150SDmitry Baryshkov#include "pm8018.dtsi" 113106dba6SNeil Armstrong 123106dba6SNeil Armstrong/ { 133106dba6SNeil Armstrong model = "Sierra Wireless WP8548 Module"; 143106dba6SNeil Armstrong compatible = "swir,wp8548", "qcom,mdm9615"; 153106dba6SNeil Armstrong 16ce0295a5SDavid Heidelberg memory@48000000 { 17abe60a3aSRob Herring device_type = "memory"; 183106dba6SNeil Armstrong reg = <0x48000000 0x7F00000>; 193106dba6SNeil Armstrong }; 203106dba6SNeil Armstrong}; 213106dba6SNeil Armstrong 223106dba6SNeil Armstrong&msmgpio { 233106dba6SNeil Armstrong pinctrl-0 = <&reset_out_pins>; 243106dba6SNeil Armstrong pinctrl-names = "default"; 253106dba6SNeil Armstrong 26fadae8feSNeil Armstrong gsbi3_pins: gsbi3-state { 27fadae8feSNeil Armstrong gsbi3-pins { 283106dba6SNeil Armstrong pins = "gpio8", "gpio9", "gpio10", "gpio11"; 293106dba6SNeil Armstrong function = "gsbi3"; 303106dba6SNeil Armstrong drive-strength = <8>; 313106dba6SNeil Armstrong bias-disable; 323106dba6SNeil Armstrong }; 333106dba6SNeil Armstrong }; 343106dba6SNeil Armstrong 35fadae8feSNeil Armstrong gsbi4_pins: gsbi4-state { 36fadae8feSNeil Armstrong gsbi4-pins { 373106dba6SNeil Armstrong pins = "gpio12", "gpio13", "gpio14", "gpio15"; 383106dba6SNeil Armstrong function = "gsbi4"; 393106dba6SNeil Armstrong drive-strength = <8>; 403106dba6SNeil Armstrong bias-disable; 413106dba6SNeil Armstrong }; 423106dba6SNeil Armstrong }; 433106dba6SNeil Armstrong 44fadae8feSNeil Armstrong gsbi5_i2c_pins: gsbi5-i2c-state { 45fadae8feSNeil Armstrong sda-pins { 463106dba6SNeil Armstrong pins = "gpio16"; 473106dba6SNeil Armstrong function = "gsbi5_i2c"; 483106dba6SNeil Armstrong drive-strength = <8>; 493106dba6SNeil Armstrong bias-disable; 503106dba6SNeil Armstrong }; 513106dba6SNeil Armstrong 52fadae8feSNeil Armstrong scl-pins { 533106dba6SNeil Armstrong pins = "gpio17"; 543106dba6SNeil Armstrong function = "gsbi5_i2c"; 553106dba6SNeil Armstrong drive-strength = <2>; 563106dba6SNeil Armstrong bias-disable; 573106dba6SNeil Armstrong }; 583106dba6SNeil Armstrong }; 593106dba6SNeil Armstrong 60fadae8feSNeil Armstrong gsbi5_uart_pins: gsbi5-uart-state { 61fadae8feSNeil Armstrong gsbi5-uart-pins { 623106dba6SNeil Armstrong pins = "gpio18", "gpio19"; 633106dba6SNeil Armstrong function = "gsbi5_uart"; 643106dba6SNeil Armstrong drive-strength = <8>; 653106dba6SNeil Armstrong bias-disable; 663106dba6SNeil Armstrong }; 673106dba6SNeil Armstrong }; 683106dba6SNeil Armstrong 69fadae8feSNeil Armstrong reset_out_pins: reset-out-state { 70fadae8feSNeil Armstrong reset-out-pins { 713106dba6SNeil Armstrong pins = "gpio66"; 723106dba6SNeil Armstrong function = "gpio"; 733106dba6SNeil Armstrong drive-strength = <2>; 743106dba6SNeil Armstrong bias-pull-up; 753106dba6SNeil Armstrong output-high; 763106dba6SNeil Armstrong }; 773106dba6SNeil Armstrong }; 783106dba6SNeil Armstrong}; 793106dba6SNeil Armstrong 807661e1e7SDmitry Baryshkov&pm8018 { 817661e1e7SDmitry Baryshkov interrupts-extended = <&intc GIC_PPI 226 IRQ_TYPE_LEVEL_HIGH>; 827661e1e7SDmitry Baryshkov}; 837661e1e7SDmitry Baryshkov 840e4688cdSDmitry Baryshkov&pm8018_gpio { 854fcdaf4bSKrzysztof Kozlowski usb_vbus_5v_pins: usb-vbus-5v-state { 863106dba6SNeil Armstrong pins = "gpio4"; 873106dba6SNeil Armstrong function = "normal"; 883106dba6SNeil Armstrong output-high; 893106dba6SNeil Armstrong bias-disable; 903106dba6SNeil Armstrong qcom,drive-strength = <1>; 913106dba6SNeil Armstrong power-source = <2>; 923106dba6SNeil Armstrong }; 933106dba6SNeil Armstrong}; 943106dba6SNeil Armstrong 953106dba6SNeil Armstrong&gsbi3 { 960fd69f04SAdrian Schmutzler status = "okay"; 973106dba6SNeil Armstrong qcom,mode = <GSBI_PROT_SPI>; 983106dba6SNeil Armstrong}; 993106dba6SNeil Armstrong 1003106dba6SNeil Armstrong&gsbi3_spi { 1010fd69f04SAdrian Schmutzler status = "okay"; 1023106dba6SNeil Armstrong pinctrl-0 = <&gsbi3_pins>; 1033106dba6SNeil Armstrong pinctrl-names = "default"; 1043106dba6SNeil Armstrong assigned-clocks = <&gcc GSBI3_QUP_CLK>; 1053106dba6SNeil Armstrong assigned-clock-rates = <24000000>; 1063106dba6SNeil Armstrong}; 1073106dba6SNeil Armstrong 1083106dba6SNeil Armstrong&gsbi4 { 1090fd69f04SAdrian Schmutzler status = "okay"; 1103106dba6SNeil Armstrong qcom,mode = <GSBI_PROT_UART_W_FC>; 1113106dba6SNeil Armstrong}; 1123106dba6SNeil Armstrong 1133106dba6SNeil Armstrong&gsbi4_serial { 1140fd69f04SAdrian Schmutzler status = "okay"; 1153106dba6SNeil Armstrong pinctrl-0 = <&gsbi4_pins>; 1163106dba6SNeil Armstrong pinctrl-names = "default"; 1173106dba6SNeil Armstrong}; 1183106dba6SNeil Armstrong 1193106dba6SNeil Armstrong&gsbi5 { 1200fd69f04SAdrian Schmutzler status = "okay"; 1213106dba6SNeil Armstrong qcom,mode = <GSBI_PROT_I2C_UART>; 1223106dba6SNeil Armstrong}; 1233106dba6SNeil Armstrong 1243106dba6SNeil Armstrong&gsbi5_i2c { 1250fd69f04SAdrian Schmutzler status = "okay"; 1263106dba6SNeil Armstrong clock-frequency = <200000>; 1273106dba6SNeil Armstrong pinctrl-0 = <&gsbi5_i2c_pins>; 1283106dba6SNeil Armstrong pinctrl-names = "default"; 1293106dba6SNeil Armstrong}; 1303106dba6SNeil Armstrong 1313106dba6SNeil Armstrong&gsbi5_serial { 1320fd69f04SAdrian Schmutzler status = "okay"; 1333106dba6SNeil Armstrong pinctrl-0 = <&gsbi5_uart_pins>; 1343106dba6SNeil Armstrong pinctrl-names = "default"; 1353106dba6SNeil Armstrong}; 1363106dba6SNeil Armstrong 137*8299cc4bSDmitry Baryshkov&rpm { 138*8299cc4bSDmitry Baryshkov regulators { 139*8299cc4bSDmitry Baryshkov compatible = "qcom,rpm-pm8018-regulators"; 140*8299cc4bSDmitry Baryshkov 141*8299cc4bSDmitry Baryshkov vin_lvs1-supply = <&pm8018_s3>; 142*8299cc4bSDmitry Baryshkov 143*8299cc4bSDmitry Baryshkov vdd_l7-supply = <&pm8018_s4>; 144*8299cc4bSDmitry Baryshkov vdd_l8-supply = <&pm8018_s3>; 145*8299cc4bSDmitry Baryshkov vdd_l9_l10_l11_l12-supply = <&pm8018_s5>; 146*8299cc4bSDmitry Baryshkov 147*8299cc4bSDmitry Baryshkov /* Buck SMPS */ 148*8299cc4bSDmitry Baryshkov pm8018_s1: s1 { 149*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <500000>; 150*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1150000>; 151*8299cc4bSDmitry Baryshkov qcom,switch-mode-frequency = <1600000>; 152*8299cc4bSDmitry Baryshkov bias-pull-down; 153*8299cc4bSDmitry Baryshkov }; 154*8299cc4bSDmitry Baryshkov 155*8299cc4bSDmitry Baryshkov pm8018_s2: s2 { 156*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1225000>; 157*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1300000>; 158*8299cc4bSDmitry Baryshkov qcom,switch-mode-frequency = <1600000>; 159*8299cc4bSDmitry Baryshkov bias-pull-down; 160*8299cc4bSDmitry Baryshkov }; 161*8299cc4bSDmitry Baryshkov 162*8299cc4bSDmitry Baryshkov pm8018_s3: s3 { 163*8299cc4bSDmitry Baryshkov regulator-always-on; 164*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1800000>; 165*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1800000>; 166*8299cc4bSDmitry Baryshkov qcom,switch-mode-frequency = <1600000>; 167*8299cc4bSDmitry Baryshkov bias-pull-down; 168*8299cc4bSDmitry Baryshkov }; 169*8299cc4bSDmitry Baryshkov 170*8299cc4bSDmitry Baryshkov pm8018_s4: s4 { 171*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <2100000>; 172*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <2200000>; 173*8299cc4bSDmitry Baryshkov qcom,switch-mode-frequency = <1600000>; 174*8299cc4bSDmitry Baryshkov bias-pull-down; 175*8299cc4bSDmitry Baryshkov }; 176*8299cc4bSDmitry Baryshkov 177*8299cc4bSDmitry Baryshkov pm8018_s5: s5 { 178*8299cc4bSDmitry Baryshkov regulator-always-on; 179*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1350000>; 180*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1350000>; 181*8299cc4bSDmitry Baryshkov qcom,switch-mode-frequency = <1600000>; 182*8299cc4bSDmitry Baryshkov bias-pull-down; 183*8299cc4bSDmitry Baryshkov }; 184*8299cc4bSDmitry Baryshkov 185*8299cc4bSDmitry Baryshkov /* PMOS LDO */ 186*8299cc4bSDmitry Baryshkov pm8018_l2: l2 { 187*8299cc4bSDmitry Baryshkov regulator-always-on; 188*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1800000>; 189*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1800000>; 190*8299cc4bSDmitry Baryshkov bias-pull-down; 191*8299cc4bSDmitry Baryshkov }; 192*8299cc4bSDmitry Baryshkov 193*8299cc4bSDmitry Baryshkov pm8018_l3: l3 { 194*8299cc4bSDmitry Baryshkov regulator-always-on; 195*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1800000>; 196*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1800000>; 197*8299cc4bSDmitry Baryshkov bias-pull-down; 198*8299cc4bSDmitry Baryshkov }; 199*8299cc4bSDmitry Baryshkov 200*8299cc4bSDmitry Baryshkov pm8018_l4: l4 { 201*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <3300000>; 202*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <3300000>; 203*8299cc4bSDmitry Baryshkov bias-pull-down; 204*8299cc4bSDmitry Baryshkov }; 205*8299cc4bSDmitry Baryshkov 206*8299cc4bSDmitry Baryshkov pm8018_l5: l5 { 207*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <2850000>; 208*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <2850000>; 209*8299cc4bSDmitry Baryshkov bias-pull-down; 210*8299cc4bSDmitry Baryshkov }; 211*8299cc4bSDmitry Baryshkov 212*8299cc4bSDmitry Baryshkov pm8018_l6: l6 { 213*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1800000>; 214*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <2850000>; 215*8299cc4bSDmitry Baryshkov bias-pull-down; 216*8299cc4bSDmitry Baryshkov }; 217*8299cc4bSDmitry Baryshkov 218*8299cc4bSDmitry Baryshkov pm8018_l7: l7 { 219*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1850000>; 220*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1900000>; 221*8299cc4bSDmitry Baryshkov bias-pull-down; 222*8299cc4bSDmitry Baryshkov }; 223*8299cc4bSDmitry Baryshkov 224*8299cc4bSDmitry Baryshkov pm8018_l8: l8 { 225*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1200000>; 226*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1200000>; 227*8299cc4bSDmitry Baryshkov bias-pull-down; 228*8299cc4bSDmitry Baryshkov }; 229*8299cc4bSDmitry Baryshkov 230*8299cc4bSDmitry Baryshkov pm8018_l9: l9 { 231*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <750000>; 232*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1150000>; 233*8299cc4bSDmitry Baryshkov bias-pull-down; 234*8299cc4bSDmitry Baryshkov }; 235*8299cc4bSDmitry Baryshkov 236*8299cc4bSDmitry Baryshkov pm8018_l10: l10 { 237*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1050000>; 238*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1050000>; 239*8299cc4bSDmitry Baryshkov bias-pull-down; 240*8299cc4bSDmitry Baryshkov }; 241*8299cc4bSDmitry Baryshkov 242*8299cc4bSDmitry Baryshkov pm8018_l11: l11 { 243*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1050000>; 244*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1050000>; 245*8299cc4bSDmitry Baryshkov bias-pull-down; 246*8299cc4bSDmitry Baryshkov }; 247*8299cc4bSDmitry Baryshkov 248*8299cc4bSDmitry Baryshkov pm8018_l12: l12 { 249*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1050000>; 250*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <1050000>; 251*8299cc4bSDmitry Baryshkov bias-pull-down; 252*8299cc4bSDmitry Baryshkov }; 253*8299cc4bSDmitry Baryshkov 254*8299cc4bSDmitry Baryshkov pm8018_l13: l13 { 255*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <1850000>; 256*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <2950000>; 257*8299cc4bSDmitry Baryshkov bias-pull-down; 258*8299cc4bSDmitry Baryshkov }; 259*8299cc4bSDmitry Baryshkov 260*8299cc4bSDmitry Baryshkov pm8018_l14: l14 { 261*8299cc4bSDmitry Baryshkov regulator-min-microvolt = <2850000>; 262*8299cc4bSDmitry Baryshkov regulator-max-microvolt = <2850000>; 263*8299cc4bSDmitry Baryshkov bias-pull-down; 264*8299cc4bSDmitry Baryshkov }; 265*8299cc4bSDmitry Baryshkov 266*8299cc4bSDmitry Baryshkov /* Low Voltage Switch */ 267*8299cc4bSDmitry Baryshkov pm8018_lvs1: lvs1 { 268*8299cc4bSDmitry Baryshkov bias-pull-down; 269*8299cc4bSDmitry Baryshkov }; 270*8299cc4bSDmitry Baryshkov }; 271*8299cc4bSDmitry Baryshkov}; 272*8299cc4bSDmitry Baryshkov 2733106dba6SNeil Armstrong&sdcc1 { 2740fd69f04SAdrian Schmutzler status = "okay"; 2753106dba6SNeil Armstrong}; 276