55 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
Kernel driver power_meter
 | 
						|
=========================
 | 
						|
 | 
						|
This driver talks to ACPI 4.0 power meters.
 | 
						|
 | 
						|
Supported systems:
 | 
						|
 | 
						|
  * Any recent system with ACPI 4.0.
 | 
						|
 | 
						|
    Prefix: 'power_meter'
 | 
						|
 | 
						|
    Datasheet: https://uefi.org/specifications, section 10.4.
 | 
						|
 | 
						|
Author: Darrick J. Wong
 | 
						|
 | 
						|
Description
 | 
						|
-----------
 | 
						|
 | 
						|
This driver implements sensor reading support for the power meters exposed in
 | 
						|
the ACPI 4.0 spec (Chapter 10.4).  These devices have a simple set of
 | 
						|
features--a power meter that returns average power use over a configurable
 | 
						|
interval, an optional capping mechanism, and a couple of trip points.  The
 | 
						|
sysfs interface conforms with the specification outlined in the "Power" section
 | 
						|
of Documentation/hwmon/sysfs-interface.rst.
 | 
						|
 | 
						|
Special Features
 | 
						|
----------------
 | 
						|
 | 
						|
The `power[1-*]_is_battery` knob indicates if the power supply is a battery.
 | 
						|
Both `power[1-*]_average_{min,max}` must be set before the trip points will work.
 | 
						|
When both of them are set, an ACPI event will be broadcast on the ACPI netlink
 | 
						|
socket and a poll notification will be sent to the appropriate
 | 
						|
`power[1-*]_average` sysfs file.
 | 
						|
 | 
						|
The `power[1-*]_{model_number, serial_number, oem_info}` fields display
 | 
						|
arbitrary strings that ACPI provides with the meter.  The measures/ directory
 | 
						|
contains symlinks to the devices that this meter measures.
 | 
						|
 | 
						|
Some computers have the ability to enforce a power cap in hardware.  If this is
 | 
						|
the case, the `power[1-*]_cap` and related sysfs files will appear.  When the
 | 
						|
average power consumption exceeds the cap, an ACPI event will be broadcast on
 | 
						|
the netlink event socket and a poll notification will be sent to the
 | 
						|
appropriate `power[1-*]_alarm` file to indicate that capping has begun, and the
 | 
						|
hardware has taken action to reduce power consumption.  Most likely this will
 | 
						|
result in reduced performance.
 | 
						|
 | 
						|
There are a few other ACPI notifications that can be sent by the firmware.  In
 | 
						|
all cases the ACPI event will be broadcast on the ACPI netlink event socket as
 | 
						|
well as sent as a poll notification to a sysfs file.  The events are as
 | 
						|
follows:
 | 
						|
 | 
						|
`power[1-*]_cap` will be notified if the firmware changes the power cap.
 | 
						|
`power[1-*]_interval` will be notified if the firmware changes the averaging
 | 
						|
interval.
 |