7ad68e2f97
Clean up the sysfs interface to regulators by only exposing the attributes that can be properly displayed. For example: when a particular regulator method is needed to display the value, only create that attribute when that method exists. This cleaned-up interface is much more comprehensible. Most regulators only support a subset of the possible methods, so often more than half the attributes would be meaningless. Many "not defined" values are no longer necessary. (But handling of out-of-range values still looks a bit iffy.) Documentation is updated to reflect that few of the attributes are *always* present, and to briefly explain why a regulator may not have a given attribute. This adds object code, about a dozen bytes more than was removed by the preceding patch, but saves a bunch of per-regulator data associated with the now-removed attributes. So there's a net reduction in memory footprint. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
312 lines
10 KiB
Text
312 lines
10 KiB
Text
What: /sys/class/regulator/.../state
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
state. This reports the regulator enable status, for
|
|
regulators which can report that value.
|
|
|
|
This will be one of the following strings:
|
|
|
|
'enabled'
|
|
'disabled'
|
|
'unknown'
|
|
|
|
'enabled' means the regulator output is ON and is supplying
|
|
power to the system.
|
|
|
|
'disabled' means the regulator output is OFF and is not
|
|
supplying power to the system..
|
|
|
|
'unknown' means software cannot determine the state, or
|
|
the reported state is invalid.
|
|
|
|
NOTE: this field can be used in conjunction with microvolts
|
|
and microamps to determine regulator output levels.
|
|
|
|
|
|
What: /sys/class/regulator/.../type
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Each regulator directory will contain a field called
|
|
type. This holds the regulator type.
|
|
|
|
This will be one of the following strings:
|
|
|
|
'voltage'
|
|
'current'
|
|
'unknown'
|
|
|
|
'voltage' means the regulator output voltage can be controlled
|
|
by software.
|
|
|
|
'current' means the regulator output current limit can be
|
|
controlled by software.
|
|
|
|
'unknown' means software cannot control either voltage or
|
|
current limit.
|
|
|
|
|
|
What: /sys/class/regulator/.../microvolts
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
microvolts. This holds the regulator output voltage setting
|
|
measured in microvolts (i.e. E-6 Volts), for regulators
|
|
which can report that voltage.
|
|
|
|
NOTE: This value should not be used to determine the regulator
|
|
output voltage level as this value is the same regardless of
|
|
whether the regulator is enabled or disabled.
|
|
|
|
|
|
What: /sys/class/regulator/.../microamps
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
microamps. This holds the regulator output current limit
|
|
setting measured in microamps (i.e. E-6 Amps), for regulators
|
|
which can report that current.
|
|
|
|
NOTE: This value should not be used to determine the regulator
|
|
output current level as this value is the same regardless of
|
|
whether the regulator is enabled or disabled.
|
|
|
|
|
|
What: /sys/class/regulator/.../opmode
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
opmode. This holds the current regulator operating mode,
|
|
for regulators which can report it.
|
|
|
|
The opmode value can be one of the following strings:
|
|
|
|
'fast'
|
|
'normal'
|
|
'idle'
|
|
'standby'
|
|
'unknown'
|
|
|
|
The modes are described in include/linux/regulator/consumer.h
|
|
|
|
NOTE: This value should not be used to determine the regulator
|
|
output operating mode as this value is the same regardless of
|
|
whether the regulator is enabled or disabled.
|
|
|
|
|
|
What: /sys/class/regulator/.../min_microvolts
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
min_microvolts. This holds the minimum safe working regulator
|
|
output voltage setting for this domain measured in microvolts,
|
|
for regulators which support voltage constraints.
|
|
|
|
NOTE: this will return the string 'constraint not defined' if
|
|
the power domain has no min microvolts constraint defined by
|
|
platform code.
|
|
|
|
|
|
What: /sys/class/regulator/.../max_microvolts
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
max_microvolts. This holds the maximum safe working regulator
|
|
output voltage setting for this domain measured in microvolts,
|
|
for regulators which support voltage constraints.
|
|
|
|
NOTE: this will return the string 'constraint not defined' if
|
|
the power domain has no max microvolts constraint defined by
|
|
platform code.
|
|
|
|
|
|
What: /sys/class/regulator/.../min_microamps
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
min_microamps. This holds the minimum safe working regulator
|
|
output current limit setting for this domain measured in
|
|
microamps, for regulators which support current constraints.
|
|
|
|
NOTE: this will return the string 'constraint not defined' if
|
|
the power domain has no min microamps constraint defined by
|
|
platform code.
|
|
|
|
|
|
What: /sys/class/regulator/.../max_microamps
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
max_microamps. This holds the maximum safe working regulator
|
|
output current limit setting for this domain measured in
|
|
microamps, for regulators which support current constraints.
|
|
|
|
NOTE: this will return the string 'constraint not defined' if
|
|
the power domain has no max microamps constraint defined by
|
|
platform code.
|
|
|
|
|
|
What: /sys/class/regulator/.../name
|
|
Date: October 2008
|
|
KernelVersion: 2.6.28
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Each regulator directory will contain a field called
|
|
name. This holds a string identifying the regulator for
|
|
display purposes.
|
|
|
|
NOTE: this will be empty if no suitable name is provided
|
|
by platform or regulator drivers.
|
|
|
|
|
|
What: /sys/class/regulator/.../num_users
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Each regulator directory will contain a field called
|
|
num_users. This holds the number of consumer devices that
|
|
have called regulator_enable() on this regulator.
|
|
|
|
|
|
What: /sys/class/regulator/.../requested_microamps
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
requested_microamps. This holds the total requested load
|
|
current in microamps for this regulator from all its consumer
|
|
devices.
|
|
|
|
|
|
What: /sys/class/regulator/.../parent
|
|
Date: April 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a link called parent.
|
|
This points to the parent or supply regulator if one exists.
|
|
|
|
What: /sys/class/regulator/.../suspend_mem_microvolts
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_mem_microvolts. This holds the regulator output
|
|
voltage setting for this domain measured in microvolts when
|
|
the system is suspended to memory, for voltage regulators
|
|
implementing suspend voltage configuration constraints.
|
|
|
|
What: /sys/class/regulator/.../suspend_disk_microvolts
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_disk_microvolts. This holds the regulator output
|
|
voltage setting for this domain measured in microvolts when
|
|
the system is suspended to disk, for voltage regulators
|
|
implementing suspend voltage configuration constraints.
|
|
|
|
What: /sys/class/regulator/.../suspend_standby_microvolts
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_standby_microvolts. This holds the regulator output
|
|
voltage setting for this domain measured in microvolts when
|
|
the system is suspended to standby, for voltage regulators
|
|
implementing suspend voltage configuration constraints.
|
|
|
|
What: /sys/class/regulator/.../suspend_mem_mode
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_mem_mode. This holds the regulator operating mode
|
|
setting for this domain when the system is suspended to
|
|
memory, for regulators implementing suspend mode
|
|
configuration constraints.
|
|
|
|
What: /sys/class/regulator/.../suspend_disk_mode
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_disk_mode. This holds the regulator operating mode
|
|
setting for this domain when the system is suspended to disk,
|
|
for regulators implementing suspend mode configuration
|
|
constraints.
|
|
|
|
What: /sys/class/regulator/.../suspend_standby_mode
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_standby_mode. This holds the regulator operating mode
|
|
setting for this domain when the system is suspended to
|
|
standby, for regulators implementing suspend mode
|
|
configuration constraints.
|
|
|
|
What: /sys/class/regulator/.../suspend_mem_state
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_mem_state. This holds the regulator operating state
|
|
when suspended to memory, for regulators implementing suspend
|
|
configuration constraints.
|
|
|
|
This will be one of the same strings reported by
|
|
the "state" attribute.
|
|
|
|
What: /sys/class/regulator/.../suspend_disk_state
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_disk_state. This holds the regulator operating state
|
|
when suspended to disk, for regulators implementing
|
|
suspend configuration constraints.
|
|
|
|
This will be one of the same strings reported by
|
|
the "state" attribute.
|
|
|
|
What: /sys/class/regulator/.../suspend_standby_state
|
|
Date: May 2008
|
|
KernelVersion: 2.6.26
|
|
Contact: Liam Girdwood <lrg@slimlogic.co.uk>
|
|
Description:
|
|
Some regulator directories will contain a field called
|
|
suspend_standby_state. This holds the regulator operating
|
|
state when suspended to standby, for regulators implementing
|
|
suspend configuration constraints.
|
|
|
|
This will be one of the same strings reported by
|
|
the "state" attribute.
|