xref: /openbmc/linux/arch/arm64/boot/dts/qcom/sdm660.dtsi (revision 05aa0eb325c98f7e06eeb3f251cbab1b27586c8e)
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