1feec3441SCraig Tatlor// SPDX-License-Identifier: GPL-2.0-only 2feec3441SCraig Tatlor/* 3feec3441SCraig Tatlor * Copyright (c) 2018, Craig Tatlor. 4feec3441SCraig Tatlor * Copyright (c) 2020, Alexey Minnekhanov <alexey.min@gmail.com> 5*05aa0eb3SKonrad Dybcio * Copyright (c) 2020, AngeloGioacchino Del Regno <kholk11@gmail.com> 6*05aa0eb3SKonrad Dybcio * Copyright (c) 2020, Konrad Dybcio <konradybcio@gmail.com> 7*05aa0eb3SKonrad Dybcio * Copyright (c) 2020, Martin Botka <martin.botka1@gmail.com> 8feec3441SCraig Tatlor */ 9feec3441SCraig Tatlor 10*05aa0eb3SKonrad Dybcio#include "sdm630.dtsi" 11feec3441SCraig Tatlor 12*05aa0eb3SKonrad Dybcio&adreno_gpu { 13*05aa0eb3SKonrad Dybcio compatible = "qcom,adreno-512.0", "qcom,adreno"; 14*05aa0eb3SKonrad Dybcio operating-points-v2 = <&gpu_sdm660_opp_table>; 15feec3441SCraig Tatlor 16*05aa0eb3SKonrad Dybcio gpu_sdm660_opp_table: opp-table { 17*05aa0eb3SKonrad Dybcio compatible = "operating-points-v2"; 18feec3441SCraig Tatlor 19*05aa0eb3SKonrad Dybcio /* 20*05aa0eb3SKonrad Dybcio * 775MHz is only available on the highest speed bin 21*05aa0eb3SKonrad Dybcio * Though it cannot be used for now due to interconnect 22*05aa0eb3SKonrad Dybcio * framework not supporting multiple frequencies 23*05aa0eb3SKonrad Dybcio * at the same opp-level 24feec3441SCraig Tatlor 25*05aa0eb3SKonrad Dybcio opp-750000000 { 26*05aa0eb3SKonrad Dybcio opp-hz = /bits/ 64 <750000000>; 27*05aa0eb3SKonrad Dybcio opp-level = <RPM_SMD_LEVEL_TURBO>; 28*05aa0eb3SKonrad Dybcio opp-peak-kBps = <5412000>; 29*05aa0eb3SKonrad Dybcio opp-supported-hw = <0xCHECKME>; 30feec3441SCraig Tatlor }; 31feec3441SCraig Tatlor 32*05aa0eb3SKonrad Dybcio * These OPPs are correct, but we are lacking support for the 33*05aa0eb3SKonrad Dybcio * GPU regulator. Hence, disable them for now to prevent the 34*05aa0eb3SKonrad Dybcio * platform from hanging on high graphics loads. 35*05aa0eb3SKonrad Dybcio 36*05aa0eb3SKonrad Dybcio opp-700000000 { 37*05aa0eb3SKonrad Dybcio opp-hz = /bits/ 64 <700000000>; 38*05aa0eb3SKonrad Dybcio opp-level = <RPM_SMD_LEVEL_TURBO>; 39*05aa0eb3SKonrad Dybcio opp-peak-kBps = <5184000>; 40*05aa0eb3SKonrad Dybcio opp-supported-hw = <0xFF>; 41*05aa0eb3SKonrad Dybcio }; 42*05aa0eb3SKonrad Dybcio 43*05aa0eb3SKonrad Dybcio opp-647000000 { 44*05aa0eb3SKonrad Dybcio opp-hz = /bits/ 64 <647000000>; 45*05aa0eb3SKonrad Dybcio opp-level = <RPM_SMD_LEVEL_NOM_PLUS>; 46*05aa0eb3SKonrad Dybcio opp-peak-kBps = <4068000>; 47*05aa0eb3SKonrad Dybcio opp-supported-hw = <0xFF>; 48*05aa0eb3SKonrad Dybcio }; 49*05aa0eb3SKonrad Dybcio 50*05aa0eb3SKonrad Dybcio opp-588000000 { 51*05aa0eb3SKonrad Dybcio opp-hz = /bits/ 64 <588000000>; 52*05aa0eb3SKonrad Dybcio opp-level = <RPM_SMD_LEVEL_NOM>; 53*05aa0eb3SKonrad Dybcio opp-peak-kBps = <3072000>; 54*05aa0eb3SKonrad Dybcio opp-supported-hw = <0xFF>; 55*05aa0eb3SKonrad Dybcio }; 56*05aa0eb3SKonrad Dybcio 57*05aa0eb3SKonrad Dybcio opp-465000000 { 58*05aa0eb3SKonrad Dybcio opp-hz = /bits/ 64 <465000000>; 59*05aa0eb3SKonrad Dybcio opp-level = <RPM_SMD_LEVEL_SVS_PLUS>; 60*05aa0eb3SKonrad Dybcio opp-peak-kBps = <2724000>; 61*05aa0eb3SKonrad Dybcio opp-supported-hw = <0xFF>; 62*05aa0eb3SKonrad Dybcio }; 63*05aa0eb3SKonrad Dybcio 64*05aa0eb3SKonrad Dybcio opp-370000000 { 65*05aa0eb3SKonrad Dybcio opp-hz = /bits/ 64 <370000000>; 66*05aa0eb3SKonrad Dybcio opp-level = <RPM_SMD_LEVEL_SVS>; 67*05aa0eb3SKonrad Dybcio opp-peak-kBps = <2188000>; 68*05aa0eb3SKonrad Dybcio opp-supported-hw = <0xFF>; 69*05aa0eb3SKonrad Dybcio }; 70*05aa0eb3SKonrad Dybcio */ 71*05aa0eb3SKonrad Dybcio 72*05aa0eb3SKonrad Dybcio opp-266000000 { 73*05aa0eb3SKonrad Dybcio opp-hz = /bits/ 64 <266000000>; 74*05aa0eb3SKonrad Dybcio opp-level = <RPM_SMD_LEVEL_LOW_SVS>; 75*05aa0eb3SKonrad Dybcio opp-peak-kBps = <1648000>; 76*05aa0eb3SKonrad Dybcio opp-supported-hw = <0xFF>; 77*05aa0eb3SKonrad Dybcio }; 78*05aa0eb3SKonrad Dybcio 79*05aa0eb3SKonrad Dybcio opp-160000000 { 80*05aa0eb3SKonrad Dybcio opp-hz = /bits/ 64 <160000000>; 81*05aa0eb3SKonrad Dybcio opp-level = <RPM_SMD_LEVEL_MIN_SVS>; 82*05aa0eb3SKonrad Dybcio opp-peak-kBps = <1200000>; 83*05aa0eb3SKonrad Dybcio opp-supported-hw = <0xFF>; 84*05aa0eb3SKonrad Dybcio }; 85feec3441SCraig Tatlor }; 86feec3441SCraig Tatlor}; 87feec3441SCraig Tatlor 88*05aa0eb3SKonrad Dybcio&CPU0 { 89feec3441SCraig Tatlor compatible = "qcom,kryo260"; 90feec3441SCraig Tatlor capacity-dmips-mhz = <1024>; 91*05aa0eb3SKonrad Dybcio /delete-property/ operating-points-v2; 92feec3441SCraig Tatlor}; 93feec3441SCraig Tatlor 94*05aa0eb3SKonrad Dybcio&CPU1 { 95feec3441SCraig Tatlor compatible = "qcom,kryo260"; 96feec3441SCraig Tatlor capacity-dmips-mhz = <1024>; 97*05aa0eb3SKonrad Dybcio /delete-property/ operating-points-v2; 98feec3441SCraig Tatlor}; 99feec3441SCraig Tatlor 100*05aa0eb3SKonrad Dybcio&CPU2 { 101feec3441SCraig Tatlor compatible = "qcom,kryo260"; 102feec3441SCraig Tatlor capacity-dmips-mhz = <1024>; 103*05aa0eb3SKonrad Dybcio /delete-property/ operating-points-v2; 104feec3441SCraig Tatlor}; 105feec3441SCraig Tatlor 106*05aa0eb3SKonrad Dybcio&CPU3 { 107feec3441SCraig Tatlor compatible = "qcom,kryo260"; 108feec3441SCraig Tatlor capacity-dmips-mhz = <1024>; 109*05aa0eb3SKonrad Dybcio /delete-property/ operating-points-v2; 110feec3441SCraig Tatlor}; 111feec3441SCraig Tatlor 112*05aa0eb3SKonrad Dybcio&CPU4 { 113feec3441SCraig Tatlor compatible = "qcom,kryo260"; 114feec3441SCraig Tatlor capacity-dmips-mhz = <640>; 115*05aa0eb3SKonrad Dybcio /delete-property/ operating-points-v2; 116feec3441SCraig Tatlor}; 117feec3441SCraig Tatlor 118*05aa0eb3SKonrad Dybcio&CPU5 { 119feec3441SCraig Tatlor compatible = "qcom,kryo260"; 120feec3441SCraig Tatlor capacity-dmips-mhz = <640>; 121*05aa0eb3SKonrad Dybcio /delete-property/ operating-points-v2; 122feec3441SCraig Tatlor}; 123feec3441SCraig Tatlor 124*05aa0eb3SKonrad Dybcio&CPU6 { 125feec3441SCraig Tatlor compatible = "qcom,kryo260"; 126feec3441SCraig Tatlor capacity-dmips-mhz = <640>; 127*05aa0eb3SKonrad Dybcio /delete-property/ operating-points-v2; 128feec3441SCraig Tatlor}; 129feec3441SCraig Tatlor 130*05aa0eb3SKonrad Dybcio&CPU7 { 131feec3441SCraig Tatlor compatible = "qcom,kryo260"; 132feec3441SCraig Tatlor capacity-dmips-mhz = <640>; 133*05aa0eb3SKonrad Dybcio /delete-property/ operating-points-v2; 134feec3441SCraig Tatlor}; 135feec3441SCraig Tatlor 136*05aa0eb3SKonrad Dybcio&gcc { 137feec3441SCraig Tatlor compatible = "qcom,gcc-sdm660"; 138feec3441SCraig Tatlor}; 139feec3441SCraig Tatlor 140*05aa0eb3SKonrad Dybcio&gpucc { 141*05aa0eb3SKonrad Dybcio compatible = "qcom,gpucc-sdm660"; 142*05aa0eb3SKonrad Dybcio}; 143*05aa0eb3SKonrad Dybcio 144*05aa0eb3SKonrad Dybcio&mmcc { 145*05aa0eb3SKonrad Dybcio compatible = "qcom,mmcc-sdm660"; 146*05aa0eb3SKonrad Dybcio /* 147*05aa0eb3SKonrad Dybcio * 660 has one more dsi host/phy, which - when implemented 148*05aa0eb3SKonrad Dybcio * and tested - should be added to the clocks property. 149*05aa0eb3SKonrad Dybcio */ 150*05aa0eb3SKonrad Dybcio}; 151*05aa0eb3SKonrad Dybcio 152*05aa0eb3SKonrad Dybcio&tlmm { 153feec3441SCraig Tatlor compatible = "qcom,sdm660-pinctrl"; 154feec3441SCraig Tatlor}; 155feec3441SCraig Tatlor 156*05aa0eb3SKonrad Dybcio&tsens { 157*05aa0eb3SKonrad Dybcio #qcom,sensors = <14>; 158feec3441SCraig Tatlor}; 159