summaryrefslogtreecommitdiff
path: root/sound/soc/codecs/adau1977.c
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2019-02-26 16:22:47 +0000
committerMark Brown <broonie@kernel.org>2019-02-26 16:22:47 +0000
commit3146089d235b304e665dc551472ae9cb9ab58572 (patch)
treed1a9141c302f269cb8468f0d4de78124ea5e389a /sound/soc/codecs/adau1977.c
parentb5e806ae4ad81de66c334d3d333fa42f960fbbd1 (diff)
parent7b6b0049e2b70d103adf1b7d0320802f70ddceca (diff)
Merge branch 'asoc-5.1' into asoc-next
Diffstat (limited to 'sound/soc/codecs/adau1977.c')
-rw-r--r--sound/soc/codecs/adau1977.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/sound/soc/codecs/adau1977.c b/sound/soc/codecs/adau1977.c
index 116af6a9ce3b..11c53bcb71dd 100644
--- a/sound/soc/codecs/adau1977.c
+++ b/sound/soc/codecs/adau1977.c
@@ -885,13 +885,15 @@ static int adau1977_setup_micbias(struct adau1977 *adau1977)
struct adau1977_platform_data *pdata = adau1977->dev->platform_data;
unsigned int micbias;
- if (pdata) {
+ if (pdata)
micbias = pdata->micbias;
- if (micbias > ADAU1977_MICBIAS_9V0)
- return -EINVAL;
-
- } else {
+ else if (device_property_read_u32(adau1977->dev, "adi,micbias",
+ &micbias))
micbias = ADAU1977_MICBIAS_8V5;
+
+ if (micbias > ADAU1977_MICBIAS_9V0) {
+ dev_err(adau1977->dev, "Invalid value for 'adi,micbias'\n");
+ return -EINVAL;
}
return regmap_update_bits(adau1977->regmap, ADAU1977_REG_MICBIAS,