diff options
author | Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> | 2017-02-01 12:27:04 -0600 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2017-02-01 18:35:06 +0000 |
commit | cec55827dde1e87f6b91e34f205744d70a7225bc (patch) | |
tree | 8b8ea2dcc5c6fabfea56c932630e5bd4c72cb68b /sound/soc | |
parent | da369d0ab58cb21371f84a144084a16df7800783 (diff) | |
download | op-kernel-dev-cec55827dde1e87f6b91e34f205744d70a7225bc.zip op-kernel-dev-cec55827dde1e87f6b91e34f205744d70a7225bc.tar.gz |
ASoC: rt5645: fix error handling for gpio detection
Optional gpio handling should not cause an error status and prevent
probing if it's missing. Remove error return for -ENOENT case and
move error message to dev_info
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/codecs/rt5645.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/sound/soc/codecs/rt5645.c b/sound/soc/codecs/rt5645.c index 37fb2b6..e09fa19 100644 --- a/sound/soc/codecs/rt5645.c +++ b/sound/soc/codecs/rt5645.c @@ -3658,8 +3658,14 @@ static int rt5645_i2c_probe(struct i2c_client *i2c, GPIOD_IN); if (IS_ERR(rt5645->gpiod_hp_det)) { - dev_err(&i2c->dev, "failed to initialize gpiod\n"); - return PTR_ERR(rt5645->gpiod_hp_det); + dev_info(&i2c->dev, "failed to initialize gpiod\n"); + ret = PTR_ERR(rt5645->gpiod_hp_det); + /* + * Continue if optional gpiod is missing, bail for all other + * errors, including -EPROBE_DEFER + */ + if (ret != -ENOENT) + return ret; } for (i = 0; i < ARRAY_SIZE(rt5645->supplies); i++) |