mirror of
https://github.com/smaeul/u-boot.git
synced 2025-11-04 22:10:17 +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,
|
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_VRM_VOLTAGE 0x0
|
||||||
#define RPMH_REGULATOR_REG_ENABLE 0x4
|
#define RPMH_REGULATOR_REG_ENABLE 0x4
|
||||||
#define RPMH_REGULATOR_REG_VRM_MODE 0x8
|
#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_AUTO 6
|
||||||
#define PMIC5_BOB_MODE_PWM 7
|
#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
|
* struct rpmh_vreg_hw_data - RPMh regulator hardware configurations
|
||||||
* @regulator_type: RPMh accelerator type used to manage this
|
* @regulator_type: RPMh accelerator type used to manage this
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user