mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 08:10:54 +07:00
regulator: wm8400: Get rid of wm8400_block_read/wm8400_set_bits functions
The only user of wm8400_block_read/wm8400_set_bits functions is the wm8400 regulator driver. At the context of all the callers, we can use regmap_bulk_read/regmap_update_bits directly. Thus remove wm8400_block_read/wm8400_set_bits functions. Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
5b60ee576a
commit
e08abeca39
@ -35,12 +35,6 @@ static bool wm8400_volatile(struct device *dev, unsigned int reg)
|
||||
}
|
||||
}
|
||||
|
||||
int wm8400_block_read(struct wm8400 *wm8400, u8 reg, int count, u16 *data)
|
||||
{
|
||||
return regmap_bulk_read(wm8400->regmap, reg, data, count);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(wm8400_block_read);
|
||||
|
||||
static int wm8400_register_codec(struct wm8400 *wm8400)
|
||||
{
|
||||
const struct mfd_cell cell = {
|
||||
|
@ -36,13 +36,12 @@ static const struct regulator_ops wm8400_ldo_ops = {
|
||||
|
||||
static unsigned int wm8400_dcdc_get_mode(struct regulator_dev *dev)
|
||||
{
|
||||
struct wm8400 *wm8400 = rdev_get_drvdata(dev);
|
||||
struct regmap *rmap = rdev_get_regmap(dev);
|
||||
int offset = (rdev_get_id(dev) - WM8400_DCDC1) * 2;
|
||||
u16 data[2];
|
||||
int ret;
|
||||
|
||||
ret = wm8400_block_read(wm8400, WM8400_DCDC1_CONTROL_1 + offset, 2,
|
||||
data);
|
||||
ret = regmap_bulk_read(rmap, WM8400_DCDC1_CONTROL_1 + offset, data, 2);
|
||||
if (ret != 0)
|
||||
return 0;
|
||||
|
||||
@ -63,36 +62,36 @@ static unsigned int wm8400_dcdc_get_mode(struct regulator_dev *dev)
|
||||
|
||||
static int wm8400_dcdc_set_mode(struct regulator_dev *dev, unsigned int mode)
|
||||
{
|
||||
struct wm8400 *wm8400 = rdev_get_drvdata(dev);
|
||||
struct regmap *rmap = rdev_get_regmap(dev);
|
||||
int offset = (rdev_get_id(dev) - WM8400_DCDC1) * 2;
|
||||
int ret;
|
||||
|
||||
switch (mode) {
|
||||
case REGULATOR_MODE_FAST:
|
||||
/* Datasheet: active with force PWM */
|
||||
ret = wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_2 + offset,
|
||||
ret = regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_2 + offset,
|
||||
WM8400_DC1_FRC_PWM, WM8400_DC1_FRC_PWM);
|
||||
if (ret != 0)
|
||||
return ret;
|
||||
|
||||
return wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_1 + offset,
|
||||
return regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_1 + offset,
|
||||
WM8400_DC1_ACTIVE | WM8400_DC1_SLEEP,
|
||||
WM8400_DC1_ACTIVE);
|
||||
|
||||
case REGULATOR_MODE_NORMAL:
|
||||
/* Datasheet: active */
|
||||
ret = wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_2 + offset,
|
||||
ret = regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_2 + offset,
|
||||
WM8400_DC1_FRC_PWM, 0);
|
||||
if (ret != 0)
|
||||
return ret;
|
||||
|
||||
return wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_1 + offset,
|
||||
return regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_1 + offset,
|
||||
WM8400_DC1_ACTIVE | WM8400_DC1_SLEEP,
|
||||
WM8400_DC1_ACTIVE);
|
||||
|
||||
case REGULATOR_MODE_IDLE:
|
||||
/* Datasheet: standby */
|
||||
return wm8400_set_bits(wm8400, WM8400_DCDC1_CONTROL_1 + offset,
|
||||
return regmap_update_bits(rmap, WM8400_DCDC1_CONTROL_1 + offset,
|
||||
WM8400_DC1_ACTIVE | WM8400_DC1_SLEEP, 0);
|
||||
default:
|
||||
return -EINVAL;
|
||||
|
@ -923,12 +923,4 @@ struct wm8400 {
|
||||
#define WM8400_LINE_CMP_VTHD_SHIFT 0 /* LINE_CMP_VTHD - [3:0] */
|
||||
#define WM8400_LINE_CMP_VTHD_WIDTH 4 /* LINE_CMP_VTHD - [3:0] */
|
||||
|
||||
int wm8400_block_read(struct wm8400 *wm8400, u8 reg, int count, u16 *data);
|
||||
|
||||
static inline int wm8400_set_bits(struct wm8400 *wm8400, u8 reg,
|
||||
u16 mask, u16 val)
|
||||
{
|
||||
return regmap_update_bits(wm8400->regmap, reg, mask, val);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user