File Index
Files and directories
Sign in
FILE

msm8996pro.dtsi

File preview with syntax highlighting.

linux-6.19.14/arch/arm64/boot/dts/qcom/msm8996pro.dtsi DEVICETREE
  1// SPDX-License-Identifier: BSD-3-Clause
  2/*
  3 * Copyright (c) 2022, Linaro Limited
  4 */
  5
  6#include "msm8996.dtsi"
  7
  8/ {
  9	/delete-node/ opp-table-cluster0;
 10	/delete-node/ opp-table-cluster1;
 11
 12	/*
 13	 * On MSM8996 Pro the cpufreq driver shifts speed bins into the high
 14	 * nibble of supported hw, so speed bin 0 becomes 0x10, speed bin 1
 15	 * becomes 0x20, speed 2 becomes 0x40.
 16	 */
 17
 18	cluster0_opp: opp-table-cluster0 {
 19		compatible = "operating-points-v2-kryo-cpu";
 20		nvmem-cells = <&speedbin_efuse>;
 21		opp-shared;
 22
 23		opp-307200000 {
 24			opp-hz = /bits/ 64 <307200000>;
 25			opp-supported-hw = <0x70>;
 26			clock-latency-ns = <200000>;
 27			opp-peak-kBps = <192000>;
 28		};
 29		opp-384000000 {
 30			opp-hz = /bits/ 64 <384000000>;
 31			opp-supported-hw = <0x70>;
 32			clock-latency-ns = <200000>;
 33			opp-peak-kBps = <192000>;
 34		};
 35		opp-460800000 {
 36			opp-hz = /bits/ 64 <460800000>;
 37			opp-supported-hw = <0x70>;
 38			clock-latency-ns = <200000>;
 39			opp-peak-kBps = <192000>;
 40		};
 41		opp-537600000 {
 42			opp-hz = /bits/ 64 <537600000>;
 43			opp-supported-hw = <0x70>;
 44			clock-latency-ns = <200000>;
 45			opp-peak-kBps = <192000>;
 46		};
 47		opp-614400000 {
 48			opp-hz = /bits/ 64 <614400000>;
 49			opp-supported-hw = <0x70>;
 50			clock-latency-ns = <200000>;
 51			opp-peak-kBps = <192000>;
 52		};
 53		opp-691200000 {
 54			opp-hz = /bits/ 64 <691200000>;
 55			opp-supported-hw = <0x70>;
 56			clock-latency-ns = <200000>;
 57			opp-peak-kBps = <307200>;
 58		};
 59		opp-768000000 {
 60			opp-hz = /bits/ 64 <768000000>;
 61			opp-supported-hw = <0x70>;
 62			clock-latency-ns = <200000>;
 63			opp-peak-kBps = <307200>;
 64		};
 65		opp-844800000 {
 66			opp-hz = /bits/ 64 <844800000>;
 67			opp-supported-hw = <0x70>;
 68			clock-latency-ns = <200000>;
 69			opp-peak-kBps = <384000>;
 70		};
 71		opp-902400000 {
 72			opp-hz = /bits/ 64 <902400000>;
 73			opp-supported-hw = <0x70>;
 74			clock-latency-ns = <200000>;
 75			opp-peak-kBps = <441600>;
 76		};
 77		opp-979200000 {
 78			opp-hz = /bits/ 64 <979200000>;
 79			opp-supported-hw = <0x70>;
 80			clock-latency-ns = <200000>;
 81			opp-peak-kBps = <537600>;
 82		};
 83		opp-1056000000 {
 84			opp-hz = /bits/ 64 <1056000000>;
 85			opp-supported-hw = <0x70>;
 86			clock-latency-ns = <200000>;
 87			opp-peak-kBps = <614400>;
 88		};
 89		opp-1132800000 {
 90			opp-hz = /bits/ 64 <1132800000>;
 91			opp-supported-hw = <0x70>;
 92			clock-latency-ns = <200000>;
 93			opp-peak-kBps = <691200>;
 94		};
 95		opp-1209600000 {
 96			opp-hz = /bits/ 64 <1209600000>;
 97			opp-supported-hw = <0x70>;
 98			clock-latency-ns = <200000>;
 99			opp-peak-kBps = <768000>;
100		};
101		opp-1286400000 {
102			opp-hz = /bits/ 64 <1286400000>;
103			opp-supported-hw = <0x70>;
104			clock-latency-ns = <200000>;
105			opp-peak-kBps = <844800>;
106		};
107		opp-1363200000 {
108			opp-hz = /bits/ 64 <1363200000>;
109			opp-supported-hw = <0x70>;
110			clock-latency-ns = <200000>;
111			opp-peak-kBps = <902400>;
112		};
113		opp-1440000000 {
114			opp-hz = /bits/ 64 <1440000000>;
115			opp-supported-hw = <0x70>;
116			clock-latency-ns = <200000>;
117			opp-peak-kBps = <979200>;
118		};
119		opp-1516800000 {
120			opp-hz = /bits/ 64 <1516800000>;
121			opp-supported-hw = <0x70>;
122			clock-latency-ns = <200000>;
123			opp-peak-kBps = <1132800>;
124		};
125		opp-1593600000 {
126			opp-hz = /bits/ 64 <1593600000>;
127			opp-supported-hw = <0x70>;
128			clock-latency-ns = <200000>;
129			opp-peak-kBps = <1190400>;
130		};
131		opp-1996800000 {
132			opp-hz = /bits/ 64 <1996800000>;
133			opp-supported-hw = <0x20>;
134			clock-latency-ns = <200000>;
135			opp-peak-kBps = <1516800>;
136		};
137		opp-2188800000 {
138			opp-hz = /bits/ 64 <2188800000>;
139			opp-supported-hw = <0x10>;
140			clock-latency-ns = <200000>;
141			opp-peak-kBps = <1593600>;
142		};
143	};
144
145	cluster1_opp: opp-table-cluster1 {
146		compatible = "operating-points-v2-kryo-cpu";
147		nvmem-cells = <&speedbin_efuse>;
148		opp-shared;
149
150		opp-307200000 {
151			opp-hz = /bits/ 64 <307200000>;
152			opp-supported-hw = <0x70>;
153			clock-latency-ns = <200000>;
154			opp-peak-kBps = <192000>;
155		};
156		opp-384000000 {
157			opp-hz = /bits/ 64 <384000000>;
158			opp-supported-hw = <0x70>;
159			clock-latency-ns = <200000>;
160			opp-peak-kBps = <192000>;
161		};
162		opp-460800000 {
163			opp-hz = /bits/ 64 <460800000>;
164			opp-supported-hw = <0x70>;
165			clock-latency-ns = <200000>;
166			opp-peak-kBps = <192000>;
167		};
168		opp-537600000 {
169			opp-hz = /bits/ 64 <537600000>;
170			opp-supported-hw = <0x70>;
171			clock-latency-ns = <200000>;
172			opp-peak-kBps = <192000>;
173		};
174		opp-614400000 {
175			opp-hz = /bits/ 64 <614400000>;
176			opp-supported-hw = <0x70>;
177			clock-latency-ns = <200000>;
178			opp-peak-kBps = <192000>;
179		};
180		opp-691200000 {
181			opp-hz = /bits/ 64 <691200000>;
182			opp-supported-hw = <0x70>;
183			clock-latency-ns = <200000>;
184			opp-peak-kBps = <307200>;
185		};
186		opp-748800000 {
187			opp-hz = /bits/ 64 <748800000>;
188			opp-supported-hw = <0x70>;
189			clock-latency-ns = <200000>;
190			opp-peak-kBps = <307200>;
191		};
192		opp-825600000 {
193			opp-hz = /bits/ 64 <825600000>;
194			opp-supported-hw = <0x70>;
195			clock-latency-ns = <200000>;
196			opp-peak-kBps = <384000>;
197		};
198		opp-902400000 {
199			opp-hz = /bits/ 64 <902400000>;
200			opp-supported-hw = <0x70>;
201			clock-latency-ns = <200000>;
202			opp-peak-kBps = <441600>;
203		};
204		opp-979200000 {
205			opp-hz = /bits/ 64 <979200000>;
206			opp-supported-hw = <0x70>;
207			clock-latency-ns = <200000>;
208			opp-peak-kBps = <441600>;
209		};
210		opp-1056000000 {
211			opp-hz = /bits/ 64 <1056000000>;
212			opp-supported-hw = <0x70>;
213			clock-latency-ns = <200000>;
214			opp-peak-kBps = <537600>;
215		};
216		opp-1132800000 {
217			opp-hz = /bits/ 64 <1132800000>;
218			opp-supported-hw = <0x70>;
219			clock-latency-ns = <200000>;
220			opp-peak-kBps = <614400>;
221		};
222		opp-1209600000 {
223			opp-hz = /bits/ 64 <1209600000>;
224			opp-supported-hw = <0x70>;
225			clock-latency-ns = <200000>;
226			opp-peak-kBps = <691200>;
227		};
228		opp-1286400000 {
229			opp-hz = /bits/ 64 <1286400000>;
230			opp-supported-hw = <0x70>;
231			clock-latency-ns = <200000>;
232			opp-peak-kBps = <768000>;
233		};
234		opp-1363200000 {
235			opp-hz = /bits/ 64 <1363200000>;
236			opp-supported-hw = <0x70>;
237			clock-latency-ns = <200000>;
238			opp-peak-kBps = <844800>;
239		};
240		opp-1440000000 {
241			opp-hz = /bits/ 64 <1440000000>;
242			opp-supported-hw = <0x70>;
243			clock-latency-ns = <200000>;
244			opp-peak-kBps = <902400>;
245		};
246		opp-1516800000 {
247			opp-hz = /bits/ 64 <1516800000>;
248			opp-supported-hw = <0x70>;
249			clock-latency-ns = <200000>;
250			opp-peak-kBps = <979200>;
251		};
252		opp-1593600000 {
253			opp-hz = /bits/ 64 <1593600000>;
254			opp-supported-hw = <0x70>;
255			clock-latency-ns = <200000>;
256			opp-peak-kBps = <1056000>;
257		};
258		opp-1670400000 {
259			opp-hz = /bits/ 64 <1670400000>;
260			opp-supported-hw = <0x70>;
261			clock-latency-ns = <200000>;
262			opp-peak-kBps = <1132800>;
263		};
264		opp-1747200000 {
265			opp-hz = /bits/ 64 <1747200000>;
266			opp-supported-hw = <0x70>;
267			clock-latency-ns = <200000>;
268			opp-peak-kBps = <1190400>;
269		};
270		opp-1824000000 {
271			opp-hz = /bits/ 64 <1824000000>;
272			opp-supported-hw = <0x70>;
273			clock-latency-ns = <200000>;
274			opp-peak-kBps = <1286400>;
275		};
276		opp-1900800000 {
277			opp-hz = /bits/ 64 <1900800000>;
278			opp-supported-hw = <0x70>;
279			clock-latency-ns = <200000>;
280			opp-peak-kBps = <1363200>;
281		};
282		opp-1977600000 {
283			opp-hz = /bits/ 64 <1977600000>;
284			opp-supported-hw = <0x30>;
285			clock-latency-ns = <200000>;
286			opp-peak-kBps = <1440000>;
287		};
288		opp-2054400000 {
289			opp-hz = /bits/ 64 <2054400000>;
290			opp-supported-hw = <0x30>;
291			clock-latency-ns = <200000>;
292			opp-peak-kBps = <1516800>;
293		};
294		opp-2150400000 {
295			opp-hz = /bits/ 64 <2150400000>;
296			opp-supported-hw = <0x30>;
297			clock-latency-ns = <200000>;
298			opp-peak-kBps = <1593600>;
299		};
300		opp-2246400000 {
301			opp-hz = /bits/ 64 <2246400000>;
302			opp-supported-hw = <0x10>;
303			clock-latency-ns = <200000>;
304			opp-peak-kBps = <1593600>;
305		};
306		opp-2342400000 {
307			opp-hz = /bits/ 64 <2342400000>;
308			opp-supported-hw = <0x10>;
309			clock-latency-ns = <200000>;
310			opp-peak-kBps = <1593600>;
311		};
312	};
313};
314
315&gpu_opp_table {
316	/*
317	 * Unlike CPU opp tables, the GPU driver does not shift speed bins.
318	 *
319	 * 652.8 Mhz is available on speed bin 0 only.
320	 * 624 Mhz and 560 Mhz are available on speed bins 0 and 1.
321	 * All the rest are available on all bins of the hardware (like on
322	 * plain 8996).
323	 */
324
325	opp-652800000 {
326		opp-hz = /bits/ 64 <652800000>;
327		opp-supported-hw = <0x01>;
328	};
329	opp-624000000 {
330		opp-hz = /bits/ 64 <624000000>;
331		opp-supported-hw = <0x03>;
332	};
333	opp-560000000 {
334		opp-hz = /bits/ 64 <560000000>;
335		opp-supported-hw = <0x03>;
336	};
337	/* The rest is inherited from msm8996 */
338};
339
340&cbf {
341	compatible = "qcom,msm8996pro-cbf";
342};
~/ Read-only file preview.