1{
2  "Sensors": [
3    {
4      "Name": "battery",
5      "Type": "BATTERY",
6      "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", "60.0"],
7      "Multiplier": 0.001
8    },
9    {
10      "Name": "battery_cycle",
11      "Type": "BCL_VOLTAGE"
12    },
13    {
14      "Name": "maxfg_base",
15      "Type": "UNKNOWN",
16      "Multiplier": 0.001
17    },
18    {
19      "Name": "maxfg_secondary",
20      "Type": "UNKNOWN",
21      "Multiplier": 0.001
22    },
23    {
24      "Name": "soc",
25      "Type": "BCL_PERCENTAGE",
26      "HotThreshold": ["NAN", "NAN", 80, "NAN", "NAN", "NAN", "NAN"],
27      "Multiplier": 1
28    },
29    {
30      "Name": "BCL_AUDIO_BAACL",
31      "Type": "BCL_VOLTAGE",
32      "VirtualSensor": true,
33      "Formula": "COUNT_THRESHOLD",
34      "TriggerSensor": "soc",
35      "Combination": ["battery", "soc"],
36      "Coefficient": [-25000, 80],
37      "HotThreshold": ["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
38      "PollingDelay": 0,
39      "PassiveDelay": 1000,
40      "Multiplier": 1,
41      "SendCallback": true
42    },
43    {
44      "Name": "soc_therm",
45      "Type": "UNKNOWN",
46      "HotThreshold": ["NaN", 34.29, "NaN", "NaN", "NaN", "NaN", "NaN"],
47      "Multiplier": 0.001,
48      "PollingDelay": 300000,
49      "PassiveDelay": 7000
50    },
51    {
52      "Name": "rffe_therm",
53      "Type": "UNKNOWN",
54      "HotThreshold": ["NaN", 35.07, "NaN", "NaN", "NaN", "NaN", "NaN"],
55      "Multiplier": 0.001,
56      "PollingDelay": 300000,
57      "PassiveDelay": 7000
58    },
59    {
60      "Name": "modem_therm",
61      "Type": "UNKNOWN",
62      "HotThreshold": ["NaN", 33.31, "NaN", "NaN", "NaN", "NaN", "NaN"],
63      "Multiplier": 0.001,
64      "PollingDelay": 300000,
65      "PassiveDelay": 7000
66    },
67    {
68      "Name": "gnss_tcxo_therm",
69      "Type": "UNKNOWN",
70      "HotThreshold": ["NaN", 32.08, "NaN", "NaN", "NaN", "NaN", "NaN"],
71      "Multiplier": 0.001,
72      "PollingDelay": 300000,
73      "PassiveDelay": 7000
74    },
75    {
76      "Name": "usb_conn_therm",
77      "Type": "UNKNOWN",
78      "HotThreshold": ["NAN", 30.79, "NAN", "NAN", "NAN", "NAN", "NAN"],
79      "Multiplier": 0.001,
80      "PollingDelay": 300000,
81      "PassiveDelay": 7000
82    },
83    {
84      "Name": "charger_therm",
85      "Type": "UNKNOWN",
86      "HotThreshold": ["NAN", 34.89, "NAN", "NAN", "NAN", "NAN", "NAN"],
87      "Multiplier": 0.001,
88      "PollingDelay": 300000,
89      "PassiveDelay": 7000
90    },
91    {
92      "Name": "inner_display_therm",
93      "Type": "UNKNOWN",
94      "Multiplier": 0.001
95    },
96    {
97      "Name": "display_therm",
98      "Type": "UNKNOWN",
99      "Multiplier": 0.001
100    },
101    {
102      "Name": "VIRTUAL-SKIN-OPEN-SUB-1",
103      "Type": "UNKNOWN",
104      "Hidden": true,
105      "VirtualSensor": true,
106      "Formula": "WEIGHTED_AVG",
107      "Combination": ["charger_therm", "modem_therm", "gnss_tcxo_therm"],
108      "Coefficient": [0.263, 0.332, 0.519],
109      "Offset": -6068,
110      "Multiplier": 0.001
111    },
112    {
113      "Name": "VIRTUAL-SKIN-OPEN-SUB-2",
114      "Type": "UNKNOWN",
115      "Hidden": true,
116      "VirtualSensor": true,
117      "Formula": "WEIGHTED_AVG",
118      "Combination": ["charger_therm", "modem_therm", "inner_display_therm", "display_therm", "gnss_tcxo_therm"],
119      "Coefficient": [0.12, 0.12, 0.37, 0.32, 0.12],
120      "Offset": -30,
121      "Multiplier": 0.001
122    },
123    {
124      "Name": "VIRTUAL-SKIN",
125      "Type": "SKIN",
126      "Version": "2.2",
127      "VirtualSensor": true,
128      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
129      "Formula": "MAXIMUM",
130      "Combination": ["VIRTUAL-SKIN-OPEN-SUB-1", "VIRTUAL-SKIN-OPEN-SUB-2"],
131      "Coefficient": [1.0, 1.0],
132      "HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 53.0, 57.0],
133      "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
134      "Multiplier": 0.001,
135      "PollingDelay": 300000,
136      "PassiveDelay": 7000,
137      "SendCallback": true,
138      "BindedCdevInfo": [
139        {
140          "CdevRequest": "tpu_cooling",
141          "LimitInfo": [0, 2, 3, 4, 5, 5, 5]
142        },
143        {
144          "CdevRequest": "gxp-cooling",
145          "LimitInfo": [0, 0, 0, 0, 0, 99, 99]
146        }
147      ]
148    },
149    {
150      "Name": "VIRTUAL-SKIN-HINT",
151      "Type": "UNKNOWN",
152      "Hidden": true,
153      "VirtualSensor": true,
154      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
155      "Formula": "MAXIMUM",
156      "Combination": ["VIRTUAL-SKIN"],
157      "Coefficient": [1.0],
158      "HotThreshold": ["NAN", 37.0, 43.0, 45.0, 46.5, 53.0, 57.0],
159      "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
160      "Multiplier": 0.001,
161      "SendPowerHint": true,
162      "PollingDelay": 300000,
163      "PassiveDelay": 7000
164    },
165    {
166      "Name": "VIRTUAL-SKIN-CPU-LIGHT-ODPM",
167      "Type": "UNKNOWN",
168      "Hidden": true,
169      "VirtualSensor": true,
170      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
171      "Formula": "MAXIMUM",
172      "Combination": ["VIRTUAL-SKIN"],
173      "Coefficient": [1.0],
174      "HotThreshold": ["NAN", 37.0, 39.0, "NAN", "NAN", "NAN", "NAN"],
175      "HotHysteresis": [0.0, 1.9, 1.9, 0.0, 0.0, 0.0, 0.0],
176      "Multiplier": 0.001,
177      "PollingDelay": 300000,
178      "PassiveDelay": 7000,
179      "PIDInfo": {
180        "K_Po": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
181        "K_Pu": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
182        "K_I": ["NAN", "NAN", 5, "NAN", "NAN", "NAN", "NAN"],
183        "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
184        "I_Max": ["NAN", "NAN", 2200, "NAN", "NAN", "NAN", "NAN"],
185        "S_Power": ["NAN", "NAN", 800, "NAN", "NAN", "NAN", "NAN"],
186        "MinAllocPower": ["NAN", "NAN", 800, "NAN", "NAN", "NAN", "NAN"],
187        "MaxAllocPower": ["NAN", "NAN", 4600, "NAN", "NAN", "NAN", "NAN"],
188        "I_Cutoff": ["NAN", "NAN", 4, "NAN", "NAN", "NAN", "NAN"]
189      },
190      "BindedCdevInfo": [
191        {
192          "CdevRequest": "thermal-cpufreq-0",
193          "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
194          "MaxReleaseStep": 1,
195          "MaxThrottleStep": 1,
196          "BindedPowerRail": "S4M_VDD_CPUCL0",
197          "CdevCeiling": [0, 2, 2, 2, 2, 2, 2]
198        },
199        {
200          "CdevRequest": "thermal-cpufreq-1",
201          "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
202          "MaxReleaseStep": 1,
203          "MaxThrottleStep": 2,
204          "BindedPowerRail": "S2M_VDD_CPUCL1",
205          "CdevCeiling": [0, 6, 6, 6, 6, 6, 6]
206        },
207        {
208          "CdevRequest": "thermal-cpufreq-2",
209          "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
210          "MaxReleaseStep": 1,
211          "MaxThrottleStep": 2,
212          "BindedPowerRail": "S3M_VDD_CPUCL2",
213          "CdevCeiling": [0, 15, 15, 15, 15, 15, 15]
214        }
215      ],
216      "Profile": [
217        {
218          "Mode": "game",
219          "BindedCdevInfo": [
220            {
221              "CdevRequest": "thermal-cpufreq-0",
222              "BindedPowerRail": "S4M_VDD_CPUCL0",
223              "MaxReleaseStep": 1,
224              "Disabled":true
225            },
226            {
227              "CdevRequest": "thermal-cpufreq-1",
228              "BindedPowerRail": "S2M_VDD_CPUCL1",
229              "MaxReleaseStep": 1,
230              "Disabled":true
231            },
232            {
233              "CdevRequest": "thermal-cpufreq-2",
234              "BindedPowerRail": "S3M_VDD_CPUCL2",
235              "MaxReleaseStep": 1,
236              "Disabled":true
237            }
238          ]
239        }
240      ]
241    },
242    {
243      "Name": "VIRTUAL-SKIN-CPU-MID",
244      "Type": "UNKNOWN",
245      "Hidden": true,
246      "VirtualSensor": true,
247      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
248      "Formula": "MAXIMUM",
249      "Combination": ["VIRTUAL-SKIN"],
250      "Coefficient": [1.0],
251      "HotThreshold": ["NAN", 39.0, 41.0, "NAN", "NAN", "NAN", "NAN"],
252      "HotHysteresis": [0.0, 0.0, 1.9, 0.0, 0.0, 0.0, 0.0],
253      "Multiplier": 0.001,
254      "PollingDelay": 300000,
255      "PassiveDelay": 7000,
256      "PIDInfo": {
257        "K_Po": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
258        "K_Pu": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
259        "K_I": ["NAN", "NAN", 5, "NAN", "NAN", "NAN", "NAN"],
260        "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
261        "I_Max": ["NAN", "NAN", 1500, "NAN", "NAN", "NAN", "NAN"],
262        "S_Power": ["NAN", "NAN", 700, "NAN", "NAN", "NAN", "NAN"],
263        "MinAllocPower": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
264        "MaxAllocPower": ["NAN", "NAN", 2800, "NAN", "NAN", "NAN", "NAN"],
265        "I_Cutoff": ["NAN", "NAN", 4, "NAN", "NAN", "NAN", "NAN"]
266      },
267      "BindedCdevInfo": [
268        {
269          "CdevRequest": "thermal-cpufreq-0",
270          "CdevWeightForPID": [0.292, 0.292, 0.292, 0.292, 0.292, 0.292, 0.292],
271          "MaxReleaseStep": 1,
272          "MaxThrottleStep": 1,
273          "CdevCeiling": [0, 7, 7, 7, 7, 7, 7]
274        },
275        {
276          "CdevRequest": "thermal-cpufreq-1",
277          "CdevWeightForPID": [0.804, 0.804, 0.804, 0.804, 0.804, 0.804, 0.804],
278          "MaxReleaseStep": 1,
279          "MaxThrottleStep": 2,
280          "CdevCeiling": [0, 10, 10, 10, 10, 10, 10]
281        },
282        {
283          "CdevRequest": "thermal-cpufreq-2",
284          "CdevWeightForPID": [0.342, 0.342, 0.342, 0.342, 0.342, 0.342, 0.342],
285          "MaxReleaseStep": 1,
286          "MaxThrottleStep": 2,
287          "CdevCeiling": [0, 17, 17, 17, 17, 17, 17]
288        }
289      ],
290      "Profile": [
291        {
292          "Mode": "game",
293          "BindedCdevInfo": [
294            {
295              "CdevRequest": "thermal-cpufreq-0",
296              "MaxReleaseStep": 1,
297              "Disabled": true
298            },
299            {
300              "CdevRequest": "thermal-cpufreq-1",
301              "MaxReleaseStep": 1,
302              "Disabled": true
303            },
304            {
305              "CdevRequest": "thermal-cpufreq-2",
306              "MaxReleaseStep": 1,
307              "Disabled": true
308            }
309          ]
310        },
311        {
312          "Mode": "camera",
313          "BindedCdevInfo": [
314            {
315              "CdevRequest": "thermal-cpufreq-0",
316              "MaxReleaseStep": 1,
317              "Disabled": true
318            },
319            {
320              "CdevRequest": "thermal-cpufreq-1",
321              "MaxReleaseStep": 1,
322              "Disabled": true
323            },
324            {
325              "CdevRequest": "thermal-cpufreq-2",
326              "MaxReleaseStep": 1,
327              "Disabled": true
328            }
329          ]
330        }
331      ]
332    },
333    {
334      "Name": "VIRTUAL-SKIN-CPU-HIGH",
335      "Type": "UNKNOWN",
336      "Hidden": true,
337      "VirtualSensor": true,
338      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
339      "Formula": "MAXIMUM",
340      "Combination": ["VIRTUAL-SKIN"],
341      "Coefficient": [1.0],
342      "HotThreshold": ["NAN", 41.0, 43.0, 53.0, "NAN", "NAN", "NAN"],
343      "HotHysteresis": [0.0, 0.0, 1.9, 1.9, 0.0, 0.0, 0.0],
344      "Multiplier": 0.001,
345      "PollingDelay": 300000,
346      "PassiveDelay": 7000,
347      "PIDInfo": {
348        "K_Po": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
349        "K_Pu": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
350        "K_I": ["NAN", "NAN", 5, "NAN", "NAN", "NAN", "NAN"],
351        "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
352        "I_Max": ["NAN", "NAN", 1000, "NAN", "NAN", "NAN", "NAN"],
353        "S_Power": ["NAN", "NAN", 600, "NAN", "NAN", "NAN", "NAN"],
354        "MinAllocPower": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
355        "MaxAllocPower": ["NAN", "NAN", 1600, "NAN", "NAN", "NAN", "NAN"],
356        "I_Cutoff": ["NAN", "NAN", 4, "NAN", "NAN", "NAN", "NAN"]
357      },
358      "BindedCdevInfo": [
359        {
360          "CdevRequest": "thermal-cpufreq-0",
361          "CdevWeightForPID": [0.156, 0.156, 0.156, 0.156, 0.156, 0.156, 0.156],
362          "MaxReleaseStep": 1,
363          "MaxThrottleStep": 1,
364          "CdevCeiling": [0, 9, 9, 9, 9, 9, 9]
365        },
366        {
367          "CdevRequest": "thermal-cpufreq-1",
368          "CdevWeightForPID": [0.428, 0.428, 0.428, 0.428, 0.428, 0.428, 0.428],
369          "MaxReleaseStep": 1,
370          "MaxThrottleStep": 2,
371          "CdevCeiling": [0, 13, 13, 13, 13, 13, 13]
372        },
373        {
374          "CdevRequest": "thermal-cpufreq-2",
375          "CdevWeightForPID": [0.225, 0.225, 0.225, 0.225, 0.225, 0.225, 0.225],
376          "MaxReleaseStep": 1,
377          "MaxThrottleStep": 2,
378          "CdevCeiling": [0, 17, 17, 17, 17, 17, 17]
379        }
380      ],
381      "Profile": [
382        {
383          "Mode": "game",
384          "BindedCdevInfo": [
385            {
386              "CdevRequest": "thermal-cpufreq-0",
387              "MaxReleaseStep": 1,
388              "Disabled": true
389            },
390            {
391              "CdevRequest": "thermal-cpufreq-1",
392              "MaxReleaseStep": 1,
393              "Disabled": true
394            },
395            {
396              "CdevRequest": "thermal-cpufreq-2",
397              "MaxReleaseStep": 1,
398              "Disabled": true
399            }
400          ]
401        },
402        {
403          "Mode": "camera",
404          "BindedCdevInfo": [
405            {
406              "CdevRequest": "thermal-cpufreq-0",
407              "CdevWeightForPID": [
408                0.156, 0.156, 0.156, 0.156, 0.156, 0.156, 0.156
409              ],
410              "MaxReleaseStep": 1,
411              "MaxThrottleStep": 1,
412              "CdevCeiling": [0, 2, 2, 2, 2, 2, 2]
413            },
414            {
415              "CdevRequest": "thermal-cpufreq-1",
416              "CdevWeightForPID": [
417                0.428, 0.428, 0.428, 0.428, 0.428, 0.428, 0.428
418              ],
419              "MaxReleaseStep": 1,
420              "MaxThrottleStep": 2,
421              "CdevCeiling": [0, 6, 6, 6, 6, 6, 6]
422            },
423            {
424              "CdevRequest": "thermal-cpufreq-2",
425              "CdevWeightForPID": [
426                0.225, 0.225, 0.225, 0.225, 0.225, 0.225, 0.225
427              ],
428              "MaxReleaseStep": 1,
429              "MaxThrottleStep": 2,
430              "CdevCeiling": [0, 15, 15, 15, 15, 15, 15]
431            }
432          ]
433        }
434      ]
435    },
436    {
437      "Name": "VIRTUAL-SKIN-CPU-GPU",
438      "Type": "UNKNOWN",
439      "Hidden": true,
440      "VirtualSensor": true,
441      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
442      "Formula": "MAXIMUM",
443      "Combination": ["VIRTUAL-SKIN"],
444      "Coefficient": [1.0],
445      "HotThreshold": ["NAN", 37.0, 43.0, 45.0, 46.5, 53.0, 57.0],
446      "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
447      "Multiplier": 0.001,
448      "PollingDelay": 300000,
449      "PassiveDelay": 7000,
450      "PIDInfo": {
451        "K_Po": ["NAN", "NAN", "NAN", 300, "NAN", "NAN", "NAN"],
452        "K_Pu": ["NAN", "NAN", "NAN", 300, "NAN", "NAN", "NAN"],
453        "K_I": ["NAN", "NAN", "NAN", 5, "NAN", "NAN", "NAN"],
454        "K_D": ["NAN", "NAN", "NAN", 0, "NAN", "NAN", "NAN"],
455        "I_Max": ["NAN", "NAN", "NAN", 2600, "NAN", "NAN", "NAN"],
456        "S_Power": ["NAN", "NAN", "NAN", 800, "NAN", "NAN", "NAN"],
457        "MinAllocPower": ["NAN", "NAN", "NAN", 0, "NAN", "NAN", "NAN"],
458        "MaxAllocPower": ["NAN", "NAN", "NAN", 3900, "NAN", "NAN", "NAN"],
459        "I_Cutoff": ["NAN", "NAN", "NAN", 8, "NAN", "NAN", "NAN"]
460      },
461      "BindedCdevInfo": [
462        {
463          "CdevRequest": "thermal-cpufreq-0",
464          "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
465          "MaxReleaseStep": 1,
466          "MaxThrottleStep": 1,
467          "BindedPowerRail": "S4M_VDD_CPUCL0",
468          "CdevCeiling": [0, 9, 9, 9, 9, 9, 9],
469          "LimitInfo": [0, 0, 0, 0, 0, 9, 9]
470        },
471        {
472          "CdevRequest": "thermal-cpufreq-1",
473          "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
474          "MaxReleaseStep": 1,
475          "MaxThrottleStep": 2,
476          "BindedPowerRail": "S2M_VDD_CPUCL1",
477          "CdevCeiling": [0, 13, 13, 13, 14, 16, 16],
478          "LimitInfo": [0, 0, 0, 0, 0, 16, 16]
479        },
480        {
481          "CdevRequest": "thermal-cpufreq-2",
482          "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
483          "MaxReleaseStep": 1,
484          "MaxThrottleStep": 2,
485          "BindedPowerRail": "S3M_VDD_CPUCL2",
486          "CdevCeiling": [0, 17, 17, 17, 17, 17, 17],
487          "LimitInfo": [0, 0, 0, 0, 0, 17, 17]
488        },
489        {
490          "CdevRequest": "thermal-gpufreq-0",
491          "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
492          "MaxReleaseStep": 1,
493          "MaxThrottleStep": 1,
494          "BindedPowerRail": "S2S_VDD_G3D",
495          "CdevCeiling": [0, 9, 9, 9, 10, 12, 12],
496          "LimitInfo": [0, 0, 0, 0, 0, 12, 12]
497        }
498      ]
499    },
500    {
501      "Name": "VIRTUAL-SKIN-GPU",
502      "Type": "UNKNOWN",
503      "Hidden": true,
504      "VirtualSensor": true,
505      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
506      "Formula": "MAXIMUM",
507      "Combination": ["VIRTUAL-SKIN"],
508      "Coefficient": [1.0],
509      "HotThreshold": ["NAN", 43.0, 45.0, 46.5, 53.0, "NAN", "NAN"],
510      "HotHysteresis": [0.0, 1.9, 1.9, 1.4, 1.9, 0.0, 0.0],
511      "Multiplier": 0.001,
512      "PollingDelay": 300000,
513      "PassiveDelay": 7000,
514      "PIDInfo": {
515        "K_Po": ["NAN", "NAN", 700, "NAN", "NAN", "NAN", "NAN"],
516        "K_Pu": ["NAN", "NAN", 700, "NAN", "NAN", "NAN", "NAN"],
517        "K_I": ["NAN", "NAN", 5, "NAN", "NAN", "NAN", "NAN"],
518        "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
519        "I_Max": ["NAN", "NAN", 1723, "NAN", "NAN", "NAN", "NAN"],
520        "S_Power": ["NAN", "NAN", 473, "NAN", "NAN", "NAN", "NAN"],
521        "MinAllocPower": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
522        "MaxAllocPower": ["NAN", "NAN", 2500, "NAN", "NAN", "NAN", "NAN"],
523        "I_Cutoff": ["NAN", "NAN", 4, "NAN", "NAN", "NAN", "NAN"]
524      },
525      "BindedCdevInfo": [
526        {
527          "CdevRequest": "thermal-gpufreq-0",
528          "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
529          "CdevCeiling": [0, 9, 9, 10, 12, 12, 12]
530        }
531      ]
532    },
533    {
534      "Name": "cellular-emergency",
535      "Type": "POWER_AMPLIFIER",
536      "VirtualSensor": true,
537      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
538      "Formula": "MAXIMUM",
539      "Combination": ["VIRTUAL-SKIN"],
540      "Coefficient": [1.0],
541      "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", 55.0, "NAN"],
542      "HotHysteresis": [0.0, 0.0, 0.0, 0.0, 0.0, 1.9, 0.0],
543      "Multiplier": 0.001,
544      "PollingDelay": 300000,
545      "PassiveDelay": 7000,
546      "SendCallback": true
547    },
548    {
549      "Name": "VIRTUAL-SKIN-OUTER-DISPLAY",
550      "Type": "DISPLAY",
551      "Version": "1.0",
552      "VirtualSensor": true,
553      "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
554      "Formula": "MAXIMUM",
555      "Combination": ["VIRTUAL-SKIN"],
556      "Coefficient": [1.0],
557      "HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 53.0, 57.0],
558      "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
559      "Multiplier": 0.001,
560      "SendCallback": true,
561      "PollingDelay": 300000,
562      "PassiveDelay": 7000
563    },
564    {
565      "Name": "VIRTUAL-SKIN-CHARGE-WIRED",
566      "Type": "UNKNOWN",
567      "Version": "0.2",
568      "VirtualSensor": true,
569      "TriggerSensor": "charger_therm",
570      "Formula": "WEIGHTED_AVG",
571      "Combination": ["soc_therm", "rffe_therm", "modem_therm", "gnss_tcxo_therm"],
572      "Coefficient": [0.119, 0.103, 0.481, 0.288],
573      "Offset": -203,
574      "Multiplier": 0.001
575    },
576    {
577      "Name": "VIRTUAL-SKIN-SPEAKER",
578      "Type": "UNKNOWN",
579      "Version": "0.1",
580      "VirtualSensor": true,
581      "TriggerSensor": "usb_conn_therm",
582      "Formula": "WEIGHTED_AVG",
583      "Combination": ["usb_conn_therm", "maxfg_base"],
584      "Coefficient": [0.89, 0.01],
585      "HotThreshold": ["NAN", 37.0, "NAN", "NAN", "NAN", "NAN", "NAN"],
586      "HotHysteresis": [0.0, 1.9, 0.0, 0.0, 0.0, 0.0, 0.0],
587      "Offset": 8426,
588      "Multiplier": 0.001,
589      "PollingDelay": 300000,
590      "PassiveDelay": 7000,
591      "SendCallback": true
592    },
593    {
594      "Name": "USB-MINUS-CHARGER",
595      "Type": "UNKNOWN",
596      "VirtualSensor": true,
597      "Hidden": true,
598      "TriggerSensor": "usb_conn_therm",
599      "Formula": "WEIGHTED_AVG",
600      "Combination": ["usb_conn_therm", "charger_therm"],
601      "Coefficient": [1.0, -1.0],
602      "Multiplier": 0.001
603    },
604    {
605      "Name": "VIRTUAL-USB-THROTTLING",
606      "Type": "USB_PORT",
607      "Version": "0.1",
608      "VirtualSensor": true,
609      "Formula": "COUNT_THRESHOLD",
610      "TriggerSensor": "usb_conn_therm",
611      "Combination": ["usb_conn_therm", "USB-MINUS-CHARGER"],
612      "Coefficient": [46000, 7000],
613      "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "2.0", "NAN", "NAN"],
614      "BindedCdevInfo": [
615        {
616          "CdevRequest": "usbc-port",
617          "LimitInfo": [0, 0, 0, 0, 1, 1, 1]
618        }
619      ],
620      "Multiplier": 1,
621      "PollingDelay": 300000,
622      "PassiveDelay": 7000
623    },
624    {
625      "Name": "VIRTUAL-USB-UI",
626      "Type": "USB_PORT",
627      "Version": "0.1",
628      "VirtualSensor": true,
629      "Formula": "COUNT_THRESHOLD",
630      "TriggerSensor": "usb_conn_therm",
631      "Combination": ["usb_conn_therm", "USB-MINUS-CHARGER"],
632      "Coefficient": [46000, 10000],
633      "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "2.0", "NAN"],
634      "Multiplier": 1,
635      "SendCallback": true,
636      "PollingDelay": 300000,
637      "PassiveDelay": 7000
638    },
639    {
640      "Name": "LEFT-INNER-DISPLAY",
641      "Type": "UNKNOWN",
642      "Hidden": true,
643      "VirtualSensor": true,
644      "Formula": "WEIGHTED_AVG",
645      "Combination": ["display_therm", "maxfg_secondary"],
646      "Coefficient": [0.516, 0.535],
647      "Offset": -26,
648      "Multiplier": 0.001
649    },
650    {
651      "Name": "RIGHT-INNER-DISPLAY",
652      "Type": "UNKNOWN",
653      "Hidden": true,
654      "VirtualSensor": true,
655      "Formula": "WEIGHTED_AVG",
656      "Combination": ["usb_conn_therm", "maxfg_base"],
657      "Coefficient": [0.045, 0.849],
658      "Offset": 2975,
659      "Multiplier": 0.001
660    },
661    {
662      "Name": "INNER-DISPLAY-DIFF",
663      "Type": "UNKNOWN",
664      "VirtualSensor": true,
665      "Formula": "WEIGHTED_AVG",
666      "Combination": ["RIGHT-INNER-DISPLAY", "LEFT-INNER-DISPLAY"],
667      "Coefficient": [1.0, -1.0],
668      "Multiplier": 0.001
669    },
670    {
671      "Name": "LITTLE",
672      "Type": "CPU",
673      "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
674      "VrThreshold": "NAN",
675      "Multiplier": 0.001
676    },
677    {
678      "Name": "MID",
679      "Type": "CPU",
680      "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
681      "VrThreshold": "NAN",
682      "Multiplier": 0.001
683    },
684    {
685      "Name": "BIG",
686      "Type": "CPU",
687      "HotThreshold": ["NaN", "NaN", "NaN", "NaN", "NaN", "NaN", "NaN"],
688      "Multiplier": 0.001
689    },
690    {
691      "Name": "G3D",
692      "Type": "GPU",
693      "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
694      "VrThreshold": "NAN",
695      "Multiplier": 0.001
696    },
697    {
698      "Name": "TPU",
699      "Type": "NPU",
700      "HotThreshold": ["NaN", "NaN", "NaN", "NaN", "NaN", "NaN", "NaN"],
701      "Multiplier": 0.001
702    }
703  ],
704  "CoolingDevices": [
705    {
706      "Name": "thermal-cpufreq-0",
707      "Type": "CPU",
708      "WritePath": "/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote"
709    },
710    {
711      "Name": "thermal-cpufreq-1",
712      "Type": "CPU",
713      "WritePath": "/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote"
714    },
715    {
716      "Name": "thermal-cpufreq-2",
717      "Type": "CPU",
718      "WritePath": "/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote"
719    },
720    {
721      "Name": "thermal-gpufreq-0",
722      "Type": "GPU",
723      "WritePath": "/dev/thermal/cdev-by-name/thermal-gpufreq-0/user_vote"
724    },
725    {
726      "Name": "usbc-port",
727      "Type": "BATTERY"
728    },
729    {
730      "Name": "tpu_cooling",
731      "Type": "NPU",
732      "WritePath": "/dev/thermal/cdev-by-name/tpu_cooling/user_vote"
733    },
734    {
735      "Name": "gxp-cooling",
736      "Type": "NPU",
737      "WritePath": "/dev/thermal/cdev-by-name/gxp-cooling/user_vote"
738    }
739  ],
740  "PowerRails": [
741    {
742      "Name": "S3M_VDD_CPUCL2",
743      "PowerSampleDelay": 7000,
744      "PowerSampleCount": 1
745    },
746    {
747      "Name": "S2M_VDD_CPUCL1",
748      "PowerSampleDelay": 7000,
749      "PowerSampleCount": 1
750    },
751    {
752      "Name": "S4M_VDD_CPUCL0",
753      "PowerSampleDelay": 7000,
754      "PowerSampleCount": 1
755    },
756    {
757      "Name": "S2S_VDD_G3D",
758      "PowerSampleDelay": 7000,
759      "PowerSampleCount": 1
760    },
761    {
762      "Name": "PARTIAL_SYSTEM_POWER",
763      "VirtualRails": true,
764      "Formula": "WEIGHTED_AVG",
765      "Combination": [
766        "S1S_VDD_CAM",
767        "S2S_VDD_G3D",
768        "S4S_VDD2H_MEM",
769        "S5S_VDDQ_MEM",
770        "S9S_VDD_AOC",
771        "L2S_PLL_MIPI_UFS",
772        "L21S_VDD2L_MEM",
773        "VSYS_PWR_DISPLAY",
774        "VSYS_PWR_WLAN_BT",
775        "S1M_VDD_MIF",
776        "S3M_VDD_CPUCL2",
777        "S2M_VDD_CPUCL1",
778        "S4M_VDD_CPUCL0",
779        "S5M_VDD_INT",
780        "S6M_LLDO1",
781        "S7M_VDD_TPU",
782        "S8M_LLDO2",
783        "VSYS_PWR_MODEM"
784      ],
785      "Coefficient": [
786        1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
787        1.0, 1.0, 1.0, 1.0
788      ],
789      "PowerSampleDelay": 7000,
790      "PowerSampleCount": 5
791    }
792  ]
793}
794