mirror of
https://github.com/smaeul/u-boot.git
synced 2025-11-02 13:08:16 +00:00
power: regulator: qcom-rpmh-regulator: port over lineage_range helpers
Import struct linear_range() and builder macro from Linux regulator core. Acked-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
This commit is contained in:
parent
13bed6c903
commit
21c7b74a56
@ -29,6 +29,13 @@ enum rpmh_regulator_type {
|
||||
XOB,
|
||||
};
|
||||
|
||||
enum rpmh_regulator_mode {
|
||||
REGULATOR_MODE_RETENTION,
|
||||
REGULATOR_MODE_LPM,
|
||||
REGULATOR_MODE_AUTO,
|
||||
REGULATOR_MODE_HPM,
|
||||
};
|
||||
|
||||
#define RPMH_REGULATOR_REG_VRM_VOLTAGE 0x0
|
||||
#define RPMH_REGULATOR_REG_ENABLE 0x4
|
||||
#define RPMH_REGULATOR_REG_VRM_MODE 0x8
|
||||
@ -61,6 +68,36 @@ enum rpmh_regulator_type {
|
||||
#define PMIC5_BOB_MODE_AUTO 6
|
||||
#define PMIC5_BOB_MODE_PWM 7
|
||||
|
||||
|
||||
/**
|
||||
* struct linear_range - table of selector - value pairs
|
||||
*
|
||||
* Define a lookup-table for range of values. Intended to help when looking
|
||||
* for a register value matching certaing physical measure (like voltage).
|
||||
* Usable when increment of one in register always results a constant increment
|
||||
* of the physical measure (like voltage).
|
||||
*
|
||||
* @min: Lowest value in range
|
||||
* @min_sel: Lowest selector for range
|
||||
* @max_sel: Highest selector for range
|
||||
* @step: Value step size
|
||||
*/
|
||||
struct linear_range {
|
||||
unsigned int min;
|
||||
unsigned int min_sel;
|
||||
unsigned int max_sel;
|
||||
unsigned int step;
|
||||
};
|
||||
|
||||
/* Initialize struct linear_range for regulators */
|
||||
#define REGULATOR_LINEAR_RANGE(_min_uV, _min_sel, _max_sel, _step_uV) \
|
||||
{ \
|
||||
.min = _min_uV, \
|
||||
.min_sel = _min_sel, \
|
||||
.max_sel = _max_sel, \
|
||||
.step = _step_uV, \
|
||||
}
|
||||
|
||||
/**
|
||||
* struct rpmh_vreg_hw_data - RPMh regulator hardware configurations
|
||||
* @regulator_type: RPMh accelerator type used to manage this
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user