mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
regulator: s5m8767: Add symbols for hard-coded DVS_RAMP register
Add symbols for hard-coded values of BUCK_RAMP field in DVS_RAMP register. This simplifies a little the code as register update is called only once. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
parent
463616ea3f
commit
f37ff6b6ab
@ -881,31 +881,29 @@ static int s5m8767_pmic_probe(struct platform_device *pdev)
|
||||
|
||||
if (s5m8767->buck2_ramp || s5m8767->buck3_ramp
|
||||
|| s5m8767->buck4_ramp) {
|
||||
unsigned int val;
|
||||
switch (s5m8767->ramp_delay) {
|
||||
case 5:
|
||||
sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP,
|
||||
0x40, 0xf0);
|
||||
val = S5M8767_DVS_BUCK_RAMP_5;
|
||||
break;
|
||||
case 10:
|
||||
sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP,
|
||||
0x90, 0xf0);
|
||||
val = S5M8767_DVS_BUCK_RAMP_10;
|
||||
break;
|
||||
case 25:
|
||||
sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP,
|
||||
0xd0, 0xf0);
|
||||
val = S5M8767_DVS_BUCK_RAMP_25;
|
||||
break;
|
||||
case 50:
|
||||
sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP,
|
||||
0xe0, 0xf0);
|
||||
val = S5M8767_DVS_BUCK_RAMP_50;
|
||||
break;
|
||||
case 100:
|
||||
sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP,
|
||||
0xf0, 0xf0);
|
||||
val = S5M8767_DVS_BUCK_RAMP_100;
|
||||
break;
|
||||
default:
|
||||
sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP,
|
||||
0x90, 0xf0);
|
||||
val = S5M8767_DVS_BUCK_RAMP_10;
|
||||
}
|
||||
sec_reg_update(s5m8767->iodev, S5M8767_REG_DVSRAMP,
|
||||
val << S5M8767_DVS_BUCK_RAMP_SHIFT,
|
||||
S5M8767_DVS_BUCK_RAMP_MASK);
|
||||
}
|
||||
|
||||
for (i = 0; i < pdata->num_regulators; i++) {
|
||||
|
@ -186,4 +186,19 @@ enum s5m8767_regulators {
|
||||
#define S5M8767_ENCTRL_SHIFT 6
|
||||
#define S5M8767_ENCTRL_MASK (0x3 << S5M8767_ENCTRL_SHIFT)
|
||||
|
||||
/*
|
||||
* Values for BUCK_RAMP field in DVS_RAMP register, matching raw values
|
||||
* in mV/us.
|
||||
*/
|
||||
enum s5m8767_dvs_buck_ramp_values {
|
||||
S5M8767_DVS_BUCK_RAMP_5 = 0x4,
|
||||
S5M8767_DVS_BUCK_RAMP_10 = 0x9,
|
||||
S5M8767_DVS_BUCK_RAMP_12_5 = 0xb,
|
||||
S5M8767_DVS_BUCK_RAMP_25 = 0xd,
|
||||
S5M8767_DVS_BUCK_RAMP_50 = 0xe,
|
||||
S5M8767_DVS_BUCK_RAMP_100 = 0xf,
|
||||
};
|
||||
#define S5M8767_DVS_BUCK_RAMP_SHIFT 4
|
||||
#define S5M8767_DVS_BUCK_RAMP_MASK (0xf << S5M8767_DVS_BUCK_RAMP_SHIFT)
|
||||
|
||||
#endif /* __LINUX_MFD_S5M8767_H */
|
||||
|
Loading…
Reference in New Issue
Block a user