1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2025 Qualcomm Innovation Center, Inc. All rights reserved. 4 */ 5 6/* X1P42100 is heavily based on hamoa, with some meaningful differences */ 7#include "hamoa.dtsi" 8 9/delete-node/ &bwmon_cluster0; 10/delete-node/ &cluster_pd2; 11/delete-node/ &cpu_map_cluster2; 12/delete-node/ &cpu8; 13/delete-node/ &cpu9; 14/delete-node/ &cpu10; 15/delete-node/ &cpu11; 16/delete-node/ &cpu_pd8; 17/delete-node/ &cpu_pd9; 18/delete-node/ &cpu_pd10; 19/delete-node/ &cpu_pd11; 20/delete-node/ &gpu_opp_table; 21/delete-node/ &gpu_speed_bin; 22/delete-node/ &pcie3_phy; 23/delete-node/ &thermal_zones; 24 25&gcc { 26 compatible = "qcom,x1p42100-gcc", "qcom,x1e80100-gcc"; 27}; 28 29&gmu { 30 compatible = "qcom,adreno-gmu-x145.0", "qcom,adreno-gmu"; 31}; 32 33&gpu { 34 compatible = "qcom,adreno-43030c00", "qcom,adreno"; 35 36 nvmem-cells = <&gpu_speed_bin>; 37 nvmem-cell-names = "speed_bin"; 38 39 gpu_opp_table: opp-table { 40 compatible = "operating-points-v2-adreno", "operating-points-v2"; 41 42 opp-1400000000 { 43 opp-hz = /bits/ 64 <1400000000>; 44 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L4>; 45 opp-peak-kBps = <16500000>; 46 qcom,opp-acd-level = <0xa8295ffd>; 47 opp-supported-hw = <0x3>; 48 }; 49 50 opp-1250000000 { 51 opp-hz = /bits/ 64 <1250000000>; 52 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L3>; 53 opp-peak-kBps = <16500000>; 54 qcom,opp-acd-level = <0x882a5ffd>; 55 opp-supported-hw = <0x7>; 56 }; 57 58 opp-1107000000 { 59 opp-hz = /bits/ 64 <1107000000>; 60 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>; 61 opp-peak-kBps = <16500000>; 62 qcom,opp-acd-level = <0x882a5ffd>; 63 opp-supported-hw = <0xf>; 64 }; 65 66 opp-1014000000 { 67 opp-hz = /bits/ 64 <1014000000>; 68 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>; 69 opp-peak-kBps = <14398438>; 70 qcom,opp-acd-level = <0xa82a5ffd>; 71 opp-supported-hw = <0xf>; 72 }; 73 74 opp-940000000 { 75 opp-hz = /bits/ 64 <940000000>; 76 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; 77 opp-peak-kBps = <14398438>; 78 qcom,opp-acd-level = <0xa82a5ffd>; 79 opp-supported-hw = <0xf>; 80 }; 81 82 opp-825000000 { 83 opp-hz = /bits/ 64 <825000000>; 84 opp-level = <RPMH_REGULATOR_LEVEL_NOM>; 85 opp-peak-kBps = <12449219>; 86 qcom,opp-acd-level = <0x882b5ffd>; 87 opp-supported-hw = <0xf>; 88 }; 89 90 opp-720000000 { 91 opp-hz = /bits/ 64 <720000000>; 92 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>; 93 opp-peak-kBps = <10687500>; 94 qcom,opp-acd-level = <0xa82c5ffd>; 95 opp-supported-hw = <0xf>; 96 }; 97 98 opp-666000000-0 { 99 opp-hz = /bits/ 64 <666000000>; 100 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 101 opp-peak-kBps = <8171875>; 102 qcom,opp-acd-level = <0xa82d5ffd>; 103 opp-supported-hw = <0xf>; 104 }; 105 106 /* Only applicable for SKUs which has 666Mhz as Fmax */ 107 opp-666000000-1 { 108 opp-hz = /bits/ 64 <666000000>; 109 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; 110 opp-peak-kBps = <16500000>; 111 qcom,opp-acd-level = <0xa82d5ffd>; 112 opp-supported-hw = <0x10>; 113 }; 114 115 opp-550000000 { 116 opp-hz = /bits/ 64 <550000000>; 117 opp-level = <RPMH_REGULATOR_LEVEL_SVS>; 118 opp-peak-kBps = <6074219>; 119 qcom,opp-acd-level = <0x882e5ffd>; 120 opp-supported-hw = <0x1f>; 121 }; 122 123 opp-380000000 { 124 opp-hz = /bits/ 64 <380000000>; 125 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; 126 opp-peak-kBps = <3000000>; 127 qcom,opp-acd-level = <0xc82f5ffd>; 128 opp-supported-hw = <0x1f>; 129 }; 130 131 opp-280000000 { 132 opp-hz = /bits/ 64 <280000000>; 133 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D1>; 134 opp-peak-kBps = <2136719>; 135 qcom,opp-acd-level = <0xc82f5ffd>; 136 opp-supported-hw = <0x1f>; 137 }; 138 }; 139 140}; 141 142&gpucc { 143 compatible = "qcom,x1p42100-gpucc"; 144}; 145 146/* PCIe3 has half the lanes compared to X1E80100 */ 147&pcie3 { 148 num-lanes = <4>; 149}; 150 151&pcie6a_phy { 152 compatible = "qcom,x1p42100-qmp-gen4x4-pcie-phy"; 153}; 154 155&qfprom { 156 gpu_speed_bin: gpu-speed-bin@119 { 157 reg = <0x119 0x2>; 158 bits = <7 9>; 159 }; 160}; 161 162&soc { 163 /* The PCIe3 PHY on X1P42100 uses a different IP block */ 164 pcie3_phy: phy@1bd4000 { 165 compatible = "qcom,x1p42100-qmp-gen4x4-pcie-phy"; 166 reg = <0x0 0x01bd4000 0x0 0x2000>, 167 <0x0 0x01bd6000 0x0 0x2000>; 168 169 clocks = <&gcc GCC_PCIE_3_PHY_AUX_CLK>, 170 <&gcc GCC_PCIE_3_CFG_AHB_CLK>, 171 <&tcsr TCSR_PCIE_8L_CLKREF_EN>, 172 <&gcc GCC_PCIE_3_PHY_RCHNG_CLK>, 173 <&gcc GCC_PCIE_3_PIPE_CLK>, 174 <&gcc GCC_PCIE_3_PIPEDIV2_CLK>; 175 clock-names = "aux", 176 "cfg_ahb", 177 "ref", 178 "rchng", 179 "pipe", 180 "pipediv2"; 181 182 resets = <&gcc GCC_PCIE_3_PHY_BCR>, 183 <&gcc GCC_PCIE_3_NOCSR_COM_PHY_BCR>; 184 reset-names = "phy", 185 "phy_nocsr"; 186 187 assigned-clocks = <&gcc GCC_PCIE_3_PHY_RCHNG_CLK>; 188 assigned-clock-rates = <100000000>; 189 190 power-domains = <&gcc GCC_PCIE_3_PHY_GDSC>; 191 192 #clock-cells = <0>; 193 clock-output-names = "pcie3_pipe_clk"; 194 195 #phy-cells = <0>; 196 197 status = "disabled"; 198 }; 199}; 200 201/* While physically present, this controller is left unconfigured and unused */ 202&tsens3 { 203 status = "disabled"; 204}; 205 206/ { 207 thermal-zones { 208 aoss0-thermal { 209 thermal-sensors = <&tsens0 0>; 210 211 trips { 212 trip-point0 { 213 temperature = <90000>; 214 hysteresis = <2000>; 215 type = "hot"; 216 }; 217 218 trip-point1 { 219 temperature = <115000>; 220 hysteresis = <1000>; 221 type = "critical"; 222 }; 223 }; 224 }; 225 226 cpu0-0-top-thermal { 227 thermal-sensors = <&tsens0 1>; 228 229 trips { 230 trip-point0 { 231 temperature = <115000>; 232 hysteresis = <1000>; 233 type = "critical"; 234 }; 235 }; 236 }; 237 238 cpu0-0-btm-thermal { 239 thermal-sensors = <&tsens0 2>; 240 241 trips { 242 trip-point0 { 243 temperature = <115000>; 244 hysteresis = <1000>; 245 type = "critical"; 246 }; 247 }; 248 }; 249 250 cpu0-1-top-thermal { 251 thermal-sensors = <&tsens0 3>; 252 253 trips { 254 trip-point0 { 255 temperature = <115000>; 256 hysteresis = <1000>; 257 type = "critical"; 258 }; 259 }; 260 }; 261 262 cpu0-1-btm-thermal { 263 thermal-sensors = <&tsens0 4>; 264 265 trips { 266 trip-point0 { 267 temperature = <115000>; 268 hysteresis = <1000>; 269 type = "critical"; 270 }; 271 }; 272 }; 273 274 cpu0-2-top-thermal { 275 thermal-sensors = <&tsens0 5>; 276 277 trips { 278 trip-point0 { 279 temperature = <115000>; 280 hysteresis = <1000>; 281 type = "critical"; 282 }; 283 }; 284 }; 285 286 cpu0-2-btm-thermal { 287 thermal-sensors = <&tsens0 6>; 288 289 trips { 290 trip-point0 { 291 temperature = <115000>; 292 hysteresis = <1000>; 293 type = "critical"; 294 }; 295 }; 296 }; 297 298 cpu0-3-top-thermal { 299 thermal-sensors = <&tsens0 7>; 300 301 trips { 302 trip-point0 { 303 temperature = <115000>; 304 hysteresis = <1000>; 305 type = "critical"; 306 }; 307 }; 308 }; 309 310 cpu0-3-btm-thermal { 311 thermal-sensors = <&tsens0 8>; 312 313 trips { 314 trip-point0 { 315 temperature = <115000>; 316 hysteresis = <1000>; 317 type = "critical"; 318 }; 319 }; 320 }; 321 322 cpuss0-top-thermal { 323 thermal-sensors = <&tsens0 9>; 324 325 trips { 326 trip-point0 { 327 temperature = <115000>; 328 hysteresis = <1000>; 329 type = "critical"; 330 }; 331 }; 332 }; 333 334 cpuss0-btm-thermal { 335 thermal-sensors = <&tsens0 10>; 336 337 trips { 338 trip-point0 { 339 temperature = <115000>; 340 hysteresis = <1000>; 341 type = "critical"; 342 }; 343 }; 344 }; 345 346 mem-thermal { 347 thermal-sensors = <&tsens0 11>; 348 349 trips { 350 trip-point0 { 351 temperature = <90000>; 352 hysteresis = <2000>; 353 type = "hot"; 354 }; 355 356 trip-point1 { 357 temperature = <115000>; 358 hysteresis = <0>; 359 type = "critical"; 360 }; 361 }; 362 }; 363 364 video-thermal { 365 thermal-sensors = <&tsens0 12>; 366 367 trips { 368 trip-point0 { 369 temperature = <90000>; 370 hysteresis = <2000>; 371 type = "hot"; 372 }; 373 374 trip-point1 { 375 temperature = <115000>; 376 hysteresis = <1000>; 377 type = "critical"; 378 }; 379 }; 380 }; 381 382 aoss1-thermal { 383 thermal-sensors = <&tsens1 0>; 384 385 trips { 386 trip-point0 { 387 temperature = <90000>; 388 hysteresis = <2000>; 389 type = "hot"; 390 }; 391 392 trip-point1 { 393 temperature = <115000>; 394 hysteresis = <1000>; 395 type = "critical"; 396 }; 397 }; 398 }; 399 400 cpu1-0-top-thermal { 401 thermal-sensors = <&tsens1 1>; 402 403 trips { 404 trip-point0 { 405 temperature = <115000>; 406 hysteresis = <1000>; 407 type = "critical"; 408 }; 409 }; 410 }; 411 412 cpu1-0-btm-thermal { 413 thermal-sensors = <&tsens1 2>; 414 415 trips { 416 trip-point0 { 417 temperature = <115000>; 418 hysteresis = <1000>; 419 type = "critical"; 420 }; 421 }; 422 }; 423 424 cpu1-1-top-thermal { 425 thermal-sensors = <&tsens1 3>; 426 427 trips { 428 trip-point0 { 429 temperature = <115000>; 430 hysteresis = <1000>; 431 type = "critical"; 432 }; 433 }; 434 }; 435 436 cpu1-1-btm-thermal { 437 thermal-sensors = <&tsens1 4>; 438 439 trips { 440 trip-point0 { 441 temperature = <115000>; 442 hysteresis = <1000>; 443 type = "critical"; 444 }; 445 }; 446 }; 447 448 cpu1-2-top-thermal { 449 thermal-sensors = <&tsens1 5>; 450 451 trips { 452 trip-point0 { 453 temperature = <115000>; 454 hysteresis = <1000>; 455 type = "critical"; 456 }; 457 }; 458 }; 459 460 cpu1-2-btm-thermal { 461 thermal-sensors = <&tsens1 6>; 462 463 trips { 464 trip-point0 { 465 temperature = <115000>; 466 hysteresis = <1000>; 467 type = "critical"; 468 }; 469 }; 470 }; 471 472 cpu1-3-top-thermal { 473 thermal-sensors = <&tsens1 7>; 474 475 trips { 476 trip-point0 { 477 temperature = <115000>; 478 hysteresis = <1000>; 479 type = "critical"; 480 }; 481 }; 482 }; 483 484 cpu1-3-btm-thermal { 485 thermal-sensors = <&tsens1 8>; 486 487 trips { 488 trip-point0 { 489 temperature = <115000>; 490 hysteresis = <1000>; 491 type = "critical"; 492 }; 493 }; 494 }; 495 496 cpuss1-top-thermal { 497 thermal-sensors = <&tsens1 9>; 498 499 trips { 500 trip-point0 { 501 temperature = <115000>; 502 hysteresis = <1000>; 503 type = "critical"; 504 }; 505 }; 506 }; 507 508 cpuss1-btm-thermal { 509 thermal-sensors = <&tsens1 10>; 510 511 trips { 512 trip-point0 { 513 temperature = <115000>; 514 hysteresis = <1000>; 515 type = "critical"; 516 }; 517 }; 518 }; 519 520 aoss2-thermal { 521 thermal-sensors = <&tsens2 0>; 522 523 trips { 524 trip-point0 { 525 temperature = <90000>; 526 hysteresis = <2000>; 527 type = "hot"; 528 }; 529 530 trip-point1 { 531 temperature = <115000>; 532 hysteresis = <1000>; 533 type = "critical"; 534 }; 535 }; 536 }; 537 538 nsp0-thermal { 539 thermal-sensors = <&tsens2 1>; 540 541 trips { 542 trip-point0 { 543 temperature = <90000>; 544 hysteresis = <2000>; 545 type = "hot"; 546 }; 547 548 trip-point1 { 549 temperature = <115000>; 550 hysteresis = <1000>; 551 type = "critical"; 552 }; 553 }; 554 }; 555 556 nsp1-thermal { 557 thermal-sensors = <&tsens2 2>; 558 559 trips { 560 trip-point0 { 561 temperature = <90000>; 562 hysteresis = <2000>; 563 type = "hot"; 564 }; 565 566 trip-point1 { 567 temperature = <115000>; 568 hysteresis = <1000>; 569 type = "critical"; 570 }; 571 }; 572 }; 573 574 nsp2-thermal { 575 thermal-sensors = <&tsens2 3>; 576 577 trips { 578 trip-point0 { 579 temperature = <90000>; 580 hysteresis = <2000>; 581 type = "hot"; 582 }; 583 584 trip-point1 { 585 temperature = <115000>; 586 hysteresis = <1000>; 587 type = "critical"; 588 }; 589 }; 590 }; 591 592 nsp3-thermal { 593 thermal-sensors = <&tsens2 4>; 594 595 trips { 596 trip-point0 { 597 temperature = <90000>; 598 hysteresis = <2000>; 599 type = "hot"; 600 }; 601 602 trip-point1 { 603 temperature = <115000>; 604 hysteresis = <1000>; 605 type = "critical"; 606 }; 607 }; 608 }; 609 610 gpuss-0-thermal { 611 polling-delay-passive = <200>; 612 613 thermal-sensors = <&tsens2 5>; 614 615 cooling-maps { 616 map0 { 617 trip = <&gpuss0_alert0>; 618 cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 619 }; 620 }; 621 622 trips { 623 gpuss0_alert0: trip-point0 { 624 temperature = <95000>; 625 hysteresis = <1000>; 626 type = "passive"; 627 }; 628 629 trip-point1 { 630 temperature = <115000>; 631 hysteresis = <1000>; 632 type = "critical"; 633 }; 634 }; 635 }; 636 637 gpuss-1-thermal { 638 polling-delay-passive = <200>; 639 640 thermal-sensors = <&tsens2 6>; 641 642 cooling-maps { 643 map0 { 644 trip = <&gpuss1_alert0>; 645 cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 646 }; 647 }; 648 649 trips { 650 gpuss1_alert0: trip-point0 { 651 temperature = <95000>; 652 hysteresis = <1000>; 653 type = "passive"; 654 }; 655 656 trip-point1 { 657 temperature = <115000>; 658 hysteresis = <1000>; 659 type = "critical"; 660 }; 661 }; 662 }; 663 664 gpuss-2-thermal { 665 polling-delay-passive = <200>; 666 667 thermal-sensors = <&tsens2 7>; 668 669 cooling-maps { 670 map0 { 671 trip = <&gpuss2_alert0>; 672 cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 673 }; 674 }; 675 676 trips { 677 gpuss2_alert0: trip-point0 { 678 temperature = <95000>; 679 hysteresis = <1000>; 680 type = "passive"; 681 }; 682 683 trip-point1 { 684 temperature = <115000>; 685 hysteresis = <1000>; 686 type = "critical"; 687 }; 688 }; 689 }; 690 691 gpuss-3-thermal { 692 polling-delay-passive = <200>; 693 694 thermal-sensors = <&tsens2 8>; 695 696 cooling-maps { 697 map0 { 698 trip = <&gpuss3_alert0>; 699 cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 700 }; 701 }; 702 703 trips { 704 gpuss3_alert0: trip-point0 { 705 temperature = <95000>; 706 hysteresis = <1000>; 707 type = "passive"; 708 }; 709 710 trip-point1 { 711 temperature = <115000>; 712 hysteresis = <1000>; 713 type = "critical"; 714 }; 715 }; 716 }; 717 718 camera0-thermal { 719 thermal-sensors = <&tsens2 9>; 720 721 trips { 722 trip-point0 { 723 temperature = <90000>; 724 hysteresis = <2000>; 725 type = "hot"; 726 }; 727 728 trip-point1 { 729 temperature = <115000>; 730 hysteresis = <1000>; 731 type = "critical"; 732 }; 733 }; 734 }; 735 736 camera1-thermal { 737 thermal-sensors = <&tsens2 10>; 738 739 trips { 740 trip-point0 { 741 temperature = <90000>; 742 hysteresis = <2000>; 743 type = "hot"; 744 }; 745 746 trip-point1 { 747 temperature = <115000>; 748 hysteresis = <1000>; 749 type = "critical"; 750 }; 751 }; 752 }; 753 }; 754}; 755