struct_regulation_constraints(9) [centos man page]
STRUCT REGULATION_CO(9) API reference STRUCT REGULATION_CO(9)NAME
struct_regulation_constraints - regulator operating constraints.
SYNOPSIS
struct regulation_constraints {
const char * name;
int min_uV;
int max_uV;
int uV_offset;
int min_uA;
int max_uA;
unsigned int valid_modes_mask;
unsigned int valid_ops_mask;
int input_uV;
struct regulator_state state_disk;
struct regulator_state state_mem;
struct regulator_state state_standby;
suspend_state_t initial_state;
unsigned int initial_mode;
unsigned int ramp_delay;
unsigned always_on:1;
unsigned boot_on:1;
unsigned apply_uV:1;
};
MEMBERS
name
Descriptive name for the constraints, used for display purposes.
min_uV
Smallest voltage consumers may set.
max_uV
Largest voltage consumers may set.
uV_offset
Offset applied to voltages from consumer to compensate for voltage drops.
min_uA
Smallest current consumers may set.
max_uA
Largest current consumers may set.
valid_modes_mask
Mask of modes which may be configured by consumers.
valid_ops_mask
Operations which may be performed by consumers.
input_uV
Input voltage for regulator when supplied by another regulator.
state_disk
State for regulator when system is suspended in disk mode.
state_mem
State for regulator when system is suspended in mem mode.
state_standby
State for regulator when system is suspended in standby mode.
initial_state
Suspend state to set by default.
initial_mode
Mode to set at startup.
ramp_delay
Time to settle down after voltage change (unit: uV/us)
always_on
Set if the regulator should never be disabled.
boot_on
Set if the regulator is enabled when the system is initially started. If the regulator is not enabled by the hardware or bootloader
then it will be enabled when the constraints are applied.
apply_uV
Apply the voltage constraint when initialising.
DESCRIPTION
This struct describes regulator and board/machine specific constraints.
AUTHORS
Liam Girdwood <lrg@slimlogic.co.uk>
Author.
Mark Brown <broonie@opensource.wolfsonmicro.com>
Wolfson Microelectronics,
Author.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 STRUCT REGULATION_CO(9)
Check Out this Related Man Page
STRUCT REGULATOR_OPS(9) API reference STRUCT REGULATOR_OPS(9)NAME
struct_regulator_ops - regulator operations.
SYNOPSIS
struct regulator_ops {
int (* list_voltage) (struct regulator_dev *, unsigned selector);
int (* set_voltage) (struct regulator_dev *, int min_uV, int max_uV,unsigned *selector);
int (* map_voltage) (struct regulator_dev *, int min_uV, int max_uV);
int (* set_voltage_sel) (struct regulator_dev *, unsigned selector);
int (* get_voltage) (struct regulator_dev *);
int (* get_voltage_sel) (struct regulator_dev *);
int (* set_current_limit) (struct regulator_dev *,int min_uA, int max_uA);
int (* get_current_limit) (struct regulator_dev *);
int (* enable) (struct regulator_dev *);
int (* disable) (struct regulator_dev *);
int (* is_enabled) (struct regulator_dev *);
int (* set_mode) (struct regulator_dev *, unsigned int mode);
unsigned int (* get_mode) (struct regulator_dev *);
int (* enable_time) (struct regulator_dev *);
int (* set_ramp_delay) (struct regulator_dev *, int ramp_delay);
int (* set_voltage_time_sel) (struct regulator_dev *,unsigned int old_selector,unsigned int new_selector);
int (* get_status) (struct regulator_dev *);
unsigned int (* get_optimum_mode) (struct regulator_dev *, int input_uV,int output_uV, int load_uA);
int (* set_bypass) (struct regulator_dev *dev, bool enable);
int (* get_bypass) (struct regulator_dev *dev, bool *enable);
int (* set_suspend_voltage) (struct regulator_dev *, int uV);
int (* set_suspend_enable) (struct regulator_dev *);
int (* set_suspend_disable) (struct regulator_dev *);
int (* set_suspend_mode) (struct regulator_dev *, unsigned int mode);
};
MEMBERS
list_voltage
Return one of the supported voltages, in microvolts; zero if the selector indicates a voltage that is unusable on this system; or
negative errno. Selectors range from zero to one less than regulator_desc.n_voltages. Voltages may be reported in any order.
set_voltage
Set the voltage for the regulator within the range specified. The driver should select the voltage closest to min_uV.
map_voltage
Convert a voltage into a selector
set_voltage_sel
Set the voltage for the regulator using the specified selector.
get_voltage
Return the currently configured voltage for the regulator.
get_voltage_sel
Return the currently configured voltage selector for the regulator.
set_current_limit
Configure a limit for a current-limited regulator. The driver should select the current closest to max_uA.
get_current_limit
Get the configured limit for a current-limited regulator.
enable
Configure the regulator as enabled.
disable
Configure the regulator as disabled.
is_enabled
Return 1 if the regulator is enabled, 0 if not. May also return negative errno.
set_mode
Set the configured operating mode for the regulator.
get_mode
Get the configured operating mode for the regulator.
enable_time
Time taken for the regulator voltage output voltage to stabilise after being enabled, in microseconds.
set_ramp_delay
Set the ramp delay for the regulator. The driver should select ramp delay equal to or less than(closest) ramp_delay.
set_voltage_time_sel
Time taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function provides
the from and to voltage selector, the function should return the worst case.
get_status
Return actual (not as-configured) status of regulator, as a REGULATOR_STATUS value (or negative errno)
get_optimum_mode
Get the most efficient operating mode for the regulator when running with the specified parameters.
set_bypass
Set the regulator in bypass mode.
get_bypass
Get the regulator bypass mode state.
set_suspend_voltage
Set the voltage for the regulator when the system is suspended.
set_suspend_enable
Mark the regulator as enabled when the system is suspended.
set_suspend_disable
Mark the regulator as disabled when the system is suspended.
set_suspend_mode
Set the operating mode for the regulator when the system is suspended.
DESCRIPTION
This struct describes regulator operations which can be implemented by regulator chip drivers.
AUTHORS
Liam Girdwood <lrg@slimlogic.co.uk>
Author.
Mark Brown <broonie@opensource.wolfsonmicro.com>
Wolfson Microelectronics,
Author.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 STRUCT REGULATOR_OPS(9)