1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2016-2022, AngeloGioacchino Del Regno 4 * <angelogioacchino.delregno@somainline.org> 5 * Copyright (c) 2022, Konrad Dybcio <konrad.dybcio@somainline.org> 6 * Copyright (c) 2022, Marijn Suijten <marijn.suijten@somainline.org> 7 */ 8 9#include "msm8956.dtsi" 10 11#include "pm8004.dtsi" 12#include "pm8950.dtsi" 13#include "pmi8950.dtsi" 14 15/ { 16 qcom,msm-id = <266 0x10001>; /* MSM8956 v1.1 */ 17 qcom,board-id = <8 0>; 18 19 aliases { 20 mmc0 = &sdhc_1; /* SDC1 eMMC slot */ 21 mmc1 = &sdhc_2; /* SDC2 SD card slot */ 22 mmc2 = &sdhc_3; /* SDC3 SDIO card slot */ 23 serial0 = &blsp2_uart2; 24 }; 25 26 chosen { 27 stdout-path = "serial0:115200n8"; 28 }; 29 30 reserved-memory { 31 cont-splash@83000000 { 32 reg = <0x0 0x83000000 0x0 0x2800000>; 33 }; 34 35 ramoops@57f00000 { 36 compatible = "ramoops"; 37 reg = <0 0x57f00000 0 0x100000>; 38 record-size = <0x20000>; 39 console-size = <0x40000>; 40 ftrace-size = <0x20000>; 41 pmsg-size = <0x20000>; 42 ecc-size = <16>; 43 }; 44 }; 45 46 usbphy_1p2: regulator-usbphy-1p2 { 47 compatible = "regulator-fixed"; 48 regulator-name = "usbphy-1p2"; 49 regulator-always-on; 50 regulator-boot-on; 51 regulator-min-microvolt = <1200000>; 52 regulator-max-microvolt = <1200000>; 53 vin-supply = <&vph_pwr>; 54 }; 55 56 vph_pwr: regulator-vph-pwr { 57 compatible = "regulator-fixed"; 58 regulator-name = "vph-pwr"; 59 regulator-always-on; 60 regulator-boot-on; 61 }; 62}; 63 64&blsp1_i2c4 { 65 status = "okay"; 66 67 /* Synaptics RMI4 @ 2c */ 68}; 69 70&blsp2_uart2 { 71 status = "okay"; 72}; 73 74&gcc { 75 vdd_gfx-supply = <&pm8004_s5>; 76}; 77 78&otg { 79 status = "okay"; 80}; 81 82&pm8004_spmi_regulators { 83 vdd_s2-supply = <&vph_pwr>; 84 vdd_s5-supply = <&vph_pwr>; 85 86 /* Cluster 1 supply */ 87 pm8004_s2: s2 { 88 /* regulator-min-microvolt = <500000>; */ 89 /* Set .95V to prevent unstabilities until CPR for this SoC is done */ 90 regulator-min-microvolt = <950000>; 91 regulator-max-microvolt = <1165000>; 92 regulator-name = "vdd_apc1"; 93 /* Set always on until the CPU PLL is done */ 94 regulator-always-on; 95 regulator-boot-on; 96 }; 97 98 pm8004_s5: s5 { 99 regulator-min-microvolt = <950000>; 100 regulator-max-microvolt = <1165000>; 101 regulator-enable-ramp-delay = <500>; 102 regulator-name = "vdd_gfx"; 103 /* Hack this on until the gpu driver is ready for it */ 104 regulator-always-on; 105 }; 106}; 107 108&pm8950_spmi_regulators { 109 vdd_s5-supply = <&vph_pwr>; 110 111 /* Cluster 0 supply */ 112 pm8950_spmi_s5: s5 { 113 /* Set .95V to prevent unstabilities until CPR for this SoC is done */ 114 /* regulator-min-microvolt = <790000>; */ 115 regulator-min-microvolt = <950000>; 116 regulator-max-microvolt = <1165000>; 117 regulator-name = "vdd_apc0"; 118 /* Set always on until the CPU PLL is done */ 119 regulator-always-on; 120 regulator-boot-on; 121 }; 122}; 123 124&rpm_requests { 125 pm8950_regulators: regulators { 126 compatible = "qcom,rpm-pm8950-regulators"; 127 128 vdd_s1-supply = <&vph_pwr>; 129 vdd_s2-supply = <&vph_pwr>; 130 vdd_s3-supply = <&vph_pwr>; 131 vdd_s4-supply = <&vph_pwr>; 132 vdd_s6-supply = <&vph_pwr>; 133 vdd_l1_l19-supply = <&pm8950_s3>; 134 vdd_l2_l23-supply = <&pm8950_s3>; 135 vdd_l3-supply = <&pm8950_s3>; 136 vdd_l5_l6_l7_l16-supply = <&pm8950_s4>; 137 vdd_l8_l11_l12_l17_l22-supply = <&vph_pwr>; 138 139 pm8950_s1: s1 { 140 regulator-min-microvolt = <1000000>; 141 regulator-max-microvolt = <1162500>; 142 }; 143 144 pm8950_s3: s3 { 145 regulator-min-microvolt = <1325000>; 146 regulator-max-microvolt = <1325000>; 147 regulator-always-on; 148 }; 149 150 pm8950_s4: s4 { 151 regulator-min-microvolt = <1800000>; 152 regulator-max-microvolt = <1800000>; 153 regulator-always-on; 154 }; 155 156 pm8950_l1: l1 { 157 regulator-min-microvolt = <900000>; 158 regulator-max-microvolt = <1100000>; 159 }; 160 161 pm8950_l2: l2 { 162 regulator-min-microvolt = <1200000>; 163 regulator-max-microvolt = <1200000>; 164 }; 165 166 pm8950_l3: l3 { 167 regulator-min-microvolt = <1000000>; 168 regulator-max-microvolt = <1200000>; 169 }; 170 171 pm8950_l5: l5 { 172 regulator-min-microvolt = <1800000>; 173 regulator-max-microvolt = <1800000>; 174 regulator-system-load = <290000>; 175 regulator-allow-set-load; 176 }; 177 178 pm8950_l6: l6 { 179 regulator-min-microvolt = <1800000>; 180 regulator-max-microvolt = <1800000>; 181 }; 182 183 pm8950_l7: l7 { 184 regulator-min-microvolt = <1800000>; 185 regulator-max-microvolt = <1800000>; 186 }; 187 188 pm8950_l8: l8 { 189 regulator-min-microvolt = <2900000>; 190 regulator-max-microvolt = <2900000>; 191 regulator-system-load = <130000>; 192 regulator-allow-set-load; 193 }; 194 195 pm8950_l9: l9 { 196 regulator-min-microvolt = <2000000>; 197 regulator-max-microvolt = <2400000>; 198 }; 199 200 pm8950_l10: l10 { 201 regulator-min-microvolt = <2500000>; 202 regulator-max-microvolt = <2900000>; 203 }; 204 205 pm8950_l11: l11 { 206 regulator-min-microvolt = <2950000>; 207 regulator-max-microvolt = <2950000>; 208 regulator-system-load = <60000>; 209 regulator-allow-set-load; 210 }; 211 212 pm8950_l12: l12 { 213 regulator-min-microvolt = <1800000>; 214 regulator-max-microvolt = <2950000>; 215 regulator-system-load = <100000>; 216 regulator-allow-set-load; 217 }; 218 219 pm8950_l13: l13 { 220 regulator-min-microvolt = <3075000>; 221 regulator-max-microvolt = <3075000>; 222 }; 223 224 pm8950_l14: l14 { 225 regulator-min-microvolt = <1800000>; 226 regulator-max-microvolt = <3300000>; 227 }; 228 229 pm8950_l15: l15 { 230 regulator-min-microvolt = <1800000>; 231 regulator-max-microvolt = <3300000>; 232 }; 233 234 pm8950_l16: l16 { 235 regulator-min-microvolt = <1800000>; 236 regulator-max-microvolt = <1800000>; 237 }; 238 239 pm8950_l17: l17 { 240 regulator-min-microvolt = <2500000>; 241 regulator-max-microvolt = <2900000>; 242 }; 243 244 pm8950_l22: l22 { 245 regulator-min-microvolt = <3000000>; 246 regulator-max-microvolt = <3000000>; 247 }; 248 249 pm8950_l23: l23 { 250 regulator-min-microvolt = <1200000>; 251 regulator-max-microvolt = <1200000>; 252 }; 253 }; 254}; 255 256&sdhc_1 { 257 /* Toshiba THGBMHG8C4LBAU7 (032G34) */ 258 bus-width = <8>; 259 non-removable; 260 vmmc-supply = <&pm8950_l8>; 261 vqmmc-supply = <&pm8950_l5>; 262 status = "okay"; 263}; 264 265&sdhc_2 { 266 bus-width = <4>; 267 cd-gpios = <&tlmm 100 GPIO_ACTIVE_HIGH>; 268 vmmc-supply = <&pm8950_l11>; 269 vqmmc-supply = <&pm8950_l12>; 270 status = "okay"; 271}; 272 273&tlmm { 274 gpio-reserved-ranges = <0 4>; 275}; 276 277&usb_hs_phy { 278 vdd-supply = <&usbphy_1p2>; 279 vdda1p8-supply = <&pm8950_l7>; 280 vdda3p3-supply = <&pm8950_l13>; 281 status = "okay"; 282}; 283 284&xo_board { 285 clock-frequency = <19200000>; 286}; 287