SYNOPSIS
struct regulator_desc {
const char * name;
const char * supply_name;
int id;
bool continuous_voltage_range;
unsigned n_voltages;
struct regulator_ops * ops;
int irq;
enum regulator_type type;
struct module * owner;
unsigned int min_uV;
unsigned int uV_step;
unsigned int linear_min_sel;
int fixed_uV;
unsigned int ramp_delay;
const unsigned int * volt_table;
unsigned int vsel_reg;
unsigned int vsel_mask;
unsigned int apply_reg;
unsigned int apply_bit;
unsigned int enable_reg;
unsigned int enable_mask;
bool enable_is_inverted;
unsigned int bypass_reg;
unsigned int bypass_mask;
unsigned int enable_time;
};
MEMBERS
name
- Identifying name for the regulator.
supply_name
- Identifying the regulator supply
id
- Numerical identifier for the regulator.
continuous_voltage_range
- Indicates if the regulator can set any voltage within constrains range.
n_voltages
- Number of selectors available for ops.list_voltage.
ops
- Regulator operations table.
irq
- Interrupt number for the regulator.
type
- Indicates if the regulator is a voltage or current regulator.
owner
- Module providing the regulator, used for refcounting.
min_uV
- Voltage given by the lowest selector (if linear mapping)
uV_step
- Voltage increase with each selector (if linear mapping)
linear_min_sel
- Minimal selector for starting linear mapping
fixed_uV
- Fixed voltage of rails.
ramp_delay
- Time to settle down after voltage change (unit: uV/us)
volt_table
- Voltage mapping table (if table based mapping)
vsel_reg
- Register for selector when using regulator_regmap_X_voltage_
vsel_mask
- Mask for register bitfield used for selector
apply_reg
- Register for initiate voltage change on the output when using regulator_set_voltage_sel_regmap
apply_bit
- Register bitfield used for initiate voltage change on the output when using regulator_set_voltage_sel_regmap
enable_reg
- Register for control when using regmap enable/disable ops
enable_mask
- Mask for control when using regmap enable/disable ops
enable_is_inverted
- A flag to indicate set enable_mask bits to disable when using regulator_enable_regmap and friends APIs.
bypass_reg
- Register for control when using regmap set_bypass
bypass_mask
- Mask for control when using regmap set_bypass
enable_time
- Time taken for initial enable of regulator (in uS).
DESCRIPTION
Each regulator registered with the core is described with a structure of this type and a struct regulator_config. This structure contains the non-varying parts of the regulator description.
AUTHORS
Liam Girdwood <[email protected]>
- Author.
Mark Brown <[email protected]>
Wolfson Microelectronics,
- Author.
COPYRIGHT