Commit 74ff8e06 authored by Sebastian Reichel's avatar Sebastian Reichel Committed by Mark Brown

regulator: cpcap: Add OF mode mapping

Add device tree mode mapping capabilities to the cpcap driver.
Acked-by: default avatarTony Lindgren <tony@atomide.com>
Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 91a024e8
...@@ -123,6 +123,7 @@ struct cpcap_regulator { ...@@ -123,6 +123,7 @@ struct cpcap_regulator {
.enable_val = (mode_val), \ .enable_val = (mode_val), \
.disable_val = (off_val), \ .disable_val = (off_val), \
.ramp_delay = (volt_trans_time), \ .ramp_delay = (volt_trans_time), \
.of_map_mode = cpcap_map_mode, \
}, \ }, \
.assign_reg = (assignment_reg), \ .assign_reg = (assignment_reg), \
.assign_mask = (assignment_mask), \ .assign_mask = (assignment_mask), \
...@@ -213,6 +214,18 @@ static int cpcap_regulator_disable(struct regulator_dev *rdev) ...@@ -213,6 +214,18 @@ static int cpcap_regulator_disable(struct regulator_dev *rdev)
return error; return error;
} }
static unsigned int cpcap_map_mode(unsigned int mode)
{
switch (mode) {
case CPCAP_BIT_AUDIO_NORMAL_MODE:
return REGULATOR_MODE_NORMAL;
case CPCAP_BIT_AUDIO_LOW_PWR:
return REGULATOR_MODE_STANDBY;
default:
return -EINVAL;
}
}
static unsigned int cpcap_regulator_get_mode(struct regulator_dev *rdev) static unsigned int cpcap_regulator_get_mode(struct regulator_dev *rdev)
{ {
int value; int value;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment