Commit e1347bd4 authored by Uwe Kleine-König's avatar Uwe Kleine-König Committed by Pavel Machek
Browse files

leds: is31fl32xx: Improve error reporting in .remove()



Returning an error value in an i2c remove callback results in a generic
error message being emitted by the i2c core, but otherwise it doesn't make
a difference. The device goes away anyhow and the devm cleanups are
called.

So instead of triggering the generic i2c error message, emit a more helpful
message if a problem occurs and return 0 to suppress the generic message.

This patch is a preparation for making i2c remove callbacks return void.

Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: default avatarPavel Machek <pavel@ucw.cz>
parent 818d03b3
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -460,8 +460,14 @@ static int is31fl32xx_probe(struct i2c_client *client,
static int is31fl32xx_remove(struct i2c_client *client)
{
	struct is31fl32xx_priv *priv = i2c_get_clientdata(client);
	int ret;

	return is31fl32xx_reset_regs(priv);
	ret = is31fl32xx_reset_regs(priv);
	if (ret)
		dev_err(&client->dev, "Failed to reset registers on removal (%pe)\n",
			ERR_PTR(ret));

	return 0;
}

/*