diff mbox series

media: i2c: dw9714: Return zero in remove callback

Message ID 20220331133132.296971-1-u.kleine-koenig@pengutronix.de (mailing list archive)
State New, archived
Headers show
Series media: i2c: dw9714: Return zero in remove callback | expand

Commit Message

Uwe Kleine-König March 31, 2022, 1:31 p.m. UTC
The only effect of returning an error code in an i2c remove callback is
that the i2c core emits a generic warning and still removes the device.

So even if disabling the regulator fails it's sensible to further cleanup
and then return zero to only emit a single error message.

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

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
 drivers/media/i2c/dw9714.c | 1 -
 1 file changed, 1 deletion(-)

Comments

Uwe Kleine-König April 25, 2022, 7:13 p.m. UTC | #1
Hello,

On Thu, Mar 31, 2022 at 03:31:32PM +0200, Uwe Kleine-König wrote:
> The only effect of returning an error code in an i2c remove callback is
> that the i2c core emits a generic warning and still removes the device.
> 
> So even if disabling the regulator fails it's sensible to further cleanup
> and then return zero to only emit a single error message.
> 
> This patch is a preparation for making i2c remove callbacks return void.
> 
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> ---
>  drivers/media/i2c/dw9714.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/drivers/media/i2c/dw9714.c b/drivers/media/i2c/dw9714.c
> index cd7008ad8f2f..982ed8afebf5 100644
> --- a/drivers/media/i2c/dw9714.c
> +++ b/drivers/media/i2c/dw9714.c
> @@ -201,7 +201,6 @@ static int dw9714_remove(struct i2c_client *client)
>  		if (ret) {
>  			dev_err(&client->dev,
>  				"Failed to disable vcc: %d\n", ret);
> -			return ret;
>  		}
>  	}
>  	pm_runtime_set_suspended(&client->dev);

Who cares for this driver and so for this patch?

Best regards
Uwe
Sakari Ailus April 26, 2022, 8:18 a.m. UTC | #2
Hi Uwe,

On Mon, Apr 25, 2022 at 09:13:45PM +0200, Uwe Kleine-König wrote:
> Hello,
> 
> On Thu, Mar 31, 2022 at 03:31:32PM +0200, Uwe Kleine-König wrote:
> > The only effect of returning an error code in an i2c remove callback is
> > that the i2c core emits a generic warning and still removes the device.
> > 
> > So even if disabling the regulator fails it's sensible to further cleanup
> > and then return zero to only emit a single error message.
> > 
> > This patch is a preparation for making i2c remove callbacks return void.
> > 
> > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> > ---
> >  drivers/media/i2c/dw9714.c | 1 -
> >  1 file changed, 1 deletion(-)
> > 
> > diff --git a/drivers/media/i2c/dw9714.c b/drivers/media/i2c/dw9714.c
> > index cd7008ad8f2f..982ed8afebf5 100644
> > --- a/drivers/media/i2c/dw9714.c
> > +++ b/drivers/media/i2c/dw9714.c
> > @@ -201,7 +201,6 @@ static int dw9714_remove(struct i2c_client *client)
> >  		if (ret) {
> >  			dev_err(&client->dev,
> >  				"Failed to disable vcc: %d\n", ret);
> > -			return ret;
> >  		}
> >  	}
> >  	pm_runtime_set_suspended(&client->dev);
> 
> Who cares for this driver and so for this patch?

I do.

The patch is in the media stage tree now (you should have received an
e-mail about it) from where it eventually gets to the media tree.
Uwe Kleine-König April 26, 2022, 9:02 a.m. UTC | #3
On Tue, Apr 26, 2022 at 11:18:45AM +0300, Sakari Ailus wrote:
> Hi Uwe,
> 
> On Mon, Apr 25, 2022 at 09:13:45PM +0200, Uwe Kleine-König wrote:
> > Hello,
> > 
> > On Thu, Mar 31, 2022 at 03:31:32PM +0200, Uwe Kleine-König wrote:
> > > The only effect of returning an error code in an i2c remove callback is
> > > that the i2c core emits a generic warning and still removes the device.
> > > 
> > > So even if disabling the regulator fails it's sensible to further cleanup
> > > and then return zero to only emit a single error message.
> > > 
> > > This patch is a preparation for making i2c remove callbacks return void.
> > > 
> > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> > > ---
> > >  drivers/media/i2c/dw9714.c | 1 -
> > >  1 file changed, 1 deletion(-)
> > > 
> > > diff --git a/drivers/media/i2c/dw9714.c b/drivers/media/i2c/dw9714.c
> > > index cd7008ad8f2f..982ed8afebf5 100644
> > > --- a/drivers/media/i2c/dw9714.c
> > > +++ b/drivers/media/i2c/dw9714.c
> > > @@ -201,7 +201,6 @@ static int dw9714_remove(struct i2c_client *client)
> > >  		if (ret) {
> > >  			dev_err(&client->dev,
> > >  				"Failed to disable vcc: %d\n", ret);
> > > -			return ret;
> > >  		}
> > >  	}
> > >  	pm_runtime_set_suspended(&client->dev);
> > 
> > Who cares for this driver and so for this patch?
> 
> I do.
> 
> The patch is in the media stage tree now (you should have received an
> e-mail about it) from where it eventually gets to the media tree.

Ah I did. I wasn't aware of it, because the mail doesn't have the
in-reply-to header set such that my MUA doesn't sort it to the patch
mail.

I saw this mail now. Let me note that it's intransparent for me how your
Sob line was added to the patch. The mail says the patch was queued,
does that mean it's about to be applied and will appear in next soon? Or
is it only queued to be looked at? (I assume the former.)

Best regards
Uwe
Sakari Ailus April 27, 2022, 6:15 a.m. UTC | #4
On Tue, Apr 26, 2022 at 11:02:55AM +0200, Uwe Kleine-König wrote:
> On Tue, Apr 26, 2022 at 11:18:45AM +0300, Sakari Ailus wrote:
> > Hi Uwe,
> > 
> > On Mon, Apr 25, 2022 at 09:13:45PM +0200, Uwe Kleine-König wrote:
> > > Hello,
> > > 
> > > On Thu, Mar 31, 2022 at 03:31:32PM +0200, Uwe Kleine-König wrote:
> > > > The only effect of returning an error code in an i2c remove callback is
> > > > that the i2c core emits a generic warning and still removes the device.
> > > > 
> > > > So even if disabling the regulator fails it's sensible to further cleanup
> > > > and then return zero to only emit a single error message.
> > > > 
> > > > This patch is a preparation for making i2c remove callbacks return void.
> > > > 
> > > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> > > > ---
> > > >  drivers/media/i2c/dw9714.c | 1 -
> > > >  1 file changed, 1 deletion(-)
> > > > 
> > > > diff --git a/drivers/media/i2c/dw9714.c b/drivers/media/i2c/dw9714.c
> > > > index cd7008ad8f2f..982ed8afebf5 100644
> > > > --- a/drivers/media/i2c/dw9714.c
> > > > +++ b/drivers/media/i2c/dw9714.c
> > > > @@ -201,7 +201,6 @@ static int dw9714_remove(struct i2c_client *client)
> > > >  		if (ret) {
> > > >  			dev_err(&client->dev,
> > > >  				"Failed to disable vcc: %d\n", ret);
> > > > -			return ret;
> > > >  		}
> > > >  	}
> > > >  	pm_runtime_set_suspended(&client->dev);
> > > 
> > > Who cares for this driver and so for this patch?
> > 
> > I do.
> > 
> > The patch is in the media stage tree now (you should have received an
> > e-mail about it) from where it eventually gets to the media tree.
> 
> Ah I did. I wasn't aware of it, because the mail doesn't have the
> in-reply-to header set such that my MUA doesn't sort it to the patch
> mail.

The mail is not sent to the LMML, but the submitter (as others whose
addresses can be found in git tags) and another list. This would still
allow to connect the two. This is up to Mauro's scripts.

> 
> I saw this mail now. Let me note that it's intransparent for me how your
> Sob line was added to the patch. The mail says the patch was queued,
> does that mean it's about to be applied and will appear in next soon? Or
> is it only queued to be looked at? (I assume the former.)

The media submaintainer trees --- such as mine --- are not pulled to the
media tree. Instead Mauro picks the patches to the media tree individually.

My tree is here:

<URL:https://git.linuxtv.org/sailus/media_tree.git/>
diff mbox series

Patch

diff --git a/drivers/media/i2c/dw9714.c b/drivers/media/i2c/dw9714.c
index cd7008ad8f2f..982ed8afebf5 100644
--- a/drivers/media/i2c/dw9714.c
+++ b/drivers/media/i2c/dw9714.c
@@ -201,7 +201,6 @@  static int dw9714_remove(struct i2c_client *client)
 		if (ret) {
 			dev_err(&client->dev,
 				"Failed to disable vcc: %d\n", ret);
-			return ret;
 		}
 	}
 	pm_runtime_set_suspended(&client->dev);