1**General Properties** 2 3What: /sys/class/power_supply/<supply_name>/manufacturer 4Date: May 2007 5Contact: [email protected] 6Description: 7 Reports the name of the device manufacturer. 8 9 Access: Read 10 Valid values: Represented as string 11 12What: /sys/class/power_supply/<supply_name>/model_name 13Date: May 2007 14Contact: [email protected] 15Description: 16 Reports the name of the device model. 17 18 Access: Read 19 Valid values: Represented as string 20 21What: /sys/class/power_supply/<supply_name>/serial_number 22Date: January 2008 23Contact: [email protected] 24Description: 25 Reports the serial number of the device. 26 27 Access: Read 28 Valid values: Represented as string 29 30What: /sys/class/power_supply/<supply_name>/type 31Date: May 2010 32Contact: [email protected] 33Description: 34 Describes the main type of the supply. 35 36 Access: Read 37 Valid values: "Battery", "UPS", "Mains", "USB", "Wireless" 38 39**Battery and USB properties** 40 41What: /sys/class/power_supply/<supply_name>/current_avg 42Date: May 2007 43Contact: [email protected] 44Description: 45 Battery: 46 47 Reports an average IBAT current reading for the battery, over 48 a fixed period. Normally devices will provide a fixed interval 49 in which they average readings to smooth out the reported 50 value. 51 52 USB: 53 54 Reports an average IBUS current reading over a fixed period. 55 Normally devices will provide a fixed interval in which they 56 average readings to smooth out the reported value. 57 58 Access: Read 59 60 Valid values: Represented in microamps. Negative values are 61 used for discharging batteries, positive values for charging 62 batteries and for USB IBUS current. 63 64What: /sys/class/power_supply/<supply_name>/current_max 65Date: October 2010 66Contact: [email protected] 67Description: 68 Battery: 69 70 Reports the maximum IBAT current allowed into the battery. 71 72 USB: 73 74 Reports the maximum IBUS current the supply can support. 75 76 Access: Read 77 Valid values: Represented in microamps 78 79What: /sys/class/power_supply/<supply_name>/current_now 80Date: May 2007 81Contact: [email protected] 82Description: 83 84 Battery: 85 86 Reports an instant, single IBAT current reading for the 87 battery. This value is not averaged/smoothed. 88 89 Access: Read 90 91 USB: 92 93 Reports the IBUS current supplied now. This value is generally 94 read-only reporting, unless the 'online' state of the supply 95 is set to be programmable, in which case this value can be set 96 within the reported min/max range. 97 98 Access: Read, Write 99 100 Valid values: Represented in microamps. Negative values are 101 used for discharging batteries, positive values for charging 102 batteries and for USB IBUS current. 103 104What: /sys/class/power_supply/<supply_name>/temp 105Date: May 2007 106Contact: [email protected] 107Description: 108 Battery: 109 110 Reports the current TBAT battery temperature reading. 111 112 USB: 113 114 Reports the current supply temperature reading. This would 115 normally be the internal temperature of the device itself 116 (e.g TJUNC temperature of an IC) 117 118 Access: Read 119 120 Valid values: Represented in 1/10 Degrees Celsius 121 122What: /sys/class/power_supply/<supply_name>/temp_alert_max 123Date: July 2012 124Contact: [email protected] 125Description: 126 Battery: 127 128 Maximum TBAT temperature trip-wire value where the supply will 129 notify user-space of the event. 130 131 USB: 132 133 Maximum supply temperature trip-wire value where the supply 134 will notify user-space of the event. 135 136 This is normally used for the charging scenario where 137 user-space needs to know if the temperature has crossed an 138 upper threshold so it can take appropriate action (e.g. warning 139 user that the temperature is critically high, and charging has 140 stopped). 141 142 Access: Read 143 144 Valid values: Represented in 1/10 Degrees Celsius 145 146What: /sys/class/power_supply/<supply_name>/temp_alert_min 147Date: July 2012 148Contact: [email protected] 149Description: 150 151 Battery: 152 153 Minimum TBAT temperature trip-wire value where the supply will 154 notify user-space of the event. 155 156 USB: 157 158 Minimum supply temperature trip-wire value where the supply 159 will notify user-space of the event. 160 161 This is normally used for the charging scenario where user-space 162 needs to know if the temperature has crossed a lower threshold 163 so it can take appropriate action (e.g. warning user that 164 temperature level is high, and charging current has been 165 reduced accordingly to remedy the situation). 166 167 Access: Read 168 169 Valid values: Represented in 1/10 Degrees Celsius 170 171What: /sys/class/power_supply/<supply_name>/temp_max 172Date: July 2014 173Contact: [email protected] 174Description: 175 Battery: 176 177 Reports the maximum allowed TBAT battery temperature for 178 charging. 179 180 USB: 181 182 Reports the maximum allowed supply temperature for operation. 183 184 Access: Read 185 186 Valid values: Represented in 1/10 Degrees Celsius 187 188What: /sys/class/power_supply/<supply_name>/temp_min 189Date: July 2014 190Contact: [email protected] 191Description: 192 Battery: 193 194 Reports the minimum allowed TBAT battery temperature for 195 charging. 196 197 USB: 198 199 Reports the minimum allowed supply temperature for operation. 200 201 Access: Read 202 203 Valid values: Represented in 1/10 Degrees Celsius 204 205What: /sys/class/power_supply/<supply_name>/voltage_max, 206Date: January 2008 207Contact: [email protected] 208Description: 209 Battery: 210 211 Reports the maximum safe VBAT voltage permitted for the 212 battery, during charging. 213 214 USB: 215 216 Reports the maximum VBUS voltage the supply can support. 217 218 Access: Read 219 220 Valid values: Represented in microvolts 221 222What: /sys/class/power_supply/<supply_name>/voltage_min, 223Date: January 2008 224Contact: [email protected] 225Description: 226 Battery: 227 228 Reports the minimum safe VBAT voltage permitted for the 229 battery, during discharging. 230 231 USB: 232 233 Reports the minimum VBUS voltage the supply can support. 234 235 Access: Read 236 237 Valid values: Represented in microvolts 238 239What: /sys/class/power_supply/<supply_name>/voltage_now, 240Date: May 2007 241Contact: [email protected] 242Description: 243 Battery: 244 245 Reports an instant, single VBAT voltage reading for the 246 battery. This value is not averaged/smoothed. 247 248 Access: Read 249 250 USB: 251 252 Reports the VBUS voltage supplied now. This value is generally 253 read-only reporting, unless the 'online' state of the supply 254 is set to be programmable, in which case this value can be set 255 within the reported min/max range. 256 257 Access: Read, Write 258 259 Valid values: Represented in microvolts 260 261**Battery Properties** 262 263What: /sys/class/power_supply/<supply_name>/capacity 264Date: May 2007 265Contact: [email protected] 266Description: 267 Fine grain representation of battery capacity. 268 269 Access: Read 270 271 Valid values: 0 - 100 (percent) 272 273What: /sys/class/power_supply/<supply_name>/capacity_alert_max 274Date: July 2012 275Contact: [email protected] 276Description: 277 Maximum battery capacity trip-wire value where the supply will 278 notify user-space of the event. This is normally used for the 279 battery discharging scenario where user-space needs to know the 280 battery has dropped to an upper level so it can take 281 appropriate action (e.g. warning user that battery level is 282 low). 283 284 Access: Read, Write 285 286 Valid values: 0 - 100 (percent) 287 288What: /sys/class/power_supply/<supply_name>/capacity_alert_min 289Date: July 2012 290Contact: [email protected] 291Description: 292 Minimum battery capacity trip-wire value where the supply will 293 notify user-space of the event. This is normally used for the 294 battery discharging scenario where user-space needs to know the 295 battery has dropped to a lower level so it can take 296 appropriate action (e.g. warning user that battery level is 297 critically low). 298 299 Access: Read, Write 300 301 Valid values: 0 - 100 (percent) 302 303What: /sys/class/power_supply/<supply_name>/capacity_error_margin 304Date: April 2019 305Contact: [email protected] 306Description: 307 Battery capacity measurement becomes unreliable without 308 recalibration. This values provides the maximum error 309 margin expected to exist by the fuel gauge in percent. 310 Values close to 0% will be returned after (re-)calibration 311 has happened. Over time the error margin will increase. 312 100% means, that the capacity related values are basically 313 completely useless. 314 315 Access: Read 316 317 Valid values: 0 - 100 (percent) 318 319What: /sys/class/power_supply/<supply_name>/capacity_level 320Date: June 2009 321Contact: [email protected] 322Description: 323 Coarse representation of battery capacity. 324 325 Access: Read 326 327 Valid values: 328 "Unknown", "Critical", "Low", "Normal", "High", 329 "Full" 330 331What: /sys/class/power_supply/<supply_name>/charge_control_limit 332Date: Oct 2012 333Contact: [email protected] 334Description: 335 Maximum allowable charging current. Used for charge rate 336 throttling for thermal cooling or improving battery health. 337 338 Access: Read, Write 339 340 Valid values: Represented in microamps 341 342What: /sys/class/power_supply/<supply_name>/charge_control_limit_max 343Date: Oct 2012 344Contact: [email protected] 345Description: 346 Maximum legal value for the charge_control_limit property. 347 348 Access: Read 349 350 Valid values: Represented in microamps 351 352What: /sys/class/power_supply/<supply_name>/charge_control_start_threshold 353Date: April 2019 354Contact: [email protected] 355Description: 356 Represents a battery percentage level, below which charging will 357 begin. 358 359 Access: Read, Write 360 Valid values: 0 - 100 (percent) 361 362What: /sys/class/power_supply/<supply_name>/charge_control_end_threshold 363Date: April 2019 364Contact: [email protected] 365Description: 366 Represents a battery percentage level, above which charging will 367 stop. 368 369 Access: Read, Write 370 371 Valid values: 0 - 100 (percent) 372 373What: /sys/class/power_supply/<supply_name>/charge_type 374Date: July 2009 375Contact: [email protected] 376Description: 377 Represents the type of charging currently being applied to the 378 battery. "Trickle", "Fast", and "Standard" all mean different 379 charging speeds. "Adaptive" means that the charger uses some 380 algorithm to adjust the charge rate dynamically, without 381 any user configuration required. "Custom" means that the charger 382 uses the charge_control_* properties as configuration for some 383 different algorithm. "Long Life" means the charger reduces its 384 charging rate in order to prolong the battery health. "Bypass" 385 means the charger bypasses the charging path around the 386 integrated converter allowing for a "smart" wall adaptor to 387 perform the power conversion externally. 388 389 Access: Read, Write 390 391 Valid values: 392 "Unknown", "N/A", "Trickle", "Fast", "Standard", 393 "Adaptive", "Custom", "Long Life", "Bypass" 394 395What: /sys/class/power_supply/<supply_name>/charge_term_current 396Date: July 2014 397Contact: [email protected] 398Description: 399 Reports the charging current value which is used to determine 400 when the battery is considered full and charging should end. 401 402 Access: Read 403 404 Valid values: Represented in microamps 405 406What: /sys/class/power_supply/<supply_name>/health 407Date: May 2007 408Contact: [email protected] 409Description: 410 Reports the health of the battery or battery side of charger 411 functionality. 412 413 Access: Read 414 415 Valid values: 416 "Unknown", "Good", "Overheat", "Dead", 417 "Over voltage", "Unspecified failure", "Cold", 418 "Watchdog timer expire", "Safety timer expire", 419 "Over current", "Calibration required", "Warm", 420 "Cool", "Hot", "No battery" 421 422What: /sys/class/power_supply/<supply_name>/precharge_current 423Date: June 2017 424Contact: [email protected] 425Description: 426 Reports the charging current applied during pre-charging phase 427 for a battery charge cycle. 428 429 Access: Read 430 431 Valid values: Represented in microamps 432 433What: /sys/class/power_supply/<supply_name>/present 434Date: May 2007 435Contact: [email protected] 436Description: 437 Reports whether a battery is present or not in the system. 438 439 Access: Read 440 441 Valid values: 442 443 == ======= 444 0: Absent 445 1: Present 446 == ======= 447 448What: /sys/class/power_supply/<supply_name>/status 449Date: May 2007 450Contact: [email protected] 451Description: 452 Represents the charging status of the battery. Normally this 453 is read-only reporting although for some supplies this can be 454 used to enable/disable charging to the battery. 455 456 Access: Read, Write 457 458 Valid values: 459 "Unknown", "Charging", "Discharging", 460 "Not charging", "Full" 461 462What: /sys/class/power_supply/<supply_name>/charge_behaviour 463Date: November 2021 464Contact: [email protected] 465Description: 466 Represents the charging behaviour. 467 468 Access: Read, Write 469 470 Valid values: 471 ================ ==================================== 472 auto: Charge normally, respect thresholds 473 inhibit-charge: Do not charge while AC is attached 474 force-discharge: Force discharge while AC is attached 475 476What: /sys/class/power_supply/<supply_name>/technology 477Date: May 2007 478Contact: [email protected] 479Description: 480 Describes the battery technology supported by the supply. 481 482 Access: Read 483 484 Valid values: 485 "Unknown", "NiMH", "Li-ion", "Li-poly", "LiFe", 486 "NiCd", "LiMn" 487 488 489What: /sys/class/power_supply/<supply_name>/voltage_avg, 490Date: May 2007 491Contact: [email protected] 492Description: 493 Reports an average VBAT voltage reading for the battery, over a 494 fixed period. Normally devices will provide a fixed interval in 495 which they average readings to smooth out the reported value. 496 497 Access: Read 498 499 Valid values: Represented in microvolts 500 501What: /sys/class/power_supply/<supply_name>/cycle_count 502Date: January 2010 503Contact: [email protected] 504Description: 505 Reports the number of full charge + discharge cycles the 506 battery has undergone. 507 508 Access: Read 509 510 Valid values: 511 Integer > 0: representing full cycles 512 Integer = 0: cycle_count info is not available 513 514**USB Properties** 515 516What: /sys/class/power_supply/<supply_name>/input_current_limit 517Date: July 2014 518Contact: [email protected] 519Description: 520 Details the incoming IBUS current limit currently set in the 521 supply. Normally this is configured based on the type of 522 connection made (e.g. A configured SDP should output a maximum 523 of 500mA so the input current limit is set to the same value). 524 Use preferably input_power_limit, and for problems that can be 525 solved using power limit use input_current_limit. 526 527 Access: Read, Write 528 529 Valid values: Represented in microamps 530 531What: /sys/class/power_supply/<supply_name>/input_voltage_limit 532Date: May 2019 533Contact: [email protected] 534Description: 535 This entry configures the incoming VBUS voltage limit currently 536 set in the supply. Normally this is configured based on 537 system-level knowledge or user input (e.g. This is part of the 538 Pixel C's thermal management strategy to effectively limit the 539 input power to 5V when the screen is on to meet Google's skin 540 temperature targets). Note that this feature should not be 541 used for safety critical things. 542 Use preferably input_power_limit, and for problems that can be 543 solved using power limit use input_voltage_limit. 544 545 Access: Read, Write 546 547 Valid values: Represented in microvolts 548 549What: /sys/class/power_supply/<supply_name>/input_power_limit 550Date: May 2019 551Contact: [email protected] 552Description: 553 This entry configures the incoming power limit currently set 554 in the supply. Normally this is configured based on 555 system-level knowledge or user input. Use preferably this 556 feature to limit the incoming power and use current/voltage 557 limit only for problems that can be solved using power limit. 558 559 Access: Read, Write 560 561 Valid values: Represented in microwatts 562 563What: /sys/class/power_supply/<supply_name>/online, 564Date: May 2007 565Contact: [email protected] 566Description: 567 Indicates if VBUS is present for the supply. When the supply is 568 online, and the supply allows it, then it's possible to switch 569 between online states (e.g. Fixed -> Programmable for a PD_PPS 570 USB supply so voltage and current can be controlled). 571 572 Access: Read, Write 573 574 Valid values: 575 576 == ================================================== 577 0: Offline 578 1: Online Fixed - Fixed Voltage Supply 579 2: Online Programmable - Programmable Voltage Supply 580 == ================================================== 581 582What: /sys/class/power_supply/<supply_name>/usb_type 583Date: March 2018 584Contact: [email protected] 585Description: 586 Reports what type of USB connection is currently active for 587 the supply, for example it can show if USB-PD capable source 588 is attached. 589 590 Access: Read-Only 591 592 Valid values: 593 "Unknown", "SDP", "DCP", "CDP", "ACA", "C", "PD", 594 "PD_DRP", "PD_PPS", "BrickID" 595 596**Device Specific Properties** 597 598What: /sys/class/power/ds2760-battery.*/charge_now 599Date: May 2010 600KernelVersion: 2.6.35 601Contact: Daniel Mack <[email protected]> 602Description: 603 This file is writeable and can be used to set the current 604 coloumb counter value inside the battery monitor chip. This 605 is needed for unavoidable corrections of aging batteries. 606 A userspace daemon can monitor the battery charging logic 607 and once the counter drops out of considerable bounds, take 608 appropriate action. 609 610What: /sys/class/power/ds2760-battery.*/charge_full 611Date: May 2010 612KernelVersion: 2.6.35 613Contact: Daniel Mack <[email protected]> 614Description: 615 This file is writeable and can be used to set the assumed 616 battery 'full level'. As batteries age, this value has to be 617 amended over time. 618 619What: /sys/class/power_supply/max14577-charger/device/fast_charge_timer 620Date: October 2014 621KernelVersion: 3.18.0 622Contact: Krzysztof Kozlowski <[email protected]> 623Description: 624 This entry shows and sets the maximum time the max14577 625 charger operates in fast-charge mode. When the timer expires 626 the device will terminate fast-charge mode (charging current 627 will drop to 0 A) and will trigger interrupt. 628 629 Valid values: 630 631 - 5, 6 or 7 (hours), 632 - 0: disabled. 633 634What: /sys/class/power_supply/max77693-charger/device/fast_charge_timer 635Date: January 2015 636KernelVersion: 3.19.0 637Contact: Krzysztof Kozlowski <[email protected]> 638Description: 639 This entry shows and sets the maximum time the max77693 640 charger operates in fast-charge mode. When the timer expires 641 the device will terminate fast-charge mode (charging current 642 will drop to 0 A) and will trigger interrupt. 643 644 Valid values: 645 646 - 4 - 16 (hours), step by 2 (rounded down) 647 - 0: disabled. 648 649What: /sys/class/power_supply/max77693-charger/device/top_off_threshold_current 650Date: January 2015 651KernelVersion: 3.19.0 652Contact: Krzysztof Kozlowski <[email protected]> 653Description: 654 This entry shows and sets the charging current threshold for 655 entering top-off charging mode. When charging current in fast 656 charge mode drops below this value, the charger will trigger 657 interrupt and start top-off charging mode. 658 659 Valid values: 660 661 - 100000 - 200000 (microamps), step by 25000 (rounded down) 662 - 200000 - 350000 (microamps), step by 50000 (rounded down) 663 - 0: disabled. 664 665What: /sys/class/power_supply/max77693-charger/device/top_off_timer 666Date: January 2015 667KernelVersion: 3.19.0 668Contact: Krzysztof Kozlowski <[email protected]> 669Description: 670 This entry shows and sets the maximum time the max77693 671 charger operates in top-off charge mode. When the timer expires 672 the device will terminate top-off charge mode (charging current 673 will drop to 0 A) and will trigger interrupt. 674 675 Valid values: 676 677 - 0 - 70 (minutes), step by 10 (rounded down) 678 679What: /sys/class/power_supply/bq24257-charger/ovp_voltage 680Date: October 2015 681KernelVersion: 4.4.0 682Contact: Andreas Dannenberg <[email protected]> 683Description: 684 This entry configures the overvoltage protection feature of bq24257- 685 type charger devices. This feature protects the device and other 686 components against damage from overvoltage on the input supply. See 687 device datasheet for details. 688 689 Valid values: 690 691 - 6000000, 6500000, 7000000, 8000000, 9000000, 9500000, 10000000, 692 10500000 (all uV) 693 694What: /sys/class/power_supply/bq24257-charger/in_dpm_voltage 695Date: October 2015 696KernelVersion: 4.4.0 697Contact: Andreas Dannenberg <[email protected]> 698Description: 699 This entry configures the input dynamic power path management voltage of 700 bq24257-type charger devices. Once the supply drops to the configured 701 voltage, the input current limit is reduced down to prevent the further 702 drop of the supply. When the IC enters this mode, the charge current is 703 lower than the set value. See device datasheet for details. 704 705 Valid values: 706 707 - 4200000, 4280000, 4360000, 4440000, 4520000, 4600000, 4680000, 708 4760000 (all uV) 709 710What: /sys/class/power_supply/bq24257-charger/high_impedance_enable 711Date: October 2015 712KernelVersion: 4.4.0 713Contact: Andreas Dannenberg <[email protected]> 714Description: 715 This entry allows enabling the high-impedance mode of bq24257-type 716 charger devices. If enabled, it places the charger IC into low power 717 standby mode with the switch mode controller disabled. When disabled, 718 the charger operates normally. See device datasheet for details. 719 720 Valid values: 721 722 - 1: enabled 723 - 0: disabled 724 725What: /sys/class/power_supply/bq24257-charger/sysoff_enable 726Date: October 2015 727KernelVersion: 4.4.0 728Contact: Andreas Dannenberg <[email protected]> 729Description: 730 This entry allows enabling the sysoff mode of bq24257-type charger 731 devices. If enabled and the input is removed, the internal battery FET 732 is turned off in order to reduce the leakage from the BAT pin to less 733 than 1uA. Note that on some devices/systems this disconnects the battery 734 from the system. See device datasheet for details. 735 736 Valid values: 737 738 - 1: enabled 739 - 0: disabled 740 741What: /sys/class/power_supply/<supply_name>/manufacture_year 742Date: January 2020 743Contact: [email protected] 744Description: 745 Reports the year (following Gregorian calendar) when the device has been 746 manufactured. 747 748 Access: Read 749 750 Valid values: Reported as integer 751 752What: /sys/class/power_supply/<supply_name>/manufacture_month 753Date: January 2020 754Contact: [email protected] 755Description: 756 Reports the month when the device has been manufactured. 757 758 Access: Read 759 760 Valid values: 1-12 761 762What: /sys/class/power_supply/<supply_name>/manufacture_day 763Date: January 2020 764Contact: [email protected] 765Description: 766 Reports the day of month when the device has been manufactured. 767 768 Access: Read 769 Valid values: 1-31 770