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