1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright (c) 2021, The Linux Foundation. All rights reserved. 4 */ 5 6/dts-v1/; 7 8#include <dt-bindings/arm/qcom,ids.h> 9#include <dt-bindings/firmware/qcom,scm.h> 10#include <dt-bindings/gpio/gpio.h> 11#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 12#include "sm7125.dtsi" 13#include "pm6150.dtsi" 14#include "pm6150l.dtsi" 15 16/delete-node/ &ipa_fw_mem; 17/delete-node/ &rmtfs_mem; 18 19/ { 20 chassis-type = "handset"; 21 22 qcom,msm-id = <QCOM_ID_SM7125 0>; 23 24 chosen { 25 #address-cells = <2>; 26 #size-cells = <2>; 27 ranges; 28 29 framebuffer@9c000000 { 30 compatible = "simple-framebuffer"; 31 reg = <0x0 0x9c000000 0x0 (1080 * 2400 * 4)>; 32 width = <1080>; 33 height = <2400>; 34 stride = <(1080 * 4)>; 35 format = "a8r8g8b8"; 36 clocks = <&gcc GCC_DISP_HF_AXI_CLK>; 37 }; 38 }; 39 40 gpio_keys: gpio-keys { 41 compatible = "gpio-keys"; 42 43 key-vol-up { 44 label = "Volume Up"; 45 linux,code = <KEY_VOLUMEUP>; 46 gpios = <&pm6150l_gpios 2 GPIO_ACTIVE_LOW>; 47 debounce-interval = <15>; 48 linux,can-disable; 49 wakeup-source; 50 }; 51 }; 52 53 reserved-memory { 54 mpss_mem: memory@86000000 { 55 reg = <0x0 0x86000000 0x0 0x8400000>; 56 no-map; 57 }; 58 59 venus_mem: memory@8ee00000 { 60 reg = <0x0 0x8ee00000 0x0 0x500000>; 61 no-map; 62 }; 63 64 cdsp_mem: memory@8f300000 { 65 reg = <0x0 0x8f300000 0x0 0x1e00000>; 66 no-map; 67 }; 68 69 adsp_mem: memory@91100000 { 70 reg = <0x0 0x91100000 0x0 0x2800000>; 71 no-map; 72 }; 73 74 wlan_mem: memory@93900000 { 75 reg = <0x0 0x93900000 0x0 0x200000>; 76 no-map; 77 }; 78 79 ipa_fw_mem: memory@93b00000 { 80 reg = <0x0 0x93b00000 0x0 0x10000>; 81 no-map; 82 }; 83 84 gpu_mem: memory@93b15000 { 85 reg = <0x0 0x93b15000 0x0 0x2000>; 86 no-map; 87 }; 88 89 cont_splash_mem: memory@9c000000 { 90 reg = <0x0 0x9c000000 0x0 (1080 * 2400 * 4)>; 91 no-map; 92 }; 93 94 pstore_mem: ramoops@9d800000 { 95 compatible = "ramoops"; 96 reg = <0x0 0x9d800000 0x0 0x400000>; 97 record-size = <0x80000>; 98 pmsg-size = <0x200000>; 99 console-size = <0x100000>; 100 }; 101 102 rmtfs_mem: memory@fa601000 { 103 compatible = "qcom,rmtfs-mem"; 104 reg = <0x0 0xfa601000 0x0 0x200000>; 105 no-map; 106 107 qcom,client-id = <1>; 108 qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>; 109 }; 110 }; 111}; 112 113&apps_rsc { 114 regulators-0 { 115 compatible = "qcom,pm6150-rpmh-regulators"; 116 qcom,pmic-id = "a"; 117 118 vreg_s1a_1p1: smps1 { 119 regulator-min-microvolt = <1128000>; 120 regulator-max-microvolt = <1128000>; 121 }; 122 123 vreg_s4a_1p0: smps4 { 124 regulator-min-microvolt = <824000>; 125 regulator-max-microvolt = <1120000>; 126 }; 127 128 vreg_s5a_2p0: smps5 { 129 regulator-min-microvolt = <1744000>; 130 regulator-max-microvolt = <2040000>; 131 }; 132 133 vreg_l1a_1p2: ldo1 { 134 regulator-min-microvolt = <1178000>; 135 regulator-max-microvolt = <1256000>; 136 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 137 }; 138 139 vreg_l2a_1p0: ldo2 { 140 regulator-min-microvolt = <944000>; 141 regulator-max-microvolt = <1056000>; 142 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 143 }; 144 145 vreg_l3a_1p0: ldo3 { 146 regulator-min-microvolt = <968000>; 147 regulator-max-microvolt = <1064000>; 148 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 149 }; 150 151 vreg_l4a_0p88: ldo4 { 152 regulator-min-microvolt = <824000>; 153 regulator-max-microvolt = <928000>; 154 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 155 regulator-allow-set-load; 156 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 157 RPMH_REGULATOR_MODE_HPM>; 158 }; 159 160 vreg_l5a_2p7: ldo5 { 161 regulator-min-microvolt = <2496000>; 162 regulator-max-microvolt = <3000000>; 163 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 164 }; 165 166 vreg_l6a_0p6: ldo6 { 167 regulator-min-microvolt = <568000>; 168 regulator-max-microvolt = <648000>; 169 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 170 }; 171 172 vreg_l9a_0p664: ldo9 { 173 regulator-min-microvolt = <488000>; 174 regulator-max-microvolt = <800000>; 175 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 176 }; 177 178 vreg_l10a_1p8: ldo10 { 179 regulator-min-microvolt = <1800000>; 180 regulator-max-microvolt = <1832000>; 181 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 182 }; 183 184 vreg_l11a_1p8: ldo11 { 185 regulator-min-microvolt = <1696000>; 186 regulator-max-microvolt = <1904000>; 187 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 188 }; 189 190 vreg_l12a_1p8: ldo12 { 191 regulator-min-microvolt = <1696000>; 192 regulator-max-microvolt = <1952000>; 193 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 194 regulator-allow-set-load; 195 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 196 RPMH_REGULATOR_MODE_HPM>; 197 }; 198 199 vreg_l13a_1p8: ldo13 { 200 regulator-min-microvolt = <1696000>; 201 regulator-max-microvolt = <1904000>; 202 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 203 }; 204 205 vreg_l14a_1p8: ldo14 { 206 regulator-min-microvolt = <1728000>; 207 regulator-max-microvolt = <1832000>; 208 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 209 }; 210 211 vreg_l15a_1p8: ldo15 { 212 regulator-min-microvolt = <1696000>; 213 regulator-max-microvolt = <1904000>; 214 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 215 }; 216 217 vreg_l16a_2p7: ldo16 { 218 regulator-min-microvolt = <2496000>; 219 regulator-max-microvolt = <3304000>; 220 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 221 }; 222 223 vreg_l17a_3p1: ldo17 { 224 regulator-min-microvolt = <2920000>; 225 regulator-max-microvolt = <3232000>; 226 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 227 }; 228 229 vreg_l18a_3p0: ldo18 { 230 regulator-min-microvolt = <1696000>; 231 regulator-max-microvolt = <1904000>; 232 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 233 }; 234 235 vreg_l19a_3p0: ldo19 { 236 regulator-min-microvolt = <2696000>; 237 regulator-max-microvolt = <3304000>; 238 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 239 regulator-allow-set-load; 240 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 241 RPMH_REGULATOR_MODE_HPM>; 242 }; 243 }; 244 245 regulators-1 { 246 compatible = "qcom,pm6150l-rpmh-regulators"; 247 qcom,pmic-id = "c"; 248 249 vreg_s8c_1p3: smps8 { 250 regulator-min-microvolt = <1120000>; 251 regulator-max-microvolt = <1408000>; 252 }; 253 254 vreg_l1c_1p8: ldo1 { 255 regulator-min-microvolt = <1616000>; 256 regulator-max-microvolt = <1984000>; 257 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 258 }; 259 260 vreg_l2c_1p3: ldo2 { 261 regulator-min-microvolt = <1168000>; 262 regulator-max-microvolt = <1304000>; 263 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 264 }; 265 266 vreg_l3c_1p23: ldo3 { 267 regulator-min-microvolt = <1144000>; 268 regulator-max-microvolt = <1304000>; 269 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 270 regulator-allow-set-load; 271 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 272 RPMH_REGULATOR_MODE_HPM>; 273 }; 274 275 vreg_l4c_1p8: ldo4 { 276 regulator-min-microvolt = <1648000>; 277 regulator-max-microvolt = <3304000>; 278 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 279 }; 280 281 vreg_l5c_1p8: ldo5 { 282 regulator-min-microvolt = <1648000>; 283 regulator-max-microvolt = <3304000>; 284 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 285 }; 286 287 vreg_l6c_3p0: ldo6 { 288 regulator-min-microvolt = <1648000>; 289 regulator-max-microvolt = <3304000>; 290 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 291 }; 292 293 vreg_l7c_3p0: ldo7 { 294 regulator-min-microvolt = <3000000>; 295 regulator-max-microvolt = <3312000>; 296 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 297 }; 298 299 vreg_l8c_1p8: ldo8 { 300 regulator-min-microvolt = <1800000>; 301 regulator-max-microvolt = <1904000>; 302 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 303 }; 304 305 vreg_l9c_2p9: ldo9 { 306 regulator-min-microvolt = <2952000>; 307 regulator-max-microvolt = <3304000>; 308 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 309 }; 310 311 vreg_l10c_3p3: ldo10 { 312 regulator-min-microvolt = <3000000>; 313 regulator-max-microvolt = <3400000>; 314 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 315 }; 316 317 vreg_l11c_3p3: ldo11 { 318 regulator-min-microvolt = <3000000>; 319 regulator-max-microvolt = <3400000>; 320 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 321 }; 322 323 vreg_bob: bob { 324 regulator-min-microvolt = <3008000>; 325 regulator-max-microvolt = <3960000>; 326 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>; 327 }; 328 }; 329}; 330 331&dispcc { 332 /* HACK: disable until a panel driver is ready to retain simplefb */ 333 status = "disabled"; 334}; 335 336&pm6150_resin { 337 linux,code = <KEY_VOLUMEDOWN>; 338 status = "okay"; 339}; 340 341&pm6150_rtc { 342 status = "okay"; 343}; 344 345&sdhc_2 { 346 cd-gpios = <&tlmm 69 GPIO_ACTIVE_HIGH>; 347 pinctrl-names = "default","sleep"; 348 pinctrl-0 = <&sdc2_on>; 349 pinctrl-1 = <&sdc2_off>; 350 vmmc-supply = <&vreg_l9c_2p9>; 351 vqmmc-supply = <&vreg_l6c_3p0>; 352 status = "okay"; 353}; 354 355&tlmm { 356 gpio-reserved-ranges = <0 4>, <34 4>, <59 4>; 357 358 sdc2_on: sdc2-on-state { 359 clk-pins { 360 pins = "sdc2_clk"; 361 bias-disable; 362 drive-strength = <16>; 363 }; 364 365 cmd-pins { 366 pins = "sdc2_cmd"; 367 bias-pull-up; 368 drive-strength = <10>; 369 }; 370 371 data-pins { 372 pins = "sdc2_data"; 373 bias-pull-up; 374 drive-strength = <10>; 375 }; 376 377 sd-cd-pins { 378 pins = "gpio69"; 379 function = "gpio"; 380 bias-pull-up; 381 drive-strength = <2>; 382 }; 383 }; 384 385 sdc2_off: sdc2-off-state { 386 clk-pins { 387 pins = "sdc2_clk"; 388 bias-disable; 389 drive-strength = <2>; 390 }; 391 392 cmd-pins { 393 pins = "sdc2_cmd"; 394 bias-pull-up; 395 drive-strength = <2>; 396 }; 397 398 data-pins { 399 pins = "sdc2_data"; 400 bias-pull-up; 401 drive-strength = <2>; 402 }; 403 404 sd-cd-pins { 405 pins = "gpio69"; 406 function = "gpio"; 407 bias-pull-up; 408 drive-strength = <2>; 409 }; 410 }; 411}; 412 413&ufs_mem_hc { 414 reset-gpios = <&tlmm 119 GPIO_ACTIVE_LOW>; 415 416 vcc-supply = <&vreg_l19a_3p0>; 417 vcc-max-microamp = <600000>; 418 vccq2-supply = <&vreg_l12a_1p8>; 419 vccq2-max-microamp = <600000>; 420 status = "okay"; 421}; 422 423&ufs_mem_phy { 424 vdda-phy-supply = <&vreg_l4a_0p88>; 425 vdda-pll-supply = <&vreg_l3c_1p23>; 426 status = "okay"; 427}; 428 429&usb_1 { 430 qcom,select-utmi-as-pipe-clk; 431 status = "okay"; 432}; 433 434&usb_1_dwc3 { 435 dr_mode = "peripheral"; 436 maximum-speed = "high-speed"; 437 status = "okay"; 438}; 439 440&usb_1_hsphy { 441 vdd-supply = <&vreg_l4a_0p88>; 442 vdda-phy-dpdm-supply = <&vreg_l17a_3p1>; 443 vdda-pll-supply = <&vreg_l11a_1p8>; 444 status = "okay"; 445}; 446 447&usb_1_qmpphy { 448 vdda-phy-supply = <&vreg_l4a_0p88>; 449 vdda-pll-supply = <&vreg_l3c_1p23>; 450 status = "okay"; 451}; 452