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