Skip to content

Commit

Permalink
Documentation/ABI: update cpuidle sysfs documentation
Browse files Browse the repository at this point in the history
Update cpuidle documentation using git logs and existing documentation
in Documentation/cpuidle/sysfs.txt. This might be useful for scripting
and tracking changes in the ABI.

Signed-off-by: Aishwarya Pant <aishpant@gmail.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  • Loading branch information
Aishwarya Pant authored and Rafael J. Wysocki committed Feb 12, 2018
1 parent f859422 commit b6d8ef8
Showing 1 changed file with 75 additions and 2 deletions.
77 changes: 75 additions & 2 deletions Documentation/ABI/testing/sysfs-devices-system-cpu
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,8 @@ Description: CPU topology files that describe a logical CPU's relationship

What: /sys/devices/system/cpu/cpuidle/current_driver
/sys/devices/system/cpu/cpuidle/current_governer_ro
/sys/devices/system/cpu/cpuidle/available_governors
/sys/devices/system/cpu/cpuidle/current_governor
Date: September 2007
Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
Description: Discover cpuidle policy and mechanism
Expand All @@ -119,13 +121,84 @@ Description: Discover cpuidle policy and mechanism
Idle policy (governor) is differentiated from idle mechanism
(driver)

current_driver: displays current idle mechanism
current_driver: (RO) displays current idle mechanism

current_governor_ro: displays current idle policy
current_governor_ro: (RO) displays current idle policy

With the cpuidle_sysfs_switch boot option enabled (meant for
developer testing), the following three attributes are visible
instead:

current_driver: same as described above

available_governors: (RO) displays a space separated list of
available governors

current_governor: (RW) displays current idle policy. Users can
switch the governor at runtime by writing to this file.

See files in Documentation/cpuidle/ for more information.


What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/name
/sys/devices/system/cpu/cpuX/cpuidle/stateN/latency
/sys/devices/system/cpu/cpuX/cpuidle/stateN/power
/sys/devices/system/cpu/cpuX/cpuidle/stateN/time
/sys/devices/system/cpu/cpuX/cpuidle/stateN/usage
Date: September 2007
KernelVersion: v2.6.24
Contact: Linux power management list <linux-pm@vger.kernel.org>
Description:
The directory /sys/devices/system/cpu/cpuX/cpuidle contains per
logical CPU specific cpuidle information for each online cpu X.
The processor idle states which are available for use have the
following attributes:

name: (RO) Name of the idle state (string).

latency: (RO) The latency to exit out of this idle state (in
microseconds).

power: (RO) The power consumed while in this idle state (in
milliwatts).

time: (RO) The total time spent in this idle state (in microseconds).

usage: (RO) Number of times this state was entered (a count).


What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/desc
Date: February 2008
KernelVersion: v2.6.25
Contact: Linux power management list <linux-pm@vger.kernel.org>
Description:
(RO) A small description about the idle state (string).


What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/disable
Date: March 2012
KernelVersion: v3.10
Contact: Linux power management list <linux-pm@vger.kernel.org>
Description:
(RW) Option to disable this idle state (bool). The behavior and
the effect of the disable variable depends on the implementation
of a particular governor. In the ladder governor, for example,
it is not coherent, i.e. if one is disabling a light state, then
all deeper states are disabled as well, but the disable variable
does not reflect it. Likewise, if one enables a deep state but a
lighter state still is disabled, then this has no effect.


What: /sys/devices/system/cpu/cpuX/cpuidle/stateN/residency
Date: March 2014
KernelVersion: v3.15
Contact: Linux power management list <linux-pm@vger.kernel.org>
Description:
(RO) Display the target residency i.e. the minimum amount of
time (in microseconds) this cpu should spend in this idle state
to make the transition worth the effort.


What: /sys/devices/system/cpu/cpu#/cpufreq/*
Date: pre-git history
Contact: linux-pm@vger.kernel.org
Expand Down

0 comments on commit b6d8ef8

Please sign in to comment.