other versions
STRUCT REGULATOR_DES(9) | API reference | STRUCT REGULATOR_DES(9) |
NAME¶
struct_regulator_desc - Static regulator descriptorSYNOPSIS¶
struct regulator_desc { const char * name; const char * supply_name; const char * of_match; const char * regulators_node; int (* of_parse_cb) (struct device_node *,const struct regulator_desc *,struct regulator_config *); int id; unsigned int continuous_voltage_range:1; unsigned n_voltages; const 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; int min_dropout_uV; const struct regulator_linear_range * linear_ranges; int n_linear_ranges; const unsigned int * volt_table; unsigned int vsel_reg; unsigned int vsel_mask; unsigned int csel_reg; unsigned int csel_mask; unsigned int apply_reg; unsigned int apply_bit; unsigned int enable_reg; unsigned int enable_mask; unsigned int enable_val; unsigned int disable_val; bool enable_is_inverted; unsigned int bypass_reg; unsigned int bypass_mask; unsigned int bypass_val_on; unsigned int bypass_val_off; unsigned int active_discharge_on; unsigned int active_discharge_off; unsigned int active_discharge_mask; unsigned int active_discharge_reg; unsigned int enable_time; unsigned int off_on_delay; unsigned int (* of_map_mode) (unsigned int mode); };
MEMBERS¶
nameIdentifying name for the regulator.
supply_name
Identifying the regulator supply
of_match
Name used to identify regulator in DT.
regulators_node
Name of node containing regulator definitions in
DT.
of_parse_cb
Optional callback called only if of_match is present.
Will be called for each regulator parsed from DT, during init_data parsing.
The regulator_config passed as argument to the callback will be a copy of
config passed to regulator_register, valid only for this particular call.
Callback may freely change the config but it cannot store it for later usage.
Callback should return 0 on success or negative ERRNO indicating
failure.
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)
min_dropout_uV
The minimum dropout voltage this regulator can
handle
linear_ranges
A constant table of possible voltage ranges.
n_linear_ranges
Number of entries in the linear_ranges
table.
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
csel_reg
Register for TPS65218 LS3 current regulator
csel_mask
Mask for TPS65218 LS3 current regulator
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_val
Enabling value for control when using regmap
enable/disable ops
disable_val
Disabling value 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
bypass_val_on
Enabling value for control when using regmap
set_bypass
bypass_val_off
Disabling value for control when using regmap
set_bypass
active_discharge_on
Disabling value for control when using regmap
set_active_discharge
active_discharge_off
Enabling value for control when using regmap
set_active_discharge
active_discharge_mask
Mask for control when using regmap
set_active_discharge
active_discharge_reg
Register for control when using regmap
set_active_discharge
enable_time
Time taken for initial enable of regulator (in uS).
off_on_delay
guard time (in uS), before re-enabling a regulator
of_map_mode
Maps a hardware mode defined in a DeviceTree to a
standard mode
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 <lrg@slimlogic.co.uk>Author.
Mark Brown <broonie@opensource.wolfsonmicro.com>
Author.
COPYRIGHT¶
January 2017 | Kernel Hackers Manual 4.8. |