xref: /linux/Documentation/ABI/testing/sysfs-class-power (revision 4dd10fbbeb9c33709edc89916e19c03c780a0751)
1**General Properties**
2
3What:		/sys/class/power_supply/<supply_name>/manufacturer
4Date:		May 2007
5Contact:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
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:	linux-pm@vger.kernel.org
365Description:
366		Represents a battery percentage level, above which charging will
367		stop. Not all hardware is capable of setting this to an arbitrary
368		value, instead providing different minimum, maximum, or step
369		values. Drivers will round written values to the nearest supported
370		value. Reading back the value will show the actual threshold set
371		by the driver. For hardware that only supports a single fixed
372		value, use charge_types with a value of "Long Life" (vs "Standard")
373		instead'
374
375		Access: Read, Write
376
377		Valid values: 0 - 100 (percent)
378
379What:		/sys/class/power_supply/<supply_name>/charge_type
380Date:		July 2009
381Contact:	linux-pm@vger.kernel.org
382Description:
383		Select the charging algorithm to use for a battery.
384
385		Standard:
386			Fully charge the battery at a moderate rate.
387		Fast:
388			Quickly charge the battery using fast-charge
389			technology. This is typically harder on the battery
390			than standard charging and may lower its lifespan.
391		Trickle:
392			Users who primarily operate the system while
393			plugged into an external power source can extend
394			battery life with this mode. Vendor tooling may
395			call this "Primarily AC Use".
396		Adaptive:
397			Automatically optimize battery charge rate based
398			on typical usage pattern.
399		Custom:
400			Use the charge_control_* properties to determine
401			when to start and stop charging. Advanced users
402			can use this to drastically extend battery life.
403		Long Life:
404			The charger firmware reduces its charging rate and/or
405			maximum charging percentage to a hardware specified
406			fixed limit in order to prolong the battery health.
407		Bypass:
408			The charger bypasses the charging path around the
409			integrated converter allowing for a "smart" wall
410			adaptor to perform the power conversion externally.
411
412		Access: Read, Write
413
414		Reading this returns the current active value, e.g. 'Standard'.
415		Check charge_types to get the values supported by the battery.
416
417		Valid values:
418			      "Unknown", "N/A", "Trickle", "Fast", "Standard",
419			      "Adaptive", "Custom", "Long Life", "Bypass"
420
421What:		/sys/class/power_supply/<supply_name>/charge_types
422Date:		December 2024
423Contact:	linux-pm@vger.kernel.org
424Description:
425		Identical to charge_type but reading returns a list of supported
426		charge-types with the currently active type surrounded by square
427		brackets, e.g.: "Fast [Standard] Long_Life".
428
429		power_supply class devices may support both charge_type and
430		charge_types for backward compatibility. In this case both will
431		always have the same active value and the active value can be
432		changed by writing either property.
433
434		Note charge-types which contain a space such as "Long Life" will
435		have the space replaced by a '_' resulting in e.g. "Long_Life".
436		When writing charge-types both variants are accepted.
437
438What:		/sys/class/power_supply/<supply_name>/charge_term_current
439Date:		July 2014
440Contact:	linux-pm@vger.kernel.org
441Description:
442		Reports the charging current value which is used to determine
443		when the battery is considered full and charging should end.
444
445		Access: Read
446
447		Valid values: Represented in microamps
448
449What:		/sys/class/power_supply/<supply_name>/health
450Date:		May 2007
451Contact:	linux-pm@vger.kernel.org
452Description:
453		Reports the health of the battery or battery side of charger
454		functionality.
455
456		Access: Read
457
458		Valid values:
459			      "Unknown", "Good", "Overheat", "Dead",
460			      "Over voltage", "Under voltage", "Unspecified failure", "Cold",
461			      "Watchdog timer expire", "Safety timer expire",
462			      "Over current", "Calibration required", "Warm",
463			      "Cool", "Hot", "No battery", "Blown fuse", "Cell imbalance"
464
465What:		/sys/class/power_supply/<supply_name>/precharge_current
466Date:		June 2017
467Contact:	linux-pm@vger.kernel.org
468Description:
469		Reports the charging current applied during pre-charging phase
470		for a battery charge cycle.
471
472		Access: Read
473
474		Valid values: Represented in microamps
475
476What:		/sys/class/power_supply/<supply_name>/present
477Date:		May 2007
478Contact:	linux-pm@vger.kernel.org
479Description:
480		Reports whether a battery is present or not in the system. If the
481		property does not exist, the battery is considered to be present.
482
483		Access: Read
484
485		Valid values:
486
487			== =======
488			0: Absent
489			1: Present
490			== =======
491
492What:		/sys/class/power_supply/<supply_name>/status
493Date:		May 2007
494Contact:	linux-pm@vger.kernel.org
495Description:
496		Represents the charging status of the battery. Normally this
497		is read-only reporting although for some supplies this can be
498		used to enable/disable charging to the battery.
499
500		Access: Read, Write
501
502		Valid values:
503			      "Unknown", "Charging", "Discharging",
504			      "Not charging", "Full"
505
506What:		/sys/class/power_supply/<supply_name>/charge_behaviour
507Date:		November 2021
508Contact:	linux-pm@vger.kernel.org
509Description:
510		Represents the charging behaviour.
511
512		Access: Read, Write
513
514		Valid values:
515			===================== ========================================
516			auto:                 Charge normally, respect thresholds
517			inhibit-charge:       Do not charge while AC is attached
518			inhibit-charge-awake: inhibit-charge only when device is awake
519			force-discharge:      Force discharge while AC is attached
520			===================== ========================================
521
522What:		/sys/class/power_supply/<supply_name>/technology
523Date:		May 2007
524Contact:	linux-pm@vger.kernel.org
525Description:
526		Describes the battery technology supported by the supply.
527
528		Access: Read
529
530		Valid values:
531			      "Unknown", "NiMH", "Li-ion", "Li-poly", "LiFe",
532			      "NiCd", "LiMn", "PbAc", "NiZn", "RAM", "ZnAr"
533
534
535What:		/sys/class/power_supply/<supply_name>/voltage_avg,
536Date:		May 2007
537Contact:	linux-pm@vger.kernel.org
538Description:
539		Reports an average VBAT voltage reading for the battery, over a
540		fixed period. Normally devices will provide a fixed interval in
541		which they average readings to smooth out the reported value.
542
543		Access: Read
544
545		Valid values: Represented in microvolts
546
547What:		/sys/class/power_supply/<supply_name>/cycle_count
548Date:		January 2010
549Contact:	linux-pm@vger.kernel.org
550Description:
551		Reports the number of full charge + discharge cycles the
552		battery has undergone.
553
554		Access: Read
555
556		Valid values:
557			Integer > 0: representing full cycles
558			Integer = 0: cycle_count info is not available
559
560What:		/sys/class/power_supply/<supply_name>/internal_resistance
561Date:		August 2025
562Contact:	linux-arm-msm@vger.kernel.org
563Description:
564		Represent the battery's internal resistance, often referred
565		to as Equivalent Series Resistance (ESR). It is a dynamic
566		parameter that reflects the opposition to current flow within
567		the cell. It is not a fixed value but varies significantly
568		based on several operational conditions, including battery
569		state of charge (SoC), temperature, and whether the battery
570		is in a charging or discharging state.
571
572		Access: Read
573
574		Valid values: Represented in microohms
575
576What:		/sys/class/power_supply/<supply_name>/state_of_health
577Date:		August 2025
578Contact:	linux-arm-msm@vger.kernel.org
579Description:
580		The state_of_health parameter quantifies the overall condition
581		of a battery as a percentage, reflecting its ability to deliver
582		rated performance relative to its original specifications. It is
583		dynamically computed using a combination of learned capacity
584		and impedance-based degradation indicators, both of which evolve
585		over the battery's lifecycle.
586		Note that the exact algorithms are kept secret by most battery
587		vendors and the value from different battery vendors cannot be
588		compared with each other as there is no vendor-agnostic definition
589		of "performance". Also this usually cannot be used for any
590		calculations (i.e. this is not the factor between charge_full and
591		charge_full_design).
592
593		Access: Read
594
595		Valid values: 0 - 100 (percent)
596
597What:		/sys/class/power_supply/<supply_name>/load_switch
598Date:		June 2026
599Contact:	linux-pm@vger.kernel.org
600Description:
601		Devices can control the connection from power to system load.
602		For example, with a field-effect transistor between a battery
603		and the system load (BATFET). This entry controls such switch.
604		The obvious states are "on" and "off", i.e. there is a
605		connection or not, respectively. However, many devices can also
606		enter special modes such as "low-power", "shipping" or "deep
607		sleep". In these modes the switch is usually off and the
608		quiescent current quite low.
609
610		Access: Read, Write
611
612		Valid values:
613
614		============= ==================================
615		"Unknown" (0) Unknown mode.
616		"On"      (1) Power is connected to the load.
617		"Off"     (2) Power is disconnected to the load.
618		"Standby" (3) Low-power mode.
619		"Ship"    (4) Ship mode.
620		============= ==================================
621
622**USB Properties**
623
624What:		/sys/class/power_supply/<supply_name>/input_current_limit
625Date:		July 2014
626Contact:	linux-pm@vger.kernel.org
627Description:
628		Details the incoming IBUS current limit currently set in the
629		supply. Normally this is configured based on the type of
630		connection made (e.g. A configured SDP should output a maximum
631		of 500mA so the input current limit is set to the same value).
632		Use preferably input_power_limit, and for problems that can not
633		be solved using power limit use input_current_limit.
634
635		Access: Read, Write
636
637		Valid values: Represented in microamps
638
639What:		/sys/class/power_supply/<supply_name>/input_voltage_limit
640Date:		May 2019
641Contact:	linux-pm@vger.kernel.org
642Description:
643		This entry configures the incoming VBUS voltage limit currently
644		set in the supply. Normally this is configured based on
645		system-level knowledge or user input (e.g. This is part of the
646		Pixel C's thermal management strategy to effectively limit the
647		input power to 5V when the screen is on to meet Google's skin
648		temperature targets). Note that this feature should not be
649		used for safety critical things.
650		Use preferably input_power_limit, and for problems that can not
651		be solved using power limit use input_voltage_limit.
652
653		Access: Read, Write
654
655		Valid values: Represented in microvolts
656
657What:		/sys/class/power_supply/<supply_name>/input_power_limit
658Date:		May 2019
659Contact:	linux-pm@vger.kernel.org
660Description:
661		This entry configures the incoming power limit currently set
662		in the supply. Normally this is configured based on
663		system-level knowledge or user input. Use preferably this
664		feature to limit the incoming power and use current/voltage
665		limit only for problems that can not be solved using power limit.
666
667		Access: Read, Write
668
669		Valid values: Represented in microwatts
670
671What:		/sys/class/power_supply/<supply_name>/online,
672Date:		May 2007
673Contact:	linux-pm@vger.kernel.org
674Description:
675		Indicates if VBUS is present for the supply. When the supply is
676		online, and the supply allows it, then it's possible to switch
677		between online states (e.g. Fixed -> Programmable for a PD_PPS
678		USB supply so voltage and current can be controlled).
679
680		Access: Read, Write
681
682		Valid values:
683
684			== ==================================================
685			0: Offline
686			1: Online Fixed - Fixed Voltage Supply
687			2: Online Programmable - Programmable Voltage Supply
688			== ==================================================
689
690What: 		/sys/class/power_supply/<supply_name>/usb_type
691Date:		March 2018
692Contact:	linux-pm@vger.kernel.org
693Description:
694		Reports what type of USB connection is currently active for
695		the supply, for example it can show if USB-PD capable source
696		is attached.
697
698		Access: For power-supplies which consume USB power such
699		as battery charger chips, this indicates the type of
700		the connected USB power source and is Read-Only.
701
702		For power-supplies which act as a USB power-source such as
703		e.g. the UCS1002 USB Port Power Controller this is writable.
704
705		Valid values:
706			      "Unknown", "SDP", "DCP", "CDP", "ACA", "C", "PD",
707			      "PD_DRP", "PD_PPS", "BrickID", "PD_SPR_AVS",
708			      "PD_PPS_SPR_AVS"
709
710**Device Specific Properties**
711
712What:		/sys/class/power/ds2760-battery.*/charge_now
713Date:		May 2010
714KernelVersion:	2.6.35
715Contact:	Daniel Mack <daniel@caiaq.de>
716Description:
717		This file is writeable and can be used to set the current
718		coloumb counter value inside the battery monitor chip. This
719		is needed for unavoidable corrections of aging batteries.
720		A userspace daemon can monitor the battery charging logic
721		and once the counter drops out of considerable bounds, take
722		appropriate action.
723
724What:		/sys/class/power/ds2760-battery.*/charge_full
725Date:		May 2010
726KernelVersion:	2.6.35
727Contact:	Daniel Mack <daniel@caiaq.de>
728Description:
729		This file is writeable and can be used to set the assumed
730		battery 'full level'. As batteries age, this value has to be
731		amended over time.
732
733What:		/sys/class/power_supply/max14577-charger/device/fast_charge_timer
734Date:		October 2014
735KernelVersion:	3.18.0
736Contact:	Krzysztof Kozlowski <krzk@kernel.org>
737Description:
738		This entry shows and sets the maximum time the max14577
739		charger operates in fast-charge mode. When the timer expires
740		the device will terminate fast-charge mode (charging current
741		will drop to 0 A) and will trigger interrupt.
742
743		Valid values:
744
745		- 5, 6 or 7 (hours),
746		- 0: disabled.
747
748What:		/sys/class/power_supply/max77693-charger/device/fast_charge_timer
749Date:		January 2015
750KernelVersion:	3.19.0
751Contact:	Krzysztof Kozlowski <krzk@kernel.org>
752Description:
753		This entry shows and sets the maximum time the max77693
754		charger operates in fast-charge mode. When the timer expires
755		the device will terminate fast-charge mode (charging current
756		will drop to 0 A) and will trigger interrupt.
757
758		Valid values:
759
760		- 4 - 16 (hours), step by 2 (rounded down)
761		- 0: disabled.
762
763What:		/sys/class/power_supply/max77693-charger/device/top_off_threshold_current
764Date:		January 2015
765KernelVersion:	3.19.0
766Contact:	Krzysztof Kozlowski <krzk@kernel.org>
767Description:
768		This entry shows and sets the charging current threshold for
769		entering top-off charging mode. When charging current in fast
770		charge mode drops below this value, the charger will trigger
771		interrupt and start top-off charging mode.
772
773		Valid values:
774
775		- 100000 - 200000 (microamps), step by 25000 (rounded down)
776		- 200000 - 350000 (microamps), step by 50000 (rounded down)
777		- 0: disabled.
778
779What:		/sys/class/power_supply/max77693-charger/device/top_off_timer
780Date:		January 2015
781KernelVersion:	3.19.0
782Contact:	Krzysztof Kozlowski <krzk@kernel.org>
783Description:
784		This entry shows and sets the maximum time the max77693
785		charger operates in top-off charge mode. When the timer expires
786		the device will terminate top-off charge mode (charging current
787		will drop to 0 A) and will trigger interrupt.
788
789		Valid values:
790
791		- 0 - 70 (minutes), step by 10 (rounded down)
792
793What:		/sys/class/power_supply/bq24257-charger/ovp_voltage
794Date:		October 2015
795KernelVersion:	4.4.0
796Contact:	Andreas Dannenberg <dannenberg@ti.com>
797Description:
798		This entry configures the overvoltage protection feature of bq24257-
799		type charger devices. This feature protects the device and other
800		components against damage from overvoltage on the input supply. See
801		device datasheet for details.
802
803		Valid values:
804
805		- 6000000, 6500000, 7000000, 8000000, 9000000, 9500000, 10000000,
806		  10500000 (all uV)
807
808What:		/sys/class/power_supply/bq24257-charger/in_dpm_voltage
809Date:		October 2015
810KernelVersion:	4.4.0
811Contact:	Andreas Dannenberg <dannenberg@ti.com>
812Description:
813		This entry configures the input dynamic power path management voltage of
814		bq24257-type charger devices. Once the supply drops to the configured
815		voltage, the input current limit is reduced down to prevent the further
816		drop of the supply. When the IC enters this mode, the charge current is
817		lower than the set value. See device datasheet for details.
818
819		Valid values:
820
821		- 4200000, 4280000, 4360000, 4440000, 4520000, 4600000, 4680000,
822		  4760000 (all uV)
823
824What:		/sys/class/power_supply/bq24257-charger/high_impedance_enable
825Date:		October 2015
826KernelVersion:	4.4.0
827Contact:	Andreas Dannenberg <dannenberg@ti.com>
828Description:
829		This entry allows enabling the high-impedance mode of bq24257-type
830		charger devices. If enabled, it places the charger IC into low power
831		standby mode with the switch mode controller disabled. When disabled,
832		the charger operates normally. See device datasheet for details.
833
834		Valid values:
835
836		- 1: enabled
837		- 0: disabled
838
839What:		/sys/class/power_supply/bq24257-charger/sysoff_enable
840Date:		October 2015
841KernelVersion:	4.4.0
842Contact:	Andreas Dannenberg <dannenberg@ti.com>
843Description:
844		This entry allows enabling the sysoff mode of bq24257-type charger
845		devices. If enabled and the input is removed, the internal battery FET
846		is turned off in order to reduce the leakage from the BAT pin to less
847		than 1uA. Note that on some devices/systems this disconnects the battery
848		from the system. See device datasheet for details.
849
850		Valid values:
851
852		- 1: enabled
853		- 0: disabled
854
855What:		/sys/class/power_supply/<supply_name>/manufacture_year
856Date:		January 2020
857Contact:	linux-pm@vger.kernel.org
858Description:
859		Reports the year (following Gregorian calendar) when the device has been
860		manufactured.
861
862		Access: Read
863
864		Valid values: Reported as integer
865
866What:		/sys/class/power_supply/<supply_name>/manufacture_month
867Date:		January 2020
868Contact:	linux-pm@vger.kernel.org
869Description:
870		Reports the month when the device has been manufactured.
871
872		Access: Read
873
874		Valid values: 1-12
875
876What:		/sys/class/power_supply/<supply_name>/manufacture_day
877Date:		January 2020
878Contact:	linux-pm@vger.kernel.org
879Description:
880		Reports the day of month when the device has been manufactured.
881
882		Access: Read
883		Valid values: 1-31
884
885What:		/sys/class/power_supply/<supply_name>/extensions/<extension_name>
886Date:		March 2025
887Contact:	linux-pm@vger.kernel.org
888Description:
889		Reports the extensions registered to the power supply.
890		Each entry is a link to the device which registered the extension.
891
892		Access: Read
893
894What:		/sys/class/power_supply/max8971-charger/fast_charge_timer
895Date:		May 2025
896KernelVersion:	6.15.0
897Contact:	Svyatoslav Ryhel <clamor95@gmail.com>
898Description:
899		This entry shows and sets the maximum time the max8971
900		charger operates in fast-charge mode. When the timer expires
901		the device will terminate fast-charge mode (charging current
902		will drop to 0 A) and will trigger interrupt.
903
904		Valid values:
905
906		- 4 - 10 (hours), step by 1
907		- 0: disabled.
908
909What:		/sys/class/power_supply/max8971-charger/top_off_threshold_current
910Date:		May 2025
911KernelVersion:	6.15.0
912Contact:	Svyatoslav Ryhel <clamor95@gmail.com>
913Description:
914		This entry shows and sets the charging current threshold for
915		entering top-off charging mode. When charging current in fast
916		charge mode drops below this value, the charger will trigger
917		interrupt and start top-off charging mode.
918
919		Valid values:
920
921		- 50000 - 200000 (microamps), step by 50000 (rounded down)
922
923What:		/sys/class/power_supply/max8971-charger/top_off_timer
924Date:		May 2025
925KernelVersion:	6.15.0
926Contact:	Svyatoslav Ryhel <clamor95@gmail.com>
927Description:
928		This entry shows and sets the maximum time the max8971
929		charger operates in top-off charge mode. When the timer expires
930		the device will terminate top-off charge mode (charging current
931		will drop to 0 A) and will trigger interrupt.
932
933		Valid values:
934
935		- 0 - 70 (minutes), step by 10 (rounded down)
936