0001 // SPDX-License-Identifier: GPL-2.0-only
0002 /* Copyright (c) 2015, LGE Inc. All rights reserved.
0003 * Copyright (c) 2016, The Linux Foundation. All rights reserved.
0004 * Copyright (c) 2021, Petr Vorel <petr.vorel@gmail.com>
0005 */
0006
0007 /dts-v1/;
0008
0009 #include "msm8992.dtsi"
0010 #include "pm8994.dtsi"
0011 #include "pmi8994.dtsi"
0012
0013 /* cont_splash_mem has different memory mapping */
0014 /delete-node/ &cont_splash_mem;
0015
0016 / {
0017 model = "LG Nexus 5X";
0018 compatible = "lg,bullhead", "qcom,msm8992";
0019 chassis-type = "handset";
0020
0021 qcom,msm-id = <251 0>, <252 0>;
0022 qcom,pmic-id = <0x10009 0x1000A 0x0 0x0>;
0023
0024 /* Bullhead firmware doesn't support PSCI */
0025 /delete-node/ psci;
0026
0027 aliases {
0028 serial0 = &blsp1_uart2;
0029 };
0030
0031 chosen {
0032 stdout-path = "serial0:115200n8";
0033 };
0034
0035 reserved-memory {
0036 #address-cells = <2>;
0037 #size-cells = <2>;
0038 ranges;
0039
0040 ramoops@1ff00000 {
0041 compatible = "ramoops";
0042 reg = <0x0 0x1ff00000 0x0 0x40000>;
0043 console-size = <0x10000>;
0044 record-size = <0x10000>;
0045 ftrace-size = <0x10000>;
0046 pmsg-size = <0x20000>;
0047 };
0048
0049 cont_splash_mem: memory@3400000 {
0050 reg = <0 0x03400000 0 0x1200000>;
0051 no-map;
0052 };
0053 };
0054 };
0055
0056 &blsp1_uart2 {
0057 status = "okay";
0058 };
0059
0060 &rpm_requests {
0061 pm8994_regulators: pm8994-regulators {
0062 compatible = "qcom,rpm-pm8994-regulators";
0063
0064 vdd_l1-supply = <&pm8994_s1>;
0065 vdd_l2_26_28-supply = <&pm8994_s3>;
0066 vdd_l3_11-supply = <&pm8994_s3>;
0067 vdd_l4_27_31-supply = <&pm8994_s3>;
0068 vdd_l5_7-supply = <&pm8994_s3>;
0069 vdd_l6_12_32-supply = <&pm8994_s5>;
0070 vdd_l8_16_30-supply = <&vph_pwr>;
0071 vdd_l9_10_18_22-supply = <&vph_pwr>;
0072 vdd_l13_19_23_24-supply = <&vph_pwr>;
0073 vdd_l14_15-supply = <&pm8994_s5>;
0074 vdd_l17_29-supply = <&vph_pwr>;
0075 vdd_l20_21-supply = <&vph_pwr>;
0076 vdd_l25-supply = <&pm8994_s5>;
0077 vdd_lvs1_2-supply = <&pm8994_s4>;
0078
0079 /* S1, S2, S6 and S12 are managed by RPMPD */
0080
0081 pm8994_s1: s1 {
0082 regulator-min-microvolt = <800000>;
0083 regulator-max-microvolt = <800000>;
0084 };
0085
0086 pm8994_s2: s2 {
0087 /* TODO */
0088 };
0089
0090 pm8994_s3: s3 {
0091 regulator-min-microvolt = <1300000>;
0092 regulator-max-microvolt = <1300000>;
0093 };
0094
0095 pm8994_s4: s4 {
0096 regulator-min-microvolt = <1800000>;
0097 regulator-max-microvolt = <1800000>;
0098 regulator-allow-set-load;
0099 regulator-system-load = <325000>;
0100 };
0101
0102 pm8994_s5: s5 {
0103 regulator-min-microvolt = <2150000>;
0104 regulator-max-microvolt = <2150000>;
0105 };
0106
0107 pm8994_s7: s7 {
0108 regulator-min-microvolt = <1000000>;
0109 regulator-max-microvolt = <1000000>;
0110 };
0111
0112 /* S8, S9, S10 and S11 - SPMI-managed VDD_APC */
0113
0114 pm8994_l1: l1 {
0115 regulator-min-microvolt = <1000000>;
0116 regulator-max-microvolt = <1000000>;
0117 };
0118
0119 pm8994_l2: l2 {
0120 regulator-min-microvolt = <1250000>;
0121 regulator-max-microvolt = <1250000>;
0122 };
0123
0124 pm8994_l3: l3 {
0125 regulator-min-microvolt = <1200000>;
0126 regulator-max-microvolt = <1200000>;
0127 };
0128
0129 pm8994_l4: l4 {
0130 regulator-min-microvolt = <1225000>;
0131 regulator-max-microvolt = <1225000>;
0132 };
0133
0134 /* L5 is inaccessible from RPM */
0135
0136 pm8994_l6: l6 {
0137 regulator-min-microvolt = <1800000>;
0138 regulator-max-microvolt = <1800000>;
0139 };
0140
0141 /* L7 is inaccessible from RPM */
0142
0143 pm8994_l8: l8 {
0144 regulator-min-microvolt = <1800000>;
0145 regulator-max-microvolt = <1800000>;
0146 };
0147
0148 pm8994_l9: l9 {
0149 regulator-min-microvolt = <1800000>;
0150 regulator-max-microvolt = <1800000>;
0151 };
0152
0153 pm8994_l10: l10 {
0154 regulator-min-microvolt = <1800000>;
0155 regulator-max-microvolt = <1800000>;
0156 };
0157
0158 pm8994_l11: l11 {
0159 regulator-min-microvolt = <1200000>;
0160 regulator-max-microvolt = <1200000>;
0161 };
0162
0163 pm8994_l12: l12 {
0164 regulator-min-microvolt = <1800000>;
0165 regulator-max-microvolt = <1800000>;
0166 };
0167
0168 pm8994_l13: l13 {
0169 regulator-min-microvolt = <1800000>;
0170 regulator-max-microvolt = <2950000>;
0171 };
0172
0173 pm8994_l14: l14 {
0174 regulator-min-microvolt = <1200000>;
0175 regulator-max-microvolt = <1200000>;
0176 };
0177
0178 pm8994_l15: l15 {
0179 regulator-min-microvolt = <1800000>;
0180 regulator-max-microvolt = <1800000>;
0181 };
0182
0183 pm8994_l16: l16 {
0184 regulator-min-microvolt = <2700000>;
0185 regulator-max-microvolt = <2700000>;
0186 };
0187
0188 pm8994_l17: l17 {
0189 regulator-min-microvolt = <2700000>;
0190 regulator-max-microvolt = <2700000>;
0191 };
0192
0193 pm8994_l18: l18 {
0194 regulator-min-microvolt = <3000000>;
0195 regulator-max-microvolt = <3000000>;
0196 };
0197
0198 pm8994_l19: l19 {
0199 regulator-min-microvolt = <1800000>;
0200 regulator-max-microvolt = <1800000>;
0201 };
0202
0203 pm8994_l20: l20 {
0204 regulator-min-microvolt = <2950000>;
0205 regulator-max-microvolt = <2950000>;
0206 regulator-always-on;
0207 regulator-boot-on;
0208 regulator-allow-set-load;
0209 regulator-system-load = <570000>;
0210 };
0211
0212 pm8994_l21: l21 {
0213 regulator-min-microvolt = <1800000>;
0214 regulator-max-microvolt = <1800000>;
0215 regulator-always-on;
0216 };
0217
0218 pm8994_l22: l22 {
0219 regulator-min-microvolt = <3100000>;
0220 regulator-max-microvolt = <3100000>;
0221 };
0222
0223 pm8994_l23: l23 {
0224 regulator-min-microvolt = <2800000>;
0225 regulator-max-microvolt = <2800000>;
0226 };
0227
0228 pm8994_l24: l24 {
0229 regulator-min-microvolt = <3075000>;
0230 regulator-max-microvolt = <3150000>;
0231 };
0232
0233 pm8994_l25: l25 {
0234 regulator-min-microvolt = <1800000>;
0235 regulator-max-microvolt = <1800000>;
0236 };
0237
0238 pm8994_l26: l26 {
0239 /* TODO: value from downstream
0240 regulator-min-microvolt = <987500>;
0241 fails to apply */
0242 };
0243
0244 pm8994_l27: l27 {
0245 regulator-min-microvolt = <1050000>;
0246 regulator-max-microvolt = <1050000>;
0247 };
0248
0249 pm8994_l28: l28 {
0250 regulator-min-microvolt = <1000000>;
0251 regulator-max-microvolt = <1000000>;
0252 };
0253
0254 pm8994_l29: l29 {
0255 /* TODO: Unsupported voltage range.
0256 regulator-min-microvolt = <2800000>;
0257 regulator-max-microvolt = <2800000>;
0258 qcom,init-voltage = <2800000>;
0259 */
0260 };
0261
0262 pm8994_l30: l30 {
0263 /* TODO: get this verified
0264 regulator-min-microvolt = <1800000>;
0265 regulator-max-microvolt = <1800000>;
0266 qcom,init-voltage = <1800000>;
0267 */
0268 };
0269
0270 pm8994_l31: l31 {
0271 regulator-min-microvolt = <1262500>;
0272 regulator-max-microvolt = <1262500>;
0273 };
0274
0275 pm8994_l32: l32 {
0276 /* TODO: get this verified
0277 regulator-min-microvolt = <1800000>;
0278 regulator-max-microvolt = <1800000>;
0279 qcom,init-voltage = <1800000>;
0280 */
0281 };
0282 };
0283
0284 pmi8994_regulators: pmi8994-regulators {
0285 compatible = "qcom,rpm-pmi8994-regulators";
0286
0287 vdd_s1-supply = <&vph_pwr>;
0288 vdd_bst_byp-supply = <&vph_pwr>;
0289
0290 pmi8994_s1: s1 {};
0291
0292 /* S2 & S3 - VDD_GFX */
0293
0294 pmi8994_bby: boost-bypass {};
0295 };
0296 };
0297
0298 &sdhc1 {
0299 status = "okay";
0300
0301 mmc-hs400-1_8v;
0302 };