1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyun/* Copyright (c) 2015, LGE Inc. All rights reserved. 3*4882a593Smuzhiyun * Copyright (c) 2016, The Linux Foundation. All rights reserved. 4*4882a593Smuzhiyun * Copyright (c) 2021, Petr Vorel <petr.vorel@gmail.com> 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun/dts-v1/; 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun#include "msm8992.dtsi" 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun/ { 12*4882a593Smuzhiyun model = "LG Nexus 5X"; 13*4882a593Smuzhiyun compatible = "lg,bullhead", "qcom,msm8992"; 14*4882a593Smuzhiyun /* required for bootloader to select correct board */ 15*4882a593Smuzhiyun qcom,msm-id = <251 0>, <252 0>; 16*4882a593Smuzhiyun qcom,board-id = <0xb64 0>; 17*4882a593Smuzhiyun qcom,pmic-id = <0x10009 0x1000A 0x0 0x0>; 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun /* Bullhead firmware doesn't support PSCI */ 20*4882a593Smuzhiyun /delete-node/ psci; 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun aliases { 23*4882a593Smuzhiyun serial0 = &blsp1_uart2; 24*4882a593Smuzhiyun }; 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun chosen { 27*4882a593Smuzhiyun stdout-path = "serial0:115200n8"; 28*4882a593Smuzhiyun }; 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun reserved-memory { 31*4882a593Smuzhiyun #address-cells = <2>; 32*4882a593Smuzhiyun #size-cells = <2>; 33*4882a593Smuzhiyun ranges; 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun ramoops@1ff00000 { 36*4882a593Smuzhiyun compatible = "ramoops"; 37*4882a593Smuzhiyun reg = <0x0 0x1ff00000 0x0 0x40000>; 38*4882a593Smuzhiyun console-size = <0x10000>; 39*4882a593Smuzhiyun record-size = <0x10000>; 40*4882a593Smuzhiyun ftrace-size = <0x10000>; 41*4882a593Smuzhiyun pmsg-size = <0x20000>; 42*4882a593Smuzhiyun }; 43*4882a593Smuzhiyun }; 44*4882a593Smuzhiyun}; 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun&blsp1_uart2 { 47*4882a593Smuzhiyun status = "okay"; 48*4882a593Smuzhiyun}; 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun&rpm_requests { 51*4882a593Smuzhiyun pm8994-regulators { 52*4882a593Smuzhiyun compatible = "qcom,rpm-pm8994-regulators"; 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun vdd_l1-supply = <&pm8994_s1>; 55*4882a593Smuzhiyun vdd_l2_26_28-supply = <&pm8994_s3>; 56*4882a593Smuzhiyun vdd_l3_11-supply = <&pm8994_s3>; 57*4882a593Smuzhiyun vdd_l4_27_31-supply = <&pm8994_s3>; 58*4882a593Smuzhiyun vdd_l5_7-supply = <&pm8994_s3>; 59*4882a593Smuzhiyun vdd_l6_12_32-supply = <&pm8994_s5>; 60*4882a593Smuzhiyun vdd_l8_16_30-supply = <&vreg_vph_pwr>; 61*4882a593Smuzhiyun vdd_l9_10_18_22-supply = <&vreg_vph_pwr>; 62*4882a593Smuzhiyun vdd_l13_19_23_24-supply = <&vreg_vph_pwr>; 63*4882a593Smuzhiyun vdd_l14_15-supply = <&pm8994_s5>; 64*4882a593Smuzhiyun vdd_l17_29-supply = <&vreg_vph_pwr>; 65*4882a593Smuzhiyun vdd_l20_21-supply = <&vreg_vph_pwr>; 66*4882a593Smuzhiyun vdd_l25-supply = <&pm8994_s5>; 67*4882a593Smuzhiyun vdd_lvs1_2-supply = <&pm8994_s4>; 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun pm8994_s1: s1 { 70*4882a593Smuzhiyun regulator-min-microvolt = <800000>; 71*4882a593Smuzhiyun regulator-max-microvolt = <800000>; 72*4882a593Smuzhiyun }; 73*4882a593Smuzhiyun 74*4882a593Smuzhiyun pm8994_s2: s2 { 75*4882a593Smuzhiyun /* TODO */ 76*4882a593Smuzhiyun }; 77*4882a593Smuzhiyun 78*4882a593Smuzhiyun pm8994_s3: s3 { 79*4882a593Smuzhiyun regulator-min-microvolt = <1300000>; 80*4882a593Smuzhiyun regulator-max-microvolt = <1300000>; 81*4882a593Smuzhiyun }; 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun pm8994_s4: s4 { 84*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 85*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 86*4882a593Smuzhiyun regulator-allow-set-load; 87*4882a593Smuzhiyun regulator-system-load = <325000>; 88*4882a593Smuzhiyun }; 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun pm8994_s5: s5 { 91*4882a593Smuzhiyun regulator-min-microvolt = <2150000>; 92*4882a593Smuzhiyun regulator-max-microvolt = <2150000>; 93*4882a593Smuzhiyun }; 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun pm8994_s7: s7 { 96*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 97*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 98*4882a593Smuzhiyun }; 99*4882a593Smuzhiyun 100*4882a593Smuzhiyun pm8994_l1: l1 { 101*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 102*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 103*4882a593Smuzhiyun }; 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun pm8994_l2: l2 { 106*4882a593Smuzhiyun regulator-min-microvolt = <1250000>; 107*4882a593Smuzhiyun regulator-max-microvolt = <1250000>; 108*4882a593Smuzhiyun }; 109*4882a593Smuzhiyun 110*4882a593Smuzhiyun pm8994_l3: l3 { 111*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 112*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 113*4882a593Smuzhiyun }; 114*4882a593Smuzhiyun 115*4882a593Smuzhiyun pm8994_l4: l4 { 116*4882a593Smuzhiyun regulator-min-microvolt = <1225000>; 117*4882a593Smuzhiyun regulator-max-microvolt = <1225000>; 118*4882a593Smuzhiyun }; 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun pm8994_l5: l5 { 121*4882a593Smuzhiyun /* TODO */ 122*4882a593Smuzhiyun }; 123*4882a593Smuzhiyun 124*4882a593Smuzhiyun pm8994_l6: l6 { 125*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 126*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 127*4882a593Smuzhiyun }; 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun pm8994_l7: l7 { 130*4882a593Smuzhiyun /* TODO */ 131*4882a593Smuzhiyun }; 132*4882a593Smuzhiyun 133*4882a593Smuzhiyun pm8994_l8: l8 { 134*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 135*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 136*4882a593Smuzhiyun }; 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun pm8994_l9: l9 { 139*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 140*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 141*4882a593Smuzhiyun }; 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun pm8994_l10: l10 { 144*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 145*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 146*4882a593Smuzhiyun }; 147*4882a593Smuzhiyun 148*4882a593Smuzhiyun pm8994_l11: l11 { 149*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 150*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 151*4882a593Smuzhiyun }; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun pm8994_l12: l12 { 154*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 155*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 156*4882a593Smuzhiyun }; 157*4882a593Smuzhiyun 158*4882a593Smuzhiyun pm8994_l13: l13 { 159*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 160*4882a593Smuzhiyun regulator-max-microvolt = <2950000>; 161*4882a593Smuzhiyun }; 162*4882a593Smuzhiyun 163*4882a593Smuzhiyun pm8994_l14: l14 { 164*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 165*4882a593Smuzhiyun regulator-max-microvolt = <1200000>; 166*4882a593Smuzhiyun }; 167*4882a593Smuzhiyun 168*4882a593Smuzhiyun pm8994_l15: l15 { 169*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 170*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 171*4882a593Smuzhiyun }; 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun pm8994_l16: l16 { 174*4882a593Smuzhiyun regulator-min-microvolt = <2700000>; 175*4882a593Smuzhiyun regulator-max-microvolt = <2700000>; 176*4882a593Smuzhiyun }; 177*4882a593Smuzhiyun 178*4882a593Smuzhiyun pm8994_l17: l17 { 179*4882a593Smuzhiyun regulator-min-microvolt = <2700000>; 180*4882a593Smuzhiyun regulator-max-microvolt = <2700000>; 181*4882a593Smuzhiyun }; 182*4882a593Smuzhiyun 183*4882a593Smuzhiyun pm8994_l18: l18 { 184*4882a593Smuzhiyun regulator-min-microvolt = <3000000>; 185*4882a593Smuzhiyun regulator-max-microvolt = <3000000>; 186*4882a593Smuzhiyun }; 187*4882a593Smuzhiyun 188*4882a593Smuzhiyun pm8994_l19: l19 { 189*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 190*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 191*4882a593Smuzhiyun }; 192*4882a593Smuzhiyun 193*4882a593Smuzhiyun pm8994_l20: l20 { 194*4882a593Smuzhiyun regulator-min-microvolt = <2950000>; 195*4882a593Smuzhiyun regulator-max-microvolt = <2950000>; 196*4882a593Smuzhiyun regulator-always-on; 197*4882a593Smuzhiyun regulator-boot-on; 198*4882a593Smuzhiyun regulator-allow-set-load; 199*4882a593Smuzhiyun regulator-system-load = <570000>; 200*4882a593Smuzhiyun }; 201*4882a593Smuzhiyun 202*4882a593Smuzhiyun pm8994_l21: l21 { 203*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 204*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 205*4882a593Smuzhiyun regulator-always-on; 206*4882a593Smuzhiyun }; 207*4882a593Smuzhiyun 208*4882a593Smuzhiyun pm8994_l22: l22 { 209*4882a593Smuzhiyun regulator-min-microvolt = <3100000>; 210*4882a593Smuzhiyun regulator-max-microvolt = <3100000>; 211*4882a593Smuzhiyun }; 212*4882a593Smuzhiyun 213*4882a593Smuzhiyun pm8994_l23: l23 { 214*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 215*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 216*4882a593Smuzhiyun }; 217*4882a593Smuzhiyun 218*4882a593Smuzhiyun pm8994_l24: l24 { 219*4882a593Smuzhiyun regulator-min-microvolt = <3075000>; 220*4882a593Smuzhiyun regulator-max-microvolt = <3150000>; 221*4882a593Smuzhiyun }; 222*4882a593Smuzhiyun 223*4882a593Smuzhiyun pm8994_l25: l25 { 224*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 225*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 226*4882a593Smuzhiyun }; 227*4882a593Smuzhiyun 228*4882a593Smuzhiyun pm8994_l26: l26 { 229*4882a593Smuzhiyun /* TODO: value from downstream 230*4882a593Smuzhiyun regulator-min-microvolt = <987500>; 231*4882a593Smuzhiyun fails to apply */ 232*4882a593Smuzhiyun }; 233*4882a593Smuzhiyun 234*4882a593Smuzhiyun pm8994_l27: l27 { 235*4882a593Smuzhiyun regulator-min-microvolt = <1050000>; 236*4882a593Smuzhiyun regulator-max-microvolt = <1050000>; 237*4882a593Smuzhiyun }; 238*4882a593Smuzhiyun 239*4882a593Smuzhiyun pm8994_l28: l28 { 240*4882a593Smuzhiyun regulator-min-microvolt = <1000000>; 241*4882a593Smuzhiyun regulator-max-microvolt = <1000000>; 242*4882a593Smuzhiyun }; 243*4882a593Smuzhiyun 244*4882a593Smuzhiyun pm8994_l29: l29 { 245*4882a593Smuzhiyun /* TODO: Unsupported voltage range. 246*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 247*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 248*4882a593Smuzhiyun qcom,init-voltage = <2800000>; 249*4882a593Smuzhiyun */ 250*4882a593Smuzhiyun }; 251*4882a593Smuzhiyun 252*4882a593Smuzhiyun pm8994_l30: l30 { 253*4882a593Smuzhiyun /* TODO: get this verified 254*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 255*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 256*4882a593Smuzhiyun qcom,init-voltage = <1800000>; 257*4882a593Smuzhiyun */ 258*4882a593Smuzhiyun }; 259*4882a593Smuzhiyun 260*4882a593Smuzhiyun pm8994_l31: l31 { 261*4882a593Smuzhiyun regulator-min-microvolt = <1262500>; 262*4882a593Smuzhiyun regulator-max-microvolt = <1262500>; 263*4882a593Smuzhiyun }; 264*4882a593Smuzhiyun 265*4882a593Smuzhiyun pm8994_l32: l32 { 266*4882a593Smuzhiyun /* TODO: get this verified 267*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 268*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 269*4882a593Smuzhiyun qcom,init-voltage = <1800000>; 270*4882a593Smuzhiyun */ 271*4882a593Smuzhiyun }; 272*4882a593Smuzhiyun }; 273*4882a593Smuzhiyun}; 274*4882a593Smuzhiyun 275*4882a593Smuzhiyun&sdhc_1 { 276*4882a593Smuzhiyun status = "okay"; 277*4882a593Smuzhiyun 278*4882a593Smuzhiyun mmc-hs400-1_8v; 279*4882a593Smuzhiyun}; 280