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