1 // SPDX-License-Identifier: BSD-3-Clause 1 // SPDX-License-Identifier: BSD-3-Clause 2 /* 2 /* 3 * Copyright (c) 2023, Linaro Limited 3 * Copyright (c) 2023, Linaro Limited 4 */ 4 */ 5 5 6 /dts-v1/; 6 /dts-v1/; 7 7 8 #include <dt-bindings/firmware/qcom,scm.h> 8 #include <dt-bindings/firmware/qcom,scm.h> 9 #include <dt-bindings/leds/common.h> 9 #include <dt-bindings/leds/common.h> 10 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h 10 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 11 #include <dt-bindings/regulator/qcom,rpmh-regu 11 #include <dt-bindings/regulator/qcom,rpmh-regulator.h> 12 #include <dt-bindings/sound/cs35l45.h> 12 #include <dt-bindings/sound/cs35l45.h> 13 #include "sm8550.dtsi" 13 #include "sm8550.dtsi" 14 #include "pm8010.dtsi" 14 #include "pm8010.dtsi" 15 #include "pm8550.dtsi" 15 #include "pm8550.dtsi" 16 #include "pm8550b.dtsi" 16 #include "pm8550b.dtsi" 17 #define PMK8550VE_SID 5 17 #define PMK8550VE_SID 5 18 #include "pm8550ve.dtsi" 18 #include "pm8550ve.dtsi" 19 #include "pm8550vs.dtsi" 19 #include "pm8550vs.dtsi" 20 #include "pmk8550.dtsi" 20 #include "pmk8550.dtsi" 21 /* TODO: Only one SID of PMR735D seems accessi 21 /* TODO: Only one SID of PMR735D seems accessible? */ 22 22 23 /delete-node/ &hwfence_shbuf; 23 /delete-node/ &hwfence_shbuf; 24 /delete-node/ &mpss_mem; 24 /delete-node/ &mpss_mem; 25 /delete-node/ &rmtfs_mem; 25 /delete-node/ &rmtfs_mem; 26 / { 26 / { 27 model = "Sony Xperia 1 V"; 27 model = "Sony Xperia 1 V"; 28 compatible = "sony,pdx234", "qcom,sm85 28 compatible = "sony,pdx234", "qcom,sm8550"; 29 chassis-type = "handset"; 29 chassis-type = "handset"; 30 30 31 aliases { 31 aliases { 32 i2c0 = &i2c0; 32 i2c0 = &i2c0; 33 i2c4 = &i2c4; 33 i2c4 = &i2c4; 34 i2c10 = &i2c10; 34 i2c10 = &i2c10; 35 i2c11 = &i2c11; 35 i2c11 = &i2c11; 36 i2c16 = &i2c_hub_2; 36 i2c16 = &i2c_hub_2; 37 serial0 = &uart7; 37 serial0 = &uart7; 38 }; 38 }; 39 39 40 chosen { 40 chosen { 41 stdout-path = "serial0:115200n 41 stdout-path = "serial0:115200n8"; 42 }; 42 }; 43 43 44 gpio-keys { 44 gpio-keys { 45 compatible = "gpio-keys"; 45 compatible = "gpio-keys"; 46 label = "gpio-keys"; 46 label = "gpio-keys"; 47 47 48 pinctrl-0 = <&focus_n &snapsho 48 pinctrl-0 = <&focus_n &snapshot_n &vol_down_n>; 49 pinctrl-names = "default"; 49 pinctrl-names = "default"; 50 50 51 key-camera-focus { 51 key-camera-focus { 52 label = "Camera Focus" 52 label = "Camera Focus"; 53 linux,code = <KEY_CAME 53 linux,code = <KEY_CAMERA_FOCUS>; 54 gpios = <&pm8550b_gpio 54 gpios = <&pm8550b_gpios 8 GPIO_ACTIVE_LOW>; 55 debounce-interval = <1 55 debounce-interval = <15>; 56 linux,can-disable; 56 linux,can-disable; 57 wakeup-source; 57 wakeup-source; 58 }; 58 }; 59 59 60 key-camera-snapshot { 60 key-camera-snapshot { 61 label = "Camera Snapsh 61 label = "Camera Snapshot"; 62 gpios = <&pm8550b_gpio 62 gpios = <&pm8550b_gpios 7 GPIO_ACTIVE_LOW>; 63 linux,code = <KEY_CAME 63 linux,code = <KEY_CAMERA>; 64 debounce-interval = <1 64 debounce-interval = <15>; 65 linux,can-disable; 65 linux,can-disable; 66 wakeup-source; 66 wakeup-source; 67 }; 67 }; 68 68 69 key-volume-down { 69 key-volume-down { 70 label = "Volume Down"; 70 label = "Volume Down"; 71 linux,code = <KEY_VOLU 71 linux,code = <KEY_VOLUMEDOWN>; 72 gpios = <&pm8550_gpios 72 gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>; 73 debounce-interval = <1 73 debounce-interval = <15>; 74 linux,can-disable; 74 linux,can-disable; 75 wakeup-source; 75 wakeup-source; 76 }; 76 }; 77 }; 77 }; 78 78 79 pmic-glink { 79 pmic-glink { 80 compatible = "qcom,sm8550-pmic 80 compatible = "qcom,sm8550-pmic-glink", "qcom,pmic-glink"; 81 orientation-gpios = <&tlmm 11 81 orientation-gpios = <&tlmm 11 GPIO_ACTIVE_HIGH>; 82 #address-cells = <1>; 82 #address-cells = <1>; 83 #size-cells = <0>; 83 #size-cells = <0>; 84 84 85 connector@0 { 85 connector@0 { 86 compatible = "usb-c-co 86 compatible = "usb-c-connector"; 87 reg = <0>; 87 reg = <0>; 88 power-role = "dual"; 88 power-role = "dual"; 89 data-role = "dual"; 89 data-role = "dual"; 90 90 91 ports { 91 ports { 92 #address-cells 92 #address-cells = <1>; 93 #size-cells = 93 #size-cells = <0>; 94 94 95 port@0 { 95 port@0 { 96 reg = 96 reg = <0>; 97 97 98 pmic_g 98 pmic_glink_hs_in: endpoint { 99 99 remote-endpoint = <&usb_1_dwc3_hs>; 100 }; 100 }; 101 }; 101 }; 102 102 103 port@1 { 103 port@1 { 104 reg = 104 reg = <1>; 105 105 106 pmic_g 106 pmic_glink_ss_in: endpoint { 107 107 remote-endpoint = <&usb_dp_qmpphy_out>; 108 }; 108 }; 109 }; 109 }; 110 }; 110 }; 111 }; 111 }; 112 }; 112 }; 113 113 114 reserved-memory { 114 reserved-memory { 115 mpss_mem: mpss-region@89800000 115 mpss_mem: mpss-region@89800000 { 116 reg = <0x0 0x89800000 116 reg = <0x0 0x89800000 0x0 0x10800000>; 117 no-map; 117 no-map; 118 }; 118 }; 119 119 120 splash@b8000000 { 120 splash@b8000000 { 121 reg = <0x0 0xb8000000 121 reg = <0x0 0xb8000000 0x0 0x2b00000>; 122 no-map; 122 no-map; 123 }; 123 }; 124 124 125 hwfence_shbuf: hwfence-shbuf-r 125 hwfence_shbuf: hwfence-shbuf-region@e6440000 { 126 reg = <0x0 0xe6440000 126 reg = <0x0 0xe6440000 0x0 0x2dd000>; 127 no-map; 127 no-map; 128 }; 128 }; 129 129 130 rmtfs_mem: memory@f8b00000 { 130 rmtfs_mem: memory@f8b00000 { 131 compatible = "qcom,rmt 131 compatible = "qcom,rmtfs-mem"; 132 reg = <0x0 0xf8b00000 132 reg = <0x0 0xf8b00000 0x0 0x280000>; 133 no-map; 133 no-map; 134 134 135 qcom,client-id = <1>; 135 qcom,client-id = <1>; 136 qcom,vmid = <QCOM_SCM_ 136 qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>; 137 }; 137 }; 138 138 139 ramoops@ffd00000 { 139 ramoops@ffd00000 { 140 compatible = "ramoops" 140 compatible = "ramoops"; 141 reg = <0x0 0xffd00000 141 reg = <0x0 0xffd00000 0x0 0xc0000>; 142 console-size = <0x4000 142 console-size = <0x40000>; 143 record-size = <0x1000> 143 record-size = <0x1000>; 144 pmsg-size = <0x40000>; 144 pmsg-size = <0x40000>; 145 ecc-size = <16>; 145 ecc-size = <16>; 146 }; 146 }; 147 147 148 rdtag-store-region@ffdc0000 { 148 rdtag-store-region@ffdc0000 { 149 reg = <0x0 0xffdc0000 149 reg = <0x0 0xffdc0000 0x0 0x40000>; 150 no-map; 150 no-map; 151 }; 151 }; 152 }; 152 }; 153 153 154 vph_pwr: vph-pwr-regulator { 154 vph_pwr: vph-pwr-regulator { 155 compatible = "regulator-fixed" 155 compatible = "regulator-fixed"; 156 regulator-name = "vph_pwr"; 156 regulator-name = "vph_pwr"; 157 regulator-min-microvolt = <370 157 regulator-min-microvolt = <3700000>; 158 regulator-max-microvolt = <370 158 regulator-max-microvolt = <3700000>; 159 159 160 regulator-always-on; 160 regulator-always-on; 161 regulator-boot-on; 161 regulator-boot-on; 162 }; 162 }; 163 }; 163 }; 164 164 165 &apps_rsc { 165 &apps_rsc { 166 regulators-0 { 166 regulators-0 { 167 compatible = "qcom,pm8550-rpmh 167 compatible = "qcom,pm8550-rpmh-regulators"; 168 qcom,pmic-id = "b"; 168 qcom,pmic-id = "b"; 169 169 170 pm8550_bob1: bob1 { 170 pm8550_bob1: bob1 { 171 regulator-name = "pm85 171 regulator-name = "pm8550_bob1"; 172 regulator-min-microvol 172 regulator-min-microvolt = <3416000>; 173 regulator-max-microvol 173 regulator-max-microvolt = <3960000>; 174 regulator-initial-mode 174 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 175 }; 175 }; 176 176 177 /* TODO: bob2 @ 2.704-3.008V d 177 /* TODO: bob2 @ 2.704-3.008V doesn't fall into the vreg driver constraints */ 178 178 179 pm8550_l1: ldo1 { 179 pm8550_l1: ldo1 { 180 regulator-name = "pm85 180 regulator-name = "pm8550_l1"; 181 regulator-min-microvol 181 regulator-min-microvolt = <1800000>; 182 regulator-max-microvol 182 regulator-max-microvolt = <1800000>; 183 regulator-initial-mode 183 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 184 }; 184 }; 185 185 186 pm8550_l2: ldo2 { 186 pm8550_l2: ldo2 { 187 regulator-name = "pm85 187 regulator-name = "pm8550_l2"; 188 regulator-min-microvol 188 regulator-min-microvolt = <3008000>; 189 regulator-max-microvol 189 regulator-max-microvolt = <3008000>; 190 regulator-initial-mode 190 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 191 }; 191 }; 192 192 193 /* L4 exists in cmd-db, but th 193 /* L4 exists in cmd-db, but the board seems to crash on access */ 194 194 195 pm8550_l5: ldo5 { 195 pm8550_l5: ldo5 { 196 regulator-name = "pm85 196 regulator-name = "pm8550_l5"; 197 regulator-min-microvol 197 regulator-min-microvolt = <3104000>; 198 regulator-max-microvol 198 regulator-max-microvolt = <3104000>; 199 regulator-initial-mode 199 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 200 }; 200 }; 201 201 202 pm8550_l6: ldo6 { 202 pm8550_l6: ldo6 { 203 regulator-name = "pm85 203 regulator-name = "pm8550_l6"; 204 regulator-min-microvol 204 regulator-min-microvolt = <1800000>; 205 regulator-max-microvol 205 regulator-max-microvolt = <3008000>; 206 regulator-initial-mode 206 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 207 }; 207 }; 208 208 209 pm8550_l7: ldo7 { 209 pm8550_l7: ldo7 { 210 regulator-name = "pm85 210 regulator-name = "pm8550_l7"; 211 regulator-min-microvol 211 regulator-min-microvolt = <1800000>; 212 regulator-max-microvol 212 regulator-max-microvolt = <3008000>; 213 regulator-initial-mode 213 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 214 }; 214 }; 215 215 216 pm8550_l8: ldo8 { 216 pm8550_l8: ldo8 { 217 regulator-name = "pm85 217 regulator-name = "pm8550_l8"; 218 regulator-min-microvol 218 regulator-min-microvolt = <1800000>; 219 regulator-max-microvol 219 regulator-max-microvolt = <3008000>; 220 regulator-initial-mode 220 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 221 }; 221 }; 222 222 223 pm8550_l9: ldo9 { 223 pm8550_l9: ldo9 { 224 regulator-name = "pm85 224 regulator-name = "pm8550_l9"; 225 regulator-min-microvol 225 regulator-min-microvolt = <2960000>; 226 regulator-max-microvol 226 regulator-max-microvolt = <3008000>; 227 regulator-initial-mode 227 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 228 }; 228 }; 229 229 230 pm8550_l10: ldo10 { 230 pm8550_l10: ldo10 { 231 regulator-name = "pm85 231 regulator-name = "pm8550_l10"; 232 regulator-min-microvol 232 regulator-min-microvolt = <1800000>; 233 regulator-max-microvol 233 regulator-max-microvolt = <1800000>; 234 regulator-initial-mode 234 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 235 }; 235 }; 236 236 237 pm8550_l11: ldo11 { 237 pm8550_l11: ldo11 { 238 regulator-name = "pm85 238 regulator-name = "pm8550_l11"; 239 regulator-min-microvol 239 regulator-min-microvolt = <1200000>; 240 regulator-max-microvol 240 regulator-max-microvolt = <1504000>; 241 regulator-initial-mode 241 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 242 }; 242 }; 243 243 244 pm8550_l12: ldo12 { 244 pm8550_l12: ldo12 { 245 regulator-name = "pm85 245 regulator-name = "pm8550_l12"; 246 regulator-min-microvol 246 regulator-min-microvolt = <1800000>; 247 regulator-max-microvol 247 regulator-max-microvolt = <1800000>; 248 regulator-initial-mode 248 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 249 }; 249 }; 250 250 251 pm8550_l13: ldo13 { 251 pm8550_l13: ldo13 { 252 regulator-name = "pm85 252 regulator-name = "pm8550_l13"; 253 regulator-min-microvol 253 regulator-min-microvolt = <3000000>; 254 regulator-max-microvol 254 regulator-max-microvolt = <3000000>; 255 regulator-initial-mode 255 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 256 }; 256 }; 257 257 258 pm8550_l14: ldo14 { 258 pm8550_l14: ldo14 { 259 regulator-name = "pm85 259 regulator-name = "pm8550_l14"; 260 regulator-min-microvol 260 regulator-min-microvolt = <3304000>; 261 regulator-max-microvol 261 regulator-max-microvolt = <3304000>; 262 regulator-initial-mode 262 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 263 }; 263 }; 264 264 265 pm8550_l15: ldo15 { 265 pm8550_l15: ldo15 { 266 regulator-name = "pm85 266 regulator-name = "pm8550_l15"; 267 regulator-min-microvol 267 regulator-min-microvolt = <1800000>; 268 regulator-max-microvol 268 regulator-max-microvolt = <1800000>; 269 regulator-initial-mode 269 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 270 }; 270 }; 271 271 272 pm8550_l16: ldo16 { 272 pm8550_l16: ldo16 { 273 regulator-name = "pm85 273 regulator-name = "pm8550_l16"; 274 regulator-min-microvol 274 regulator-min-microvolt = <2800000>; 275 regulator-max-microvol 275 regulator-max-microvolt = <2800000>; 276 regulator-initial-mode 276 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 277 }; 277 }; 278 278 279 pm8550_l17: ldo17 { 279 pm8550_l17: ldo17 { 280 regulator-name = "pm85 280 regulator-name = "pm8550_l17"; 281 regulator-min-microvol 281 regulator-min-microvolt = <2504000>; 282 regulator-max-microvol 282 regulator-max-microvolt = <2504000>; 283 regulator-initial-mode 283 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 284 }; 284 }; 285 }; 285 }; 286 286 287 regulators-1 { 287 regulators-1 { 288 compatible = "qcom,pm8550vs-rp 288 compatible = "qcom,pm8550vs-rpmh-regulators"; 289 qcom,pmic-id = "c"; 289 qcom,pmic-id = "c"; 290 290 291 pm8550vs_0_l1: ldo1 { 291 pm8550vs_0_l1: ldo1 { 292 regulator-name = "pm85 292 regulator-name = "pm8550vs_0_l1"; 293 regulator-min-microvol 293 regulator-min-microvolt = <1200000>; 294 regulator-max-microvol 294 regulator-max-microvolt = <1200000>; 295 regulator-initial-mode 295 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 296 }; 296 }; 297 297 298 pm8550vs_0_l3: ldo3 { 298 pm8550vs_0_l3: ldo3 { 299 regulator-name = "pm85 299 regulator-name = "pm8550vs_0_l3"; 300 regulator-min-microvol 300 regulator-min-microvolt = <880000>; 301 regulator-max-microvol 301 regulator-max-microvolt = <912000>; 302 regulator-initial-mode 302 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 303 }; 303 }; 304 }; 304 }; 305 305 306 regulators-2 { 306 regulators-2 { 307 compatible = "qcom,pm8550vs-rp 307 compatible = "qcom,pm8550vs-rpmh-regulators"; 308 qcom,pmic-id = "d"; 308 qcom,pmic-id = "d"; 309 309 310 pm8550vs_1_l1: ldo1 { 310 pm8550vs_1_l1: ldo1 { 311 regulator-name = "pm85 311 regulator-name = "pm8550vs_1_l1"; 312 regulator-min-microvol 312 regulator-min-microvolt = <880000>; 313 regulator-max-microvol 313 regulator-max-microvolt = <920000>; 314 regulator-initial-mode 314 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 315 }; 315 }; 316 316 317 /* L3 exists in cmd-db, but th 317 /* L3 exists in cmd-db, but the board seems to crash on access */ 318 }; 318 }; 319 319 320 regulators-3 { 320 regulators-3 { 321 compatible = "qcom,pm8550vs-rp 321 compatible = "qcom,pm8550vs-rpmh-regulators"; 322 qcom,pmic-id = "e"; 322 qcom,pmic-id = "e"; 323 323 324 pm8550vs_2_s4: smps4 { 324 pm8550vs_2_s4: smps4 { 325 regulator-name = "pm85 325 regulator-name = "pm8550vs_2_s4"; 326 regulator-min-microvol 326 regulator-min-microvolt = <904000>; 327 regulator-max-microvol 327 regulator-max-microvolt = <984000>; 328 regulator-initial-mode 328 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 329 }; 329 }; 330 330 331 pm8550vs_2_s5: smps5 { 331 pm8550vs_2_s5: smps5 { 332 regulator-name = "pm85 332 regulator-name = "pm8550vs_2_s5"; 333 regulator-min-microvol 333 regulator-min-microvolt = <1010000>; 334 regulator-max-microvol 334 regulator-max-microvolt = <1120000>; 335 regulator-initial-mode 335 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 336 }; 336 }; 337 337 338 pm8550vs_2_l1: ldo1 { 338 pm8550vs_2_l1: ldo1 { 339 regulator-name = "pm85 339 regulator-name = "pm8550vs_2_l1"; 340 regulator-min-microvol 340 regulator-min-microvolt = <880000>; 341 regulator-max-microvol 341 regulator-max-microvolt = <912000>; 342 regulator-initial-mode 342 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 343 }; 343 }; 344 344 345 pm8550vs_2_l2: ldo2 { 345 pm8550vs_2_l2: ldo2 { 346 regulator-name = "pm85 346 regulator-name = "pm8550vs_2_l2"; 347 regulator-min-microvol 347 regulator-min-microvolt = <880000>; 348 regulator-max-microvol 348 regulator-max-microvolt = <968000>; 349 regulator-initial-mode 349 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 350 }; 350 }; 351 351 352 pm8550vs_2_l3: ldo3 { 352 pm8550vs_2_l3: ldo3 { 353 regulator-name = "pm85 353 regulator-name = "pm8550vs_2_l3"; 354 regulator-min-microvol 354 regulator-min-microvolt = <1200000>; 355 regulator-max-microvol 355 regulator-max-microvolt = <1200000>; 356 regulator-initial-mode 356 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 357 }; 357 }; 358 }; 358 }; 359 359 360 regulators-4 { 360 regulators-4 { 361 compatible = "qcom,pm8550ve-rp 361 compatible = "qcom,pm8550ve-rpmh-regulators"; 362 qcom,pmic-id = "f"; 362 qcom,pmic-id = "f"; 363 363 364 pm8550ve_s4: smps4 { 364 pm8550ve_s4: smps4 { 365 regulator-name = "pm85 365 regulator-name = "pm8550ve_s4"; 366 regulator-min-microvol 366 regulator-min-microvolt = <500000>; 367 regulator-max-microvol 367 regulator-max-microvolt = <700000>; 368 regulator-initial-mode 368 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 369 }; 369 }; 370 370 371 pm8550ve_l1: ldo1 { 371 pm8550ve_l1: ldo1 { 372 regulator-name = "pm85 372 regulator-name = "pm8550ve_l1"; 373 regulator-min-microvol 373 regulator-min-microvolt = <912000>; 374 regulator-max-microvol 374 regulator-max-microvolt = <912000>; 375 regulator-initial-mode 375 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 376 }; 376 }; 377 377 378 pm8550ve_l2: ldo2 { 378 pm8550ve_l2: ldo2 { 379 regulator-name = "pm85 379 regulator-name = "pm8550ve_l2"; 380 regulator-min-microvol 380 regulator-min-microvolt = <880000>; 381 regulator-max-microvol 381 regulator-max-microvolt = <912000>; 382 regulator-initial-mode 382 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 383 }; 383 }; 384 384 385 pm8550ve_l3: ldo3 { 385 pm8550ve_l3: ldo3 { 386 regulator-name = "pm85 386 regulator-name = "pm8550ve_l3"; 387 regulator-min-microvol 387 regulator-min-microvolt = <912000>; 388 regulator-max-microvol 388 regulator-max-microvolt = <912000>; 389 regulator-initial-mode 389 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 390 }; 390 }; 391 }; 391 }; 392 392 393 regulators-5 { 393 regulators-5 { 394 compatible = "qcom,pm8550vs-rp 394 compatible = "qcom,pm8550vs-rpmh-regulators"; 395 qcom,pmic-id = "g"; 395 qcom,pmic-id = "g"; 396 396 397 pm8550vs_3_s1: smps1 { 397 pm8550vs_3_s1: smps1 { 398 regulator-name = "pm85 398 regulator-name = "pm8550vs_3_s1"; 399 regulator-min-microvol 399 regulator-min-microvolt = <1200000>; 400 regulator-max-microvol 400 regulator-max-microvolt = <1300000>; 401 regulator-initial-mode 401 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 402 }; 402 }; 403 403 404 pm8550vs_3_s2: smps2 { 404 pm8550vs_3_s2: smps2 { 405 regulator-name = "pm85 405 regulator-name = "pm8550vs_3_s2"; 406 regulator-min-microvol 406 regulator-min-microvolt = <500000>; 407 regulator-max-microvol 407 regulator-max-microvolt = <1036000>; 408 regulator-initial-mode 408 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 409 }; 409 }; 410 410 411 pm8550vs_3_s3: smps3 { 411 pm8550vs_3_s3: smps3 { 412 regulator-name = "pm85 412 regulator-name = "pm8550vs_3_s3"; 413 regulator-min-microvol 413 regulator-min-microvolt = <300000>; 414 regulator-max-microvol 414 regulator-max-microvolt = <1004000>; 415 regulator-initial-mode 415 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 416 }; 416 }; 417 417 418 pm8550vs_3_s4: smps4 { 418 pm8550vs_3_s4: smps4 { 419 regulator-name = "pm85 419 regulator-name = "pm8550vs_3_s4"; 420 regulator-min-microvol 420 regulator-min-microvolt = <1200000>; 421 regulator-max-microvol 421 regulator-max-microvolt = <1352000>; 422 regulator-initial-mode 422 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 423 }; 423 }; 424 424 425 pm8550vs_3_s5: smps5 { 425 pm8550vs_3_s5: smps5 { 426 regulator-name = "pm85 426 regulator-name = "pm8550vs_3_s5"; 427 regulator-min-microvol 427 regulator-min-microvolt = <500000>; 428 regulator-max-microvol 428 regulator-max-microvolt = <1004000>; 429 regulator-initial-mode 429 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 430 }; 430 }; 431 431 432 pm8550vs_3_s6: smps6 { 432 pm8550vs_3_s6: smps6 { 433 regulator-name = "pm85 433 regulator-name = "pm8550vs_3_s6"; 434 regulator-min-microvol 434 regulator-min-microvolt = <1800000>; 435 regulator-max-microvol 435 regulator-max-microvolt = <2000000>; 436 regulator-initial-mode 436 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 437 }; 437 }; 438 438 439 pm8550vs_3_l1: ldo1 { 439 pm8550vs_3_l1: ldo1 { 440 regulator-name = "pm85 440 regulator-name = "pm8550vs_3_l1"; 441 regulator-min-microvol 441 regulator-min-microvolt = <1144000>; 442 regulator-max-microvol 442 regulator-max-microvolt = <1256000>; 443 regulator-initial-mode 443 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 444 }; 444 }; 445 445 446 pm8550vs_3_l2: ldo2 { 446 pm8550vs_3_l2: ldo2 { 447 regulator-name = "pm85 447 regulator-name = "pm8550vs_3_l2"; 448 regulator-min-microvol 448 regulator-min-microvolt = <1104000>; 449 regulator-max-microvol 449 regulator-max-microvolt = <1200000>; 450 regulator-initial-mode 450 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 451 }; 451 }; 452 452 453 pm8550vs_3_l3: ldo3 { 453 pm8550vs_3_l3: ldo3 { 454 regulator-name = "pm85 454 regulator-name = "pm8550vs_3_l3"; 455 regulator-min-microvol 455 regulator-min-microvolt = <1200000>; 456 regulator-max-microvol 456 regulator-max-microvolt = <1200000>; 457 regulator-initial-mode 457 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 458 }; 458 }; 459 }; 459 }; 460 460 461 /* TODO: Unknown PMIC @ k, l, PM8010 @ 461 /* TODO: Unknown PMIC @ k, l, PM8010 @ m, n */ 462 }; 462 }; 463 463 464 &gpi_dma1 { 464 &gpi_dma1 { 465 status = "okay"; 465 status = "okay"; 466 }; 466 }; 467 467 468 &gpi_dma2 { 468 &gpi_dma2 { 469 status = "okay"; 469 status = "okay"; 470 }; 470 }; 471 471 472 &i2c_hub_2 { 472 &i2c_hub_2 { 473 clock-frequency = <400000>; 473 clock-frequency = <400000>; 474 status = "okay"; 474 status = "okay"; 475 475 476 pmic@75 { 476 pmic@75 { 477 compatible = "dlg,slg51000"; 477 compatible = "dlg,slg51000"; 478 reg = <0x75>; 478 reg = <0x75>; 479 dlg,cs-gpios = <&pm8550vs_g_gp 479 dlg,cs-gpios = <&pm8550vs_g_gpios 4 GPIO_ACTIVE_HIGH>; 480 480 481 pinctrl-0 = <&cam_pwr_a_cs>; 481 pinctrl-0 = <&cam_pwr_a_cs>; 482 pinctrl-names = "default"; 482 pinctrl-names = "default"; 483 483 484 regulators { 484 regulators { 485 slg51000_a_ldo1: ldo1 485 slg51000_a_ldo1: ldo1 { 486 regulator-name 486 regulator-name = "slg51000_a_ldo1"; 487 regulator-min- 487 regulator-min-microvolt = <2400000>; 488 regulator-max- 488 regulator-max-microvolt = <3300000>; 489 }; 489 }; 490 490 491 slg51000_a_ldo2: ldo2 491 slg51000_a_ldo2: ldo2 { 492 regulator-name 492 regulator-name = "slg51000_a_ldo2"; 493 regulator-min- 493 regulator-min-microvolt = <2400000>; 494 regulator-max- 494 regulator-max-microvolt = <3300000>; 495 }; 495 }; 496 496 497 slg51000_a_ldo3: ldo3 497 slg51000_a_ldo3: ldo3 { 498 regulator-name 498 regulator-name = "slg51000_a_ldo3"; 499 regulator-min- 499 regulator-min-microvolt = <1200000>; 500 regulator-max- 500 regulator-max-microvolt = <3750000>; 501 }; 501 }; 502 502 503 slg51000_a_ldo4: ldo4 503 slg51000_a_ldo4: ldo4 { 504 regulator-name 504 regulator-name = "slg51000_a_ldo4"; 505 regulator-min- 505 regulator-min-microvolt = <1200000>; 506 regulator-max- 506 regulator-max-microvolt = <3750000>; 507 }; 507 }; 508 508 509 slg51000_a_ldo5: ldo5 509 slg51000_a_ldo5: ldo5 { 510 regulator-name 510 regulator-name = "slg51000_a_ldo5"; 511 regulator-min- 511 regulator-min-microvolt = <500000>; 512 regulator-max- 512 regulator-max-microvolt = <1200000>; 513 }; 513 }; 514 514 515 slg51000_a_ldo6: ldo6 515 slg51000_a_ldo6: ldo6 { 516 regulator-name 516 regulator-name = "slg51000_a_ldo6"; 517 regulator-min- 517 regulator-min-microvolt = <500000>; 518 regulator-max- 518 regulator-max-microvolt = <1200000>; 519 }; 519 }; 520 520 521 slg51000_a_ldo7: ldo7 521 slg51000_a_ldo7: ldo7 { 522 regulator-name 522 regulator-name = "slg51000_a_ldo7"; 523 regulator-min- 523 regulator-min-microvolt = <1200000>; 524 regulator-max- 524 regulator-max-microvolt = <3750000>; 525 }; 525 }; 526 }; 526 }; 527 }; 527 }; 528 }; 528 }; 529 529 530 &i2c_master_hub_0 { 530 &i2c_master_hub_0 { 531 status = "okay"; 531 status = "okay"; 532 }; 532 }; 533 533 534 &i2c0 { 534 &i2c0 { 535 clock-frequency = <1000000>; 535 clock-frequency = <1000000>; 536 status = "okay"; 536 status = "okay"; 537 537 538 /* NXP NFC @ 28 */ 538 /* NXP NFC @ 28 */ 539 }; 539 }; 540 540 541 &i2c4 { 541 &i2c4 { 542 clock-frequency = <400000>; 542 clock-frequency = <400000>; 543 status = "okay"; 543 status = "okay"; 544 544 545 /* LX Semi SW82907 touchscreen @ 28 */ 545 /* LX Semi SW82907 touchscreen @ 28 */ 546 }; 546 }; 547 547 548 &i2c10 { 548 &i2c10 { 549 clock-frequency = <1000000>; 549 clock-frequency = <1000000>; 550 status = "okay"; 550 status = "okay"; 551 551 552 /* Cirrus Logic CS40L25A boosted hapti 552 /* Cirrus Logic CS40L25A boosted haptics driver @ 40 */ 553 }; 553 }; 554 554 555 &i2c11 { 555 &i2c11 { 556 clock-frequency = <1000000>; 556 clock-frequency = <1000000>; 557 status = "okay"; 557 status = "okay"; 558 558 559 cs35l41_l: speaker-amp@30 { 559 cs35l41_l: speaker-amp@30 { 560 compatible = "cirrus,cs35l45"; 560 compatible = "cirrus,cs35l45"; 561 reg = <0x30>; 561 reg = <0x30>; 562 interrupts-extended = <&tlmm 1 562 interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>; 563 reset-gpios = <&tlmm 183 GPIO_ 563 reset-gpios = <&tlmm 183 GPIO_ACTIVE_HIGH>; 564 cirrus,asp-sdout-hiz-ctrl = <( 564 cirrus,asp-sdout-hiz-ctrl = <(CS35L45_ASP_TX_HIZ_UNUSED | CS35L45_ASP_TX_HIZ_DISABLED)>; 565 #sound-dai-cells = <1>; 565 #sound-dai-cells = <1>; 566 566 567 cirrus,gpio-ctrl2 { 567 cirrus,gpio-ctrl2 { 568 gpio-ctrl = <0x2>; 568 gpio-ctrl = <0x2>; 569 }; 569 }; 570 }; 570 }; 571 571 572 cs35l41_r: speaker-amp@31 { 572 cs35l41_r: speaker-amp@31 { 573 compatible = "cirrus,cs35l45"; 573 compatible = "cirrus,cs35l45"; 574 reg = <0x31>; 574 reg = <0x31>; 575 interrupts-extended = <&tlmm 1 575 interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>; 576 reset-gpios = <&tlmm 183 GPIO_ 576 reset-gpios = <&tlmm 183 GPIO_ACTIVE_HIGH>; 577 cirrus,asp-sdout-hiz-ctrl = <( 577 cirrus,asp-sdout-hiz-ctrl = <(CS35L45_ASP_TX_HIZ_UNUSED | CS35L45_ASP_TX_HIZ_DISABLED)>; 578 #sound-dai-cells = <1>; 578 #sound-dai-cells = <1>; 579 579 580 cirrus,gpio-ctrl2 { 580 cirrus,gpio-ctrl2 { 581 gpio-ctrl = <0x2>; 581 gpio-ctrl = <0x2>; 582 }; 582 }; 583 }; 583 }; 584 }; 584 }; 585 585 586 &pcie0 { 586 &pcie0 { 587 wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIG 587 wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>; 588 perst-gpios = <&tlmm 94 GPIO_ACTIVE_LO 588 perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>; 589 589 590 pinctrl-0 = <&pcie0_default_state>; 590 pinctrl-0 = <&pcie0_default_state>; 591 pinctrl-names = "default"; 591 pinctrl-names = "default"; 592 592 593 status = "okay"; 593 status = "okay"; 594 }; 594 }; 595 595 596 &pcie0_phy { 596 &pcie0_phy { 597 vdda-phy-supply = <&pm8550vs_2_l1>; 597 vdda-phy-supply = <&pm8550vs_2_l1>; 598 vdda-pll-supply = <&pm8550vs_2_l3>; 598 vdda-pll-supply = <&pm8550vs_2_l3>; 599 599 600 status = "okay"; 600 status = "okay"; 601 }; 601 }; 602 602 603 &pm8550_flash { 603 &pm8550_flash { 604 status = "okay"; 604 status = "okay"; 605 605 606 led-0 { 606 led-0 { 607 function = LED_FUNCTION_FLASH; 607 function = LED_FUNCTION_FLASH; 608 color = <LED_COLOR_ID_WHITE>; 608 color = <LED_COLOR_ID_WHITE>; 609 led-sources = <1>, <4>; 609 led-sources = <1>, <4>; 610 led-max-microamp = <500000>; 610 led-max-microamp = <500000>; 611 flash-max-microamp = <1000000> 611 flash-max-microamp = <1000000>; 612 flash-max-timeout-us = <128000 612 flash-max-timeout-us = <1280000>; 613 function-enumerator = <0>; 613 function-enumerator = <0>; 614 }; 614 }; 615 615 616 led-1 { 616 led-1 { 617 function = LED_FUNCTION_FLASH; 617 function = LED_FUNCTION_FLASH; 618 color = <LED_COLOR_ID_YELLOW>; 618 color = <LED_COLOR_ID_YELLOW>; 619 led-sources = <2>, <3>; 619 led-sources = <2>, <3>; 620 led-max-microamp = <500000>; 620 led-max-microamp = <500000>; 621 flash-max-microamp = <1000000> 621 flash-max-microamp = <1000000>; 622 flash-max-timeout-us = <128000 622 flash-max-timeout-us = <1280000>; 623 function-enumerator = <1>; 623 function-enumerator = <1>; 624 }; 624 }; 625 }; 625 }; 626 626 627 &pm8550_gpios { 627 &pm8550_gpios { 628 vol_down_n: volume-down-n-state { 628 vol_down_n: volume-down-n-state { 629 pins = "gpio6"; 629 pins = "gpio6"; 630 function = "normal"; 630 function = "normal"; 631 power-source = <1>; 631 power-source = <1>; 632 bias-pull-up; 632 bias-pull-up; 633 input-enable; 633 input-enable; 634 }; 634 }; 635 635 636 sdc2_card_det_n: sd-card-det-n-state { 636 sdc2_card_det_n: sd-card-det-n-state { 637 pins = "gpio12"; 637 pins = "gpio12"; 638 function = "normal"; 638 function = "normal"; 639 power-source = <1>; 639 power-source = <1>; 640 bias-pull-down; 640 bias-pull-down; 641 output-disable; 641 output-disable; 642 input-enable; 642 input-enable; 643 }; 643 }; 644 }; 644 }; 645 645 646 &pm8550b_gpios { 646 &pm8550b_gpios { 647 snapshot_n: snapshot-n-state { 647 snapshot_n: snapshot-n-state { 648 pins = "gpio7"; 648 pins = "gpio7"; 649 function = "normal"; 649 function = "normal"; 650 power-source = <1>; 650 power-source = <1>; 651 bias-pull-up; 651 bias-pull-up; 652 input-enable; 652 input-enable; 653 }; 653 }; 654 654 655 focus_n: focus-n-state { 655 focus_n: focus-n-state { 656 pins = "gpio8"; 656 pins = "gpio8"; 657 function = "normal"; 657 function = "normal"; 658 power-source = <1>; 658 power-source = <1>; 659 bias-pull-up; 659 bias-pull-up; 660 input-enable; 660 input-enable; 661 }; 661 }; 662 }; 662 }; 663 663 664 &pm8550vs_g_gpios { 664 &pm8550vs_g_gpios { 665 cam_pwr_a_cs: cam-pwr-a-cs-state { 665 cam_pwr_a_cs: cam-pwr-a-cs-state { 666 pins = "gpio4"; 666 pins = "gpio4"; 667 function = "normal"; 667 function = "normal"; 668 power-source = <0x01>; 668 power-source = <0x01>; 669 drive-push-pull; 669 drive-push-pull; 670 output-low; 670 output-low; 671 qcom,drive-strength = <PMIC_GP 671 qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; 672 }; 672 }; 673 }; 673 }; 674 674 675 &pm8550b_eusb2_repeater { 675 &pm8550b_eusb2_repeater { 676 qcom,tune-usb2-disc-thres = /bits/ 8 < 676 qcom,tune-usb2-disc-thres = /bits/ 8 <0x6>; 677 qcom,tune-usb2-amplitude = /bits/ 8 <0 677 qcom,tune-usb2-amplitude = /bits/ 8 <0xf>; 678 qcom,tune-usb2-preem = /bits/ 8 <0x7>; 678 qcom,tune-usb2-preem = /bits/ 8 <0x7>; 679 vdd18-supply = <&pm8550_l15>; 679 vdd18-supply = <&pm8550_l15>; 680 vdd3-supply = <&pm8550_l5>; 680 vdd3-supply = <&pm8550_l5>; 681 }; 681 }; 682 682 683 &pon_pwrkey { 683 &pon_pwrkey { 684 status = "okay"; 684 status = "okay"; 685 }; 685 }; 686 686 687 &pon_resin { 687 &pon_resin { 688 linux,code = <KEY_VOLUMEUP>; 688 linux,code = <KEY_VOLUMEUP>; 689 status = "okay"; 689 status = "okay"; 690 }; 690 }; 691 691 692 &qupv3_id_0 { 692 &qupv3_id_0 { 693 status = "okay"; 693 status = "okay"; 694 }; 694 }; 695 695 696 &qupv3_id_1 { 696 &qupv3_id_1 { 697 status = "okay"; 697 status = "okay"; 698 }; 698 }; 699 699 700 &remoteproc_adsp { 700 &remoteproc_adsp { 701 firmware-name = "qcom/sm8550/Sony/yodo 701 firmware-name = "qcom/sm8550/Sony/yodo/adsp.mbn", 702 "qcom/sm8550/Sony/yodo 702 "qcom/sm8550/Sony/yodo/adsp_dtb.mbn"; 703 status = "okay"; 703 status = "okay"; 704 }; 704 }; 705 705 706 &remoteproc_cdsp { 706 &remoteproc_cdsp { 707 firmware-name = "qcom/sm8550/Sony/yodo 707 firmware-name = "qcom/sm8550/Sony/yodo/cdsp.mbn", 708 "qcom/sm8550/Sony/yodo 708 "qcom/sm8550/Sony/yodo/cdsp_dtb.mbn"; 709 status = "okay"; 709 status = "okay"; 710 }; 710 }; 711 711 712 &sdhc_2 { 712 &sdhc_2 { 713 cd-gpios = <&pm8550_gpios 12 GPIO_ACTI 713 cd-gpios = <&pm8550_gpios 12 GPIO_ACTIVE_HIGH>; 714 pinctrl-0 = <&sdc2_default &sdc2_card_ 714 pinctrl-0 = <&sdc2_default &sdc2_card_det_n>; 715 pinctrl-1 = <&sdc2_sleep &sdc2_card_de 715 pinctrl-1 = <&sdc2_sleep &sdc2_card_det_n>; 716 pinctrl-names = "default", "sleep"; 716 pinctrl-names = "default", "sleep"; 717 vmmc-supply = <&pm8550_l9>; 717 vmmc-supply = <&pm8550_l9>; 718 vqmmc-supply = <&pm8550_l8>; 718 vqmmc-supply = <&pm8550_l8>; 719 no-sdio; 719 no-sdio; 720 no-mmc; 720 no-mmc; 721 status = "okay"; 721 status = "okay"; 722 }; 722 }; 723 723 724 &sleep_clk { 724 &sleep_clk { 725 clock-frequency = <32000>; 725 clock-frequency = <32000>; 726 }; 726 }; 727 727 728 &tlmm { 728 &tlmm { 729 gpio-reserved-ranges = <32 8>; 729 gpio-reserved-ranges = <32 8>; 730 }; 730 }; 731 731 732 &uart7 { 732 &uart7 { 733 status = "okay"; 733 status = "okay"; 734 }; 734 }; 735 735 736 &usb_1 { 736 &usb_1 { 737 status = "okay"; 737 status = "okay"; 738 }; 738 }; 739 739 >> 740 &usb_1_dwc3 { >> 741 dr_mode = "otg"; >> 742 usb-role-switch; >> 743 }; >> 744 740 &usb_1_dwc3_hs { 745 &usb_1_dwc3_hs { 741 remote-endpoint = <&pmic_glink_hs_in>; 746 remote-endpoint = <&pmic_glink_hs_in>; 742 }; 747 }; 743 748 >> 749 &usb_1_dwc3_ss { >> 750 remote-endpoint = <&usb_dp_qmpphy_usb_ss_in>; >> 751 }; >> 752 744 &usb_1_hsphy { 753 &usb_1_hsphy { 745 vdd-supply = <&pm8550vs_2_l1>; 754 vdd-supply = <&pm8550vs_2_l1>; 746 vdda12-supply = <&pm8550vs_2_l3>; 755 vdda12-supply = <&pm8550vs_2_l3>; 747 phys = <&pm8550b_eusb2_repeater>; 756 phys = <&pm8550b_eusb2_repeater>; 748 757 749 status = "okay"; 758 status = "okay"; 750 }; 759 }; 751 760 752 &usb_dp_qmpphy { 761 &usb_dp_qmpphy { 753 vdda-phy-supply = <&pm8550vs_2_l3>; 762 vdda-phy-supply = <&pm8550vs_2_l3>; 754 vdda-pll-supply = <&pm8550ve_l3>; 763 vdda-pll-supply = <&pm8550ve_l3>; >> 764 orientation-switch; 755 765 756 status = "okay"; 766 status = "okay"; 757 }; 767 }; 758 768 759 &usb_dp_qmpphy_out { 769 &usb_dp_qmpphy_out { 760 remote-endpoint = <&pmic_glink_ss_in>; 770 remote-endpoint = <&pmic_glink_ss_in>; >> 771 }; >> 772 >> 773 &usb_dp_qmpphy_usb_ss_in { >> 774 remote-endpoint = <&usb_1_dwc3_ss>; 761 }; 775 }; 762 776 763 &xo_board { 777 &xo_board { 764 clock-frequency = <76800000>; 778 clock-frequency = <76800000>; 765 }; 779 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.