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": "soc",
20            "Type": "BCL_PERCENTAGE",
21            "HotThreshold": ["NAN", "NAN", 80, "NAN", "NAN", "NAN", "NAN"],
22            "Multiplier": 1
23        },
24        {
25            "Name": "BCL_AUDIO_BAACL",
26            "Type": "BCL_VOLTAGE",
27            "VirtualSensor": true,
28            "Formula": "COUNT_THRESHOLD",
29            "TriggerSensor": "soc",
30            "Combination": ["battery", "soc"],
31            "Coefficient": [-25000, 80],
32            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
33            "PollingDelay": 0,
34            "PassiveDelay": 1000,
35            "Multiplier": 1,
36            "SendCallback": true
37        },
38        {
39            "Name": "soc_therm",
40            "Type": "UNKNOWN",
41            "TempPath": "/dev/thermal/tz-by-name/soc_therm/tz_temp",
42            "Multiplier": 0.001
43        },
44        {
45            "Name": "rffe_therm",
46            "Type": "UNKNOWN",
47            "TempPath": "/dev/thermal/tz-by-name/rffe_therm/tz_temp",
48            "Multiplier": 0.001
49        },
50        {
51            "Name": "modem_therm",
52            "Type": "UNKNOWN",
53            "TempPath": "/dev/thermal/tz-by-name/modem_therm/tz_temp",
54            "Multiplier": 0.001
55        },
56        {
57            "Name": "gnss_tcxo_therm",
58            "Type": "UNKNOWN",
59            "TempPath": "/dev/thermal/tz-by-name/gnss_tcxo_therm/tz_temp",
60            "Multiplier": 0.001
61        },
62        {
63            "Name": "usb_conn_therm",
64            "Type": "UNKNOWN",
65            "HotThreshold": ["NAN", 30.79, "NAN", "NAN", "NAN", "NAN", "NAN"],
66            "TempPath": "/dev/thermal/tz-by-name/usb_conn_therm/tz_temp",
67            "Multiplier": 0.001,
68            "PollingDelay": 300000,
69            "PassiveDelay": 7000
70        },
71        {
72            "Name": "charger_therm",
73            "Type": "UNKNOWN",
74            "HotThreshold": ["NAN", 34.89, "NAN", "NAN", "NAN", "NAN", "NAN"],
75            "TempPath": "/dev/thermal/tz-by-name/charger_therm/tz_temp",
76            "Multiplier": 0.001,
77            "PollingDelay": 300000,
78            "PassiveDelay": 7000
79        },
80        {
81            "Name": "VIRTUAL-SKIN",
82            "Type": "SKIN",
83            "Version": "0.1",
84            "VirtualSensor": true,
85            "TriggerSensor": "charger_therm",
86            "Formula": "WEIGHTED_AVG",
87            "Combination": ["soc_therm", "rffe_therm", "modem_therm"],
88            "Coefficient": [0.223, 0.175, 0.493],
89            "HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 100.0, 140.0],
90            "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
91            "Offset": 2631,
92            "Multiplier": 0.001,
93            "PollingDelay": 300000,
94            "PassiveDelay": 7000,
95            "SendCallback": true,
96            "BindedCdevInfo": [
97                {
98                    "CdevRequest": "tpu_cooling",
99                    "LimitInfo": [0, 2, 3, 4, 5, 5, 5]
100                },
101                {
102                    "CdevRequest": "gxp-cooling",
103                    "LimitInfo": [0, 0, 0, 0, 0, 99, 99]
104                }
105            ]
106        },
107        {
108            "Name": "VIRTUAL-SKIN-HINT",
109            "Type": "UNKNOWN",
110            "Hidden": true,
111            "VirtualSensor": true,
112            "TriggerSensor": "charger_therm",
113            "Formula": "MAXIMUM",
114            "Combination": ["VIRTUAL-SKIN"],
115            "Coefficient": [1.0],
116            "HotThreshold": ["NAN", 37.0, 43.0, 45.0, 46.5, 52.0, 140.0],
117            "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
118            "Multiplier": 0.001,
119            "SendPowerHint": true,
120            "PollingDelay": 300000,
121            "PassiveDelay": 7000
122        },
123        {
124            "Name": "cellular-emergency",
125            "Type": "POWER_AMPLIFIER",
126            "VirtualSensor": true,
127            "TriggerSensor": "charger_therm",
128            "Formula": "MAXIMUM",
129            "Combination": ["VIRTUAL-SKIN"],
130            "Coefficient": [1.0],
131            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", 138.0, "NAN"],
132            "HotHysteresis": [0.0, 0.0, 0.0, 0.0, 0.0, 1.9, 0.0],
133            "Multiplier": 0.001,
134            "PollingDelay": 300000,
135            "PassiveDelay": 7000,
136            "SendCallback": true
137        },
138        {
139            "Name": "VIRTUAL-SKIN-CHARGE",
140            "Type": "UNKNOWN",
141            "Version": "0.1",
142            "VirtualSensor": true,
143            "TriggerSensor": "charger_therm",
144            "Formula": "MAXIMUM",
145            "Combination": ["VIRTUAL-SKIN"],
146            "Coefficient": [1.0],
147            "HotThreshold": ["NAN", 34.0, 38.0, 41.0, 45.0, 47.0, 55.0],
148            "HotHysteresis": [0.0, 1.9, 3.9, 2.9, 3.9, 1.9, 1.9],
149            "Multiplier": 0.001,
150            "PollingDelay": 300000,
151            "PassiveDelay": 7000,
152            "PIDInfo": {
153                "K_Po": ["NAN", "NAN", 119, "NAN", "NAN", "NAN", "NAN"],
154                "K_Pu": ["NAN", "NAN", 119, "NAN", "NAN", "NAN", "NAN"],
155                "K_I": ["NAN", "NAN", 25, "NAN", "NAN", "NAN", "NAN"],
156                "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
157                "I_Max": ["NAN", "NAN", 1302, "NAN", "NAN", "NAN", "NAN"],
158                "S_Power": ["NAN", "NAN", 2527, "NAN", "NAN", "NAN", "NAN"],
159                "MinAllocPower": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
160                "MaxAllocPower": ["NAN", "NAN", 6219, "NAN", "NAN", "NAN", "NAN"],
161                "I_Cutoff": ["NAN", "NAN", 6, "NAN", "NAN", "NAN", "NAN"],
162                "I_Default": 1302
163            },
164            "ExcludedPowerInfo": [
165                {
166                    "PowerRail": "PARTIAL_SYSTEM_POWER",
167                    "PowerWeight": [0.12, 0.12, 0.06, 0.06, 0.24, 0.24, 0.24]
168                }
169            ],
170            "BindedCdevInfo": [
171                {
172                    "CdevRequest": "chg_mdis",
173                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
174                    "MaxReleaseStep": 1,
175                    "MaxThrottleStep": 1,
176                    "CdevCeiling": [0, 25, 25, 25, 26, 26, 26],
177                    "LimitInfo": [0, 0, 1, 1, 1, 26, 26]
178                }
179            ]
180        },
181        {
182            "Name": "VIRTUAL-SKIN-SPEAKER",
183            "Type": "UNKNOWN",
184            "Version": "0.1",
185            "VirtualSensor": true,
186            "TriggerSensor": "usb_conn_therm",
187            "Formula": "WEIGHTED_AVG",
188            "Combination": ["usb_conn_therm", "maxfg_base"],
189            "Coefficient": [0.89, 0.01],
190            "HotThreshold": ["NAN", 37.0, "NAN", "NAN", "NAN", "NAN", "NAN"],
191            "HotHysteresis": [0.0, 1.9, 0.0, 0.0, 0.0, 0.0, 0.0],
192            "Offset": 8426,
193            "Multiplier": 0.001,
194            "PollingDelay": 300000,
195            "PassiveDelay": 7000,
196            "SendCallback": true
197        },
198        {
199            "Name": "USB-MINUS-CHARGER",
200            "Type": "UNKNOWN",
201            "VirtualSensor": true,
202            "TriggerSensor": "usb_conn_therm",
203            "Formula": "WEIGHTED_AVG",
204            "Combination": ["usb_conn_therm", "charger_therm"],
205            "Coefficient": [1.0, -1.0],
206            "Multiplier": 0.001
207        },
208        {
209            "Name": "VIRTUAL-USB-THROTTLING",
210            "Type": "USB_PORT",
211            "Version": "0.1",
212            "VirtualSensor": true,
213            "Formula": "COUNT_THRESHOLD",
214            "TriggerSensor": "usb_conn_therm",
215            "Combination": ["usb_conn_therm", "USB-MINUS-CHARGER"],
216            "Coefficient": [46000, 7000],
217            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "2.0", "NAN", "NAN"],
218            "BindedCdevInfo": [
219                {
220                    "CdevRequest": "usbc-port",
221                    "LimitInfo": [0, 0, 0, 0, 1, 1, 1]
222                }
223            ],
224            "Multiplier": 1,
225            "PollingDelay": 300000,
226            "PassiveDelay": 7000
227        },
228        {
229            "Name": "VIRTUAL-USB-UI",
230            "Type": "USB_PORT",
231            "Version": "0.1",
232            "VirtualSensor": true,
233            "Formula": "COUNT_THRESHOLD",
234            "TriggerSensor": "usb_conn_therm",
235            "Combination": ["usb_conn_therm", "USB-MINUS-CHARGER"],
236            "Coefficient": [46000, 10000],
237            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "2.0", "NAN"],
238            "Multiplier": 1,
239            "SendCallback": true,
240            "PollingDelay": 300000,
241            "PassiveDelay": 7000
242        },
243        {
244            "Name": "LEFT-INNER-DISPLAY",
245            "Type": "UNKNOWN",
246            "Hidden": true,
247            "VirtualSensor": true,
248            "Formula": "WEIGHTED_AVG",
249            "Combination": ["usb_conn_therm"],
250            "Coefficient": [0.561],
251            "Offset": 10729,
252            "Multiplier": 0.001
253        },
254        {
255            "Name": "RIGHT-INNER-DISPLAY",
256            "Type": "UNKNOWN",
257            "Hidden": true,
258            "VirtualSensor": true,
259            "Formula": "WEIGHTED_AVG",
260            "Combination": ["soc_therm"],
261            "Coefficient": [0.799],
262            "Offset": 1620,
263            "Multiplier": 0.001
264        },
265        {
266            "Name": "INNER-DISPLAY-DIFF",
267            "Type": "UNKNOWN",
268            "VirtualSensor": true,
269            "Formula": "WEIGHTED_AVG",
270            "Combination": ["RIGHT-INNER-DISPLAY", "LEFT-INNER-DISPLAY"],
271            "Coefficient": [1.0, -1.0],
272            "Multiplier": 0.001
273        },
274        {
275            "Name": "LITTLE",
276            "Type": "CPU",
277            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
278            "VrThreshold": "NAN",
279            "Multiplier": 0.001
280        },
281        {
282            "Name": "MID",
283            "Type": "CPU",
284            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
285            "VrThreshold": "NAN",
286            "Multiplier": 0.001
287        },
288        {
289            "Name": "BIG",
290            "Type": "CPU",
291            "HotThreshold": ["NaN", "NaN", "NaN", "NaN", "NaN", "NaN", "NaN"],
292            "Multiplier": 0.001
293        },
294        {
295            "Name": "G3D",
296            "Type": "GPU",
297            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
298            "VrThreshold": "NAN",
299            "Multiplier": 0.001
300        },
301        {
302            "Name": "TPU",
303            "Type": "NPU",
304            "HotThreshold": ["NaN", "NaN", "NaN", "NaN", "NaN", "NaN", "NaN"],
305            "Multiplier": 0.001
306        }
307    ],
308    "CoolingDevices": [
309        {
310            "Name": "thermal-cpufreq-0",
311            "Type": "CPU",
312            "WritePath": "/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote"
313        },
314        {
315            "Name": "thermal-cpufreq-1",
316            "Type": "CPU",
317            "WritePath": "/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote"
318        },
319        {
320            "Name": "thermal-cpufreq-2",
321            "Type": "CPU",
322            "WritePath": "/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote"
323        },
324        {
325            "Name": "thermal-gpufreq-0",
326            "Type": "GPU",
327            "WritePath": "/dev/thermal/cdev-by-name/thermal-gpufreq-0/user_vote"
328        },
329        {
330            "Name": "chg_mdis",
331            "Type": "BATTERY"
332        },
333        {
334            "Name": "usbc-port",
335            "Type": "BATTERY"
336        },
337        {
338            "Name": "tpu_cooling",
339            "Type": "NPU",
340            "WritePath": "/dev/thermal/cdev-by-name/tpu_cooling/user_vote"
341        },
342        {
343            "Name": "gxp-cooling",
344            "Type": "NPU",
345            "WritePath": "/dev/thermal/cdev-by-name/gxp-cooling/user_vote"
346        }
347    ],
348    "PowerRails": [
349        {
350            "Name": "PARTIAL_SYSTEM_POWER",
351            "VirtualRails": true,
352            "Formula": "WEIGHTED_AVG",
353            "Combination": [
354                "S1S_VDD_CAM",
355                "S4S_VDD2H_MEM",
356                "S5S_VDDQ_MEM",
357                "S9S_VDD_AOC",
358                "L2S_PLL_MIPI_UFS",
359                "L21S_VDD2L_MEM",
360                "VSYS_PWR_DISPLAY",
361                "VSYS_PWR_WLAN_BT",
362                "S1M_VDD_MIF",
363                "S5M_VDD_INT",
364                "S6M_LLDO1",
365                "S7M_VDD_TPU",
366                "S8M_LLDO2",
367                "VSYS_PWR_MODEM"
368            ],
369            "Coefficient": [
370                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
371            ],
372            "PowerSampleDelay": 7000,
373            "PowerSampleCount": 5
374        }
375    ]
376}
377