1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2022, Konrad Dybcio <konrad.dybcio@somainline.org> 4 */ 5 6/dts-v1/; 7 8/* PMK8350 is configured to use SID6 instead of 0 */ 9#define PMK8350_SID 6 10 11#include <dt-bindings/gpio/gpio.h> 12#include "sm6375.dtsi" 13#include "pm6125.dtsi" 14#include "pmk8350.dtsi" 15#include "pmr735a.dtsi" 16 17/* PM6125 PON is used and we can't have duplicate labels */ 18/delete-node/ &pmk8350_pon; 19 20/ { 21 model = "Sony Xperia 10 IV"; 22 compatible = "sony,pdx225", "qcom,sm6375"; 23 chassis-type = "handset"; 24 25 chosen { 26 #address-cells = <2>; 27 #size-cells = <2>; 28 ranges; 29 30 framebuffer: framebuffer@85200000 { 31 compatible = "simple-framebuffer"; 32 reg = <0 0x85200000 0 0xc00000>; 33 34 width = <1080>; 35 height = <2520>; 36 stride = <(1080 * 4)>; 37 format = "a8r8g8b8"; 38 /* 39 * That's (going to be) a lot of clocks, but it's necessary due 40 * to unused clk cleanup & no panel driver yet 41 */ 42 clocks = <&gcc GCC_DISP_AHB_CLK>, 43 <&gcc GCC_DISP_HF_AXI_CLK>, 44 <&gcc GCC_DISP_THROTTLE_CORE_CLK>, 45 <&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>; 46 }; 47 }; 48 49 reserved-memory { 50 cont_splash_mem: memory@85200000 { 51 reg = <0 0x85200000 0 0xc00000>; 52 no-map; 53 }; 54 55 ramoops@ffc40000 { 56 compatible = "ramoops"; 57 reg = <0 0xffc40000 0 0xb0000>; 58 record-size = <0x10000>; 59 console-size = <0x60000>; 60 ftrace-size = <0x10000>; 61 pmsg-size = <0x20000>; 62 ecc-size = <16>; 63 }; 64 }; 65 66 vph_pwr: vph-pwr-regulator { 67 compatible = "regulator-fixed"; 68 regulator-name = "vph_pwr"; 69 regulator-min-microvolt = <3700000>; 70 regulator-max-microvolt = <3700000>; 71 regulator-always-on; 72 regulator-boot-on; 73 }; 74}; 75 76&sdc2_off_state { 77 sd-cd-pins { 78 pins = "gpio94"; 79 function = "gpio"; 80 drive-strength = <2>; 81 bias-disable; 82 }; 83}; 84 85&sdc2_on_state { 86 sd-cd-pins { 87 pins = "gpio94"; 88 function = "gpio"; 89 drive-strength = <2>; 90 bias-pull-up; 91 }; 92}; 93 94&sdhc_2 { 95 status = "okay"; 96 97 vmmc-supply = <&pm6125_l22>; 98 vqmmc-supply = <&pm6125_l5>; 99 100 cd-gpios = <&tlmm 94 GPIO_ACTIVE_HIGH>; 101}; 102 103&gpi_dma0 { 104 status = "okay"; 105}; 106 107&gpi_dma1 { 108 status = "okay"; 109}; 110 111&i2c8 { 112 clock-frequency = <400000>; 113 status = "okay"; 114 115 touchscreen@48 { 116 compatible = "samsung,s6sy761"; 117 reg = <0x48>; 118 interrupt-parent = <&tlmm>; 119 interrupts = <22 0x2008>; 120 121 vdd-supply = <&pm6125_l13>; 122 123 pinctrl-names = "default"; 124 pinctrl-0 = <&ts_int_default &ts_avdd_default>; 125 }; 126}; 127 128&pmk8350_adc_tm { 129 status = "okay"; 130}; 131 132&pmk8350_rtc { 133 status = "okay"; 134}; 135 136&pon_pwrkey { 137 status = "okay"; 138}; 139 140&pon_resin { 141 linux,code = <KEY_VOLUMEUP>; 142 status = "okay"; 143}; 144 145&qupv3_id_0 { 146 status = "okay"; 147}; 148 149&qupv3_id_1 { 150 status = "okay"; 151}; 152 153&remoteproc_adsp { 154 firmware-name = "qcom/Sony/murray/adsp.mbn"; 155 status = "okay"; 156}; 157 158&remoteproc_cdsp { 159 firmware-name = "qcom/Sony/murray/cdsp.mbn"; 160 status = "okay"; 161}; 162 163&rpm_requests { 164 regulators-0 { 165 compatible = "qcom,rpm-pm6125-regulators"; 166 167 pm6125_s5: s5 { 168 regulator-min-microvolt = <382000>; 169 regulator-max-microvolt = <1120000>; 170 }; 171 172 pm6125_s6: s6 { 173 regulator-min-microvolt = <320000>; 174 regulator-max-microvolt = <1374000>; 175 }; 176 177 pm6125_s7: s7 { 178 regulator-min-microvolt = <1574000>; 179 regulator-max-microvolt = <2040000>; 180 }; 181 182 /* 183 * S8 is VDD_GFX 184 * L1 is VDD_LPI_CX 185 */ 186 187 pm6125_l2: l2 { 188 regulator-min-microvolt = <1170000>; 189 regulator-max-microvolt = <1304000>; 190 }; 191 192 pm6125_l3: l3 { 193 regulator-min-microvolt = <1100000>; 194 regulator-max-microvolt = <1300000>; 195 }; 196 197 pm6125_l4: l4 { 198 regulator-min-microvolt = <1100000>; 199 regulator-max-microvolt = <1300000>; 200 }; 201 202 pm6125_l5: l5 { 203 regulator-min-microvolt = <1650000>; 204 regulator-max-microvolt = <2960000>; 205 regulator-allow-set-load; 206 }; 207 208 pm6125_l6: l6 { 209 regulator-min-microvolt = <1080000>; 210 regulator-max-microvolt = <1304000>; 211 }; 212 213 pm6125_l7: l7 { 214 regulator-min-microvolt = <720000>; 215 regulator-max-microvolt = <1050000>; 216 }; 217 218 pm6125_l8: l8 { 219 regulator-min-microvolt = <1100000>; 220 regulator-max-microvolt = <1304000>; 221 }; 222 223 pm6125_l9: l9 { 224 regulator-min-microvolt = <1504000>; 225 regulator-max-microvolt = <2000000>; 226 }; 227 228 pm6125_l10: l10 { 229 regulator-min-microvolt = <1620000>; 230 regulator-max-microvolt = <1980000>; 231 }; 232 233 pm6125_l11: l11 { 234 regulator-min-microvolt = <1620000>; 235 regulator-max-microvolt = <1980000>; 236 }; 237 238 pm6125_l12: l12 { 239 regulator-min-microvolt = <1620000>; 240 regulator-max-microvolt = <2000000>; 241 }; 242 243 pm6125_l13: l13 { 244 regulator-min-microvolt = <1650000>; 245 regulator-max-microvolt = <1980000>; 246 }; 247 248 pm6125_l14: l14 { 249 regulator-min-microvolt = <1700000>; 250 regulator-max-microvolt = <1900000>; 251 }; 252 253 pm6125_l15: l15 { 254 regulator-min-microvolt = <1650000>; 255 regulator-max-microvolt = <3544000>; 256 }; 257 258 pm6125_l16: l16 { 259 regulator-min-microvolt = <1620000>; 260 regulator-max-microvolt = <1980000>; 261 }; 262 263 /* L17 is VDD_LPI_MX */ 264 265 pm6125_l18: l18 { 266 regulator-min-microvolt = <830000>; 267 regulator-max-microvolt = <920000>; 268 }; 269 270 pm6125_l19: l19 { 271 regulator-min-microvolt = <1624000>; 272 regulator-max-microvolt = <3304000>; 273 }; 274 275 pm6125_l20: l20 { 276 regulator-min-microvolt = <1624000>; 277 regulator-max-microvolt = <3304000>; 278 }; 279 280 pm6125_l21: l21 { 281 regulator-min-microvolt = <3000000>; 282 regulator-max-microvolt = <3400000>; 283 }; 284 285 pm6125_l22: l22 { 286 regulator-min-microvolt = <2704000>; 287 regulator-max-microvolt = <2960000>; 288 regulator-allow-set-load; 289 }; 290 291 pm6125_l23: l23 { 292 regulator-min-microvolt = <3000000>; 293 regulator-max-microvolt = <3400000>; 294 }; 295 296 pm6125_l24: l24 { 297 regulator-min-microvolt = <2704000>; 298 regulator-max-microvolt = <3544000>; 299 }; 300 }; 301 302 regulators-1 { 303 compatible = "qcom,rpm-pmr735a-regulators"; 304 305 /* 306 * S1 is VDD_MX 307 * S2 is VDD_CX 308 */ 309 310 pmr735a_l1: l1 { 311 regulator-min-microvolt = <570000>; 312 regulator-max-microvolt = <650000>; 313 }; 314 315 pmr735a_l2: l2 { 316 regulator-min-microvolt = <352000>; 317 regulator-max-microvolt = <796000>; 318 }; 319 320 pmr735a_l3: l3 { 321 regulator-min-microvolt = <1000000>; 322 regulator-max-microvolt = <1200000>; 323 }; 324 325 pmr735a_l4: l4 { 326 regulator-min-microvolt = <1504000>; 327 regulator-max-microvolt = <2000000>; 328 }; 329 330 pmr735a_l5: l5 { 331 regulator-min-microvolt = <751000>; 332 regulator-max-microvolt = <824000>; 333 }; 334 335 pmr735a_l6: l6 { 336 regulator-min-microvolt = <504000>; 337 regulator-max-microvolt = <868000>; 338 }; 339 340 pmr735a_l7: l7 { 341 regulator-min-microvolt = <2700000>; 342 regulator-max-microvolt = <3544000>; 343 }; 344 }; 345}; 346 347&sdc2_off_state { 348 sd-cd-pins { 349 pins = "gpio94"; 350 function = "gpio"; 351 drive-strength = <2>; 352 bias-disable; 353 }; 354}; 355 356&sdc2_on_state { 357 sd-cd-pins { 358 pins = "gpio94"; 359 function = "gpio"; 360 drive-strength = <2>; 361 bias-pull-up; 362 }; 363}; 364 365&sdhc_2 { 366 status = "okay"; 367 368 vmmc-supply = <&pm6125_l22>; 369 vqmmc-supply = <&pm6125_l5>; 370 371 cd-gpios = <&tlmm 94 GPIO_ACTIVE_HIGH>; 372}; 373 374&tlmm { 375 gpio-reserved-ranges = <13 4>; 376 377 ts_int_default: ts-int-default-state { 378 pins = "gpio22"; 379 function = "gpio"; 380 drive-strength = <8>; 381 bias-pull-up; 382 }; 383 384 ts_avdd_default: ts-avdd-default-state { 385 pins = "gpio59"; 386 function = "gpio"; 387 drive-strength = <8>; 388 output-high; 389 }; 390}; 391 392&usb_1 { 393 status = "okay"; 394}; 395 396&usb_1_dwc3 { 397 dr_mode = "peripheral"; 398}; 399 400&usb_1_hsphy { 401 status = "okay"; 402}; 403 404&xo_board_clk { 405 clock-frequency = <19200000>; 406}; 407