|
547 | 547 | };
|
548 | 548 | };
|
549 | 549 |
|
| 550 | + gpu: gpu@2c00000 { |
| 551 | + /* |
| 552 | + * note: the amd,imageon compatible makes it possible |
| 553 | + * to use the drm/msm driver without the display node, |
| 554 | + * make sure to remove it when display node is added |
| 555 | + */ |
| 556 | + compatible = "qcom,adreno-640.1", |
| 557 | + "qcom,adreno", |
| 558 | + "amd,imageon"; |
| 559 | + #stream-id-cells = <16>; |
| 560 | + |
| 561 | + reg = <0 0x02c00000 0 0x40000>; |
| 562 | + reg-names = "kgsl_3d0_reg_memory"; |
| 563 | + |
| 564 | + interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; |
| 565 | + |
| 566 | + iommus = <&adreno_smmu 0 0x401>; |
| 567 | + |
| 568 | + operating-points-v2 = <&gpu_opp_table>; |
| 569 | + |
| 570 | + qcom,gmu = <&gmu>; |
| 571 | + |
| 572 | + zap-shader { |
| 573 | + memory-region = <&gpu_mem>; |
| 574 | + }; |
| 575 | + |
| 576 | + /* note: downstream checks gpu binning for 675 Mhz */ |
| 577 | + gpu_opp_table: opp-table { |
| 578 | + compatible = "operating-points-v2"; |
| 579 | + |
| 580 | + opp-675000000 { |
| 581 | + opp-hz = /bits/ 64 <675000000>; |
| 582 | + opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>; |
| 583 | + }; |
| 584 | + |
| 585 | + opp-585000000 { |
| 586 | + opp-hz = /bits/ 64 <585000000>; |
| 587 | + opp-level = <RPMH_REGULATOR_LEVEL_NOM>; |
| 588 | + }; |
| 589 | + |
| 590 | + opp-499200000 { |
| 591 | + opp-hz = /bits/ 64 <499200000>; |
| 592 | + opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>; |
| 593 | + }; |
| 594 | + |
| 595 | + opp-427000000 { |
| 596 | + opp-hz = /bits/ 64 <427000000>; |
| 597 | + opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>; |
| 598 | + }; |
| 599 | + |
| 600 | + opp-345000000 { |
| 601 | + opp-hz = /bits/ 64 <345000000>; |
| 602 | + opp-level = <RPMH_REGULATOR_LEVEL_SVS>; |
| 603 | + }; |
| 604 | + |
| 605 | + opp-257000000 { |
| 606 | + opp-hz = /bits/ 64 <257000000>; |
| 607 | + opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>; |
| 608 | + }; |
| 609 | + }; |
| 610 | + }; |
| 611 | + |
| 612 | + gmu: gmu@2c6a000 { |
| 613 | + compatible="qcom,adreno-gmu-640.1", "qcom,adreno-gmu"; |
| 614 | + |
| 615 | + reg = <0 0x02c6a000 0 0x30000>, |
| 616 | + <0 0x0b290000 0 0x10000>, |
| 617 | + <0 0x0b490000 0 0x10000>; |
| 618 | + reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq"; |
| 619 | + |
| 620 | + interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>, |
| 621 | + <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>; |
| 622 | + interrupt-names = "hfi", "gmu"; |
| 623 | + |
| 624 | + clocks = <&gpucc 0>, |
| 625 | + <&gpucc 3>, |
| 626 | + <&gpucc 6>, |
| 627 | + <&gcc GCC_DDRSS_GPU_AXI_CLK>, |
| 628 | + <&gcc GCC_GPU_MEMNOC_GFX_CLK>; |
| 629 | + clock-names = "ahb", "gmu", "cxo", "axi", "memnoc"; |
| 630 | + |
| 631 | + power-domains = <&gpucc 0>, |
| 632 | + <&gpucc 1>; |
| 633 | + power-domain-names = "cx", "gx"; |
| 634 | + |
| 635 | + iommus = <&adreno_smmu 5 0x400>; |
| 636 | + |
| 637 | + operating-points-v2 = <&gmu_opp_table>; |
| 638 | + |
| 639 | + gmu_opp_table: opp-table { |
| 640 | + compatible = "operating-points-v2"; |
| 641 | + |
| 642 | + opp-200000000 { |
| 643 | + opp-hz = /bits/ 64 <200000000>; |
| 644 | + opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>; |
| 645 | + }; |
| 646 | + }; |
| 647 | + }; |
| 648 | + |
| 649 | + gpucc: clock-controller@2c90000 { |
| 650 | + compatible = "qcom,sm8150-gpucc"; |
| 651 | + reg = <0 0x02c90000 0 0x9000>; |
| 652 | + clocks = <&rpmhcc RPMH_CXO_CLK>, |
| 653 | + <&gcc GCC_GPU_GPLL0_CLK_SRC>, |
| 654 | + <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>; |
| 655 | + clock-names = "bi_tcxo", |
| 656 | + "gcc_gpu_gpll0_clk_src", |
| 657 | + "gcc_gpu_gpll0_div_clk_src"; |
| 658 | + #clock-cells = <1>; |
| 659 | + #reset-cells = <1>; |
| 660 | + #power-domain-cells = <1>; |
| 661 | + }; |
| 662 | + |
| 663 | + adreno_smmu: iommu@2ca0000 { |
| 664 | + compatible = "qcom,sm8150-smmu-500", "arm,mmu-500"; |
| 665 | + reg = <0 0x02ca0000 0 0x10000>; |
| 666 | + #iommu-cells = <2>; |
| 667 | + #global-interrupts = <1>; |
| 668 | + interrupts = <GIC_SPI 674 IRQ_TYPE_LEVEL_HIGH>, |
| 669 | + <GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>, |
| 670 | + <GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>, |
| 671 | + <GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>, |
| 672 | + <GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>, |
| 673 | + <GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>, |
| 674 | + <GIC_SPI 686 IRQ_TYPE_LEVEL_HIGH>, |
| 675 | + <GIC_SPI 687 IRQ_TYPE_LEVEL_HIGH>, |
| 676 | + <GIC_SPI 688 IRQ_TYPE_LEVEL_HIGH>; |
| 677 | + clocks = <&gpucc 0>, |
| 678 | + <&gcc GCC_GPU_MEMNOC_GFX_CLK>, |
| 679 | + <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>; |
| 680 | + clock-names = "ahb", "bus", "iface"; |
| 681 | + |
| 682 | + power-domains = <&gpucc 0>; |
| 683 | + }; |
| 684 | + |
550 | 685 | tlmm: pinctrl@3100000 {
|
551 | 686 | compatible = "qcom,sm8150-pinctrl";
|
552 | 687 | reg = <0x0 0x03100000 0x0 0x300000>,
|
|
0 commit comments