ASoC: cs42l51: Improve error handling in cs42l51_remove()
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Mon, 10 Jan 2022 07:18:32 +0000 (08:18 +0100)
committerMark Brown <broonie@kernel.org>
Fri, 28 Jan 2022 16:00:22 +0000 (16:00 +0000)
commit73d4c3135b2aa2308fe058f58ddbf658436aa385
tree3d8d2d4359fccdcc85fe9d0f38aaf20a890f7027
parent74cc53cf59b6a36ef50f164693625629614cb732
ASoC: cs42l51: Improve error handling in cs42l51_remove()

When disabling a regulator fails while the device goes away, there is
little we can do and the machine is probably in enough trouble that any
action we'd want to take fails anyhow.

The return value used to be passed on in cs42l51_i2c_remove() (i.e. the
i2c device remove callback). But the i2c core ignores the error code
(apart from emitting a generic warning) and removes the device anyhow.

So return 0 unconditionally in cs42l51_i2c_remove(), and instead of
returning the error code to the upper layer emit a more helpful warning
message. After that nobody is interested any more in the actual error
code, so let cs42l51_remove() return void.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20220110071832.306185-1-u.kleine-koenig@pengutronix.de
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/cs42l51-i2c.c
sound/soc/codecs/cs42l51.c
sound/soc/codecs/cs42l51.h