The CODEC's write callback can return a negative error code, make sure to pass that on correctly.
Signed-off-by: Lars-Peter Clausen lars@metafoo.de --- include/sound/soc.h | 4 ++-- sound/soc/soc-io.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/include/sound/soc.h b/include/sound/soc.h index dda179d..de62475 100644 --- a/include/sound/soc.h +++ b/include/sound/soc.h @@ -1126,8 +1126,8 @@ static inline struct snd_soc_platform *snd_soc_component_to_platform(
/* codec IO */ unsigned int snd_soc_read(struct snd_soc_codec *codec, unsigned int reg); -unsigned int snd_soc_write(struct snd_soc_codec *codec, - unsigned int reg, unsigned int val); +int snd_soc_write(struct snd_soc_codec *codec, unsigned int reg, + unsigned int val);
/* device driver data */
diff --git a/sound/soc/soc-io.c b/sound/soc/soc-io.c index 14bdf79..dc0c09d 100644 --- a/sound/soc/soc-io.c +++ b/sound/soc/soc-io.c @@ -31,8 +31,8 @@ unsigned int snd_soc_read(struct snd_soc_codec *codec, unsigned int reg) } EXPORT_SYMBOL_GPL(snd_soc_read);
-unsigned int snd_soc_write(struct snd_soc_codec *codec, - unsigned int reg, unsigned int val) +int snd_soc_write(struct snd_soc_codec *codec, unsigned int reg, + unsigned int val) { dev_dbg(codec->dev, "write %x = %x\n", reg, val); trace_snd_soc_reg_write(codec, reg, val);