Scroll to navigation

STRUCT REGULATOR_DES(9) API reference STRUCT REGULATOR_DES(9)

NAME

struct_regulator_desc - Static regulator descriptor

SYNOPSIS

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

name
Identifying 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>
 
Wolfson Microelectronics,
Author.

COPYRIGHT

January 2017 Kernel Hackers Manual 4.8.