* [PATCH v2] i2c: img-scb: fixup of wait_for_completion_timeout return handling
@ 2015-02-09 15:15 Nicholas Mc Guire
[not found] ` <1423494921-2708-1-git-send-email-hofrat-Q945KHDl0DbYtjvyW6yDsg@public.gmane.org>
0 siblings, 1 reply; 4+ messages in thread
From: Nicholas Mc Guire @ 2015-02-09 15:15 UTC (permalink / raw)
To: Wolfram Sang
Cc: James Hogan, Ezequiel Garcia, Andrew Bresticker,
linux-i2c-u79uwXL29TY76Z2rM5mHXA, Nicholas Mc Guire
Return type of wait_for_completion_timeout is unsigned long not int.
Appropriately typed/named variable are added and assignment fixed up.
Signed-off-by: Nicholas Mc Guire <hofrat-Q945KHDl0DbYtjvyW6yDsg@public.gmane.org>
---
v2: int ret is an idiom - thus rather than just changing the type, rename
the variable, as suggested by Wolfram Sang <wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>.
Patch was compile tested with x86_64_defconfig + CONFIG_COMPILE_TEST=y
CONFIG_I2C_IMG=m
Patch is against 3.19.0-rc7 (localversion-next is -next-20150209)
drivers/i2c/busses/i2c-img-scb.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/drivers/i2c/busses/i2c-img-scb.c b/drivers/i2c/busses/i2c-img-scb.c
index 0fcc169..6e4e990 100644
--- a/drivers/i2c/busses/i2c-img-scb.c
+++ b/drivers/i2c/busses/i2c-img-scb.c
@@ -988,15 +988,16 @@ out:
static int img_i2c_reset_bus(struct img_i2c *i2c)
{
unsigned long flags;
- int ret;
+ unsigned long timeout;
spin_lock_irqsave(&i2c->lock, flags);
reinit_completion(&i2c->msg_complete);
img_i2c_reset_start(i2c);
spin_unlock_irqrestore(&i2c->lock, flags);
- ret = wait_for_completion_timeout(&i2c->msg_complete, IMG_I2C_TIMEOUT);
- if (ret == 0)
+ timeout = wait_for_completion_timeout(&i2c->msg_complete,
+ IMG_I2C_TIMEOUT);
+ if (timeout == 0)
return -ETIMEDOUT;
return 0;
}
@@ -1007,6 +1008,7 @@ static int img_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs,
struct img_i2c *i2c = i2c_get_adapdata(adap);
bool atomic = false;
int i, ret;
+ unsigned long timeout;
if (i2c->mode == MODE_SUSPEND) {
WARN(1, "refusing to service transaction in suspended state\n");
@@ -1068,11 +1070,11 @@ static int img_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs,
img_i2c_write(i2c);
spin_unlock_irqrestore(&i2c->lock, flags);
- ret = wait_for_completion_timeout(&i2c->msg_complete,
- IMG_I2C_TIMEOUT);
+ timeout = wait_for_completion_timeout(&i2c->msg_complete,
+ IMG_I2C_TIMEOUT);
del_timer_sync(&i2c->check_timer);
- if (ret == 0) {
+ if (timeout == 0) {
dev_err(adap->dev.parent, "i2c transfer timed out\n");
i2c->msg_status = -ETIMEDOUT;
break;
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2] i2c: img-scb: fixup of wait_for_completion_timeout return handling
[not found] ` <1423494921-2708-1-git-send-email-hofrat-Q945KHDl0DbYtjvyW6yDsg@public.gmane.org>
@ 2015-02-09 15:25 ` James Hogan
2015-03-15 10:01 ` Wolfram Sang
1 sibling, 0 replies; 4+ messages in thread
From: James Hogan @ 2015-02-09 15:25 UTC (permalink / raw)
To: Nicholas Mc Guire, Wolfram Sang
Cc: Ezequiel Garcia, Andrew Bresticker,
linux-i2c-u79uwXL29TY76Z2rM5mHXA
[-- Attachment #1: Type: text/plain, Size: 2573 bytes --]
On 09/02/15 15:15, Nicholas Mc Guire wrote:
> Return type of wait_for_completion_timeout is unsigned long not int.
> Appropriately typed/named variable are added and assignment fixed up.
>
> Signed-off-by: Nicholas Mc Guire <hofrat-Q945KHDl0DbYtjvyW6yDsg@public.gmane.org>
v2 also:
Acked-by: James Hogan <james.hogan-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
Thanks
James
> ---
>
> v2: int ret is an idiom - thus rather than just changing the type, rename
> the variable, as suggested by Wolfram Sang <wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>.
>
> Patch was compile tested with x86_64_defconfig + CONFIG_COMPILE_TEST=y
> CONFIG_I2C_IMG=m
>
> Patch is against 3.19.0-rc7 (localversion-next is -next-20150209)
>
> drivers/i2c/busses/i2c-img-scb.c | 14 ++++++++------
> 1 file changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-img-scb.c b/drivers/i2c/busses/i2c-img-scb.c
> index 0fcc169..6e4e990 100644
> --- a/drivers/i2c/busses/i2c-img-scb.c
> +++ b/drivers/i2c/busses/i2c-img-scb.c
> @@ -988,15 +988,16 @@ out:
> static int img_i2c_reset_bus(struct img_i2c *i2c)
> {
> unsigned long flags;
> - int ret;
> + unsigned long timeout;
>
> spin_lock_irqsave(&i2c->lock, flags);
> reinit_completion(&i2c->msg_complete);
> img_i2c_reset_start(i2c);
> spin_unlock_irqrestore(&i2c->lock, flags);
>
> - ret = wait_for_completion_timeout(&i2c->msg_complete, IMG_I2C_TIMEOUT);
> - if (ret == 0)
> + timeout = wait_for_completion_timeout(&i2c->msg_complete,
> + IMG_I2C_TIMEOUT);
> + if (timeout == 0)
> return -ETIMEDOUT;
> return 0;
> }
> @@ -1007,6 +1008,7 @@ static int img_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs,
> struct img_i2c *i2c = i2c_get_adapdata(adap);
> bool atomic = false;
> int i, ret;
> + unsigned long timeout;
>
> if (i2c->mode == MODE_SUSPEND) {
> WARN(1, "refusing to service transaction in suspended state\n");
> @@ -1068,11 +1070,11 @@ static int img_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs,
> img_i2c_write(i2c);
> spin_unlock_irqrestore(&i2c->lock, flags);
>
> - ret = wait_for_completion_timeout(&i2c->msg_complete,
> - IMG_I2C_TIMEOUT);
> + timeout = wait_for_completion_timeout(&i2c->msg_complete,
> + IMG_I2C_TIMEOUT);
> del_timer_sync(&i2c->check_timer);
>
> - if (ret == 0) {
> + if (timeout == 0) {
> dev_err(adap->dev.parent, "i2c transfer timed out\n");
> i2c->msg_status = -ETIMEDOUT;
> break;
>
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] i2c: img-scb: fixup of wait_for_completion_timeout return handling
[not found] ` <1423494921-2708-1-git-send-email-hofrat-Q945KHDl0DbYtjvyW6yDsg@public.gmane.org>
2015-02-09 15:25 ` James Hogan
@ 2015-03-15 10:01 ` Wolfram Sang
2015-03-15 10:12 ` Nicholas Mc Guire
1 sibling, 1 reply; 4+ messages in thread
From: Wolfram Sang @ 2015-03-15 10:01 UTC (permalink / raw)
To: Nicholas Mc Guire
Cc: James Hogan, Ezequiel Garcia, Andrew Bresticker,
linux-i2c-u79uwXL29TY76Z2rM5mHXA
[-- Attachment #1: Type: text/plain, Size: 383 bytes --]
On Mon, Feb 09, 2015 at 10:15:21AM -0500, Nicholas Mc Guire wrote:
> Return type of wait_for_completion_timeout is unsigned long not int.
> Appropriately typed/named variable are added and assignment fixed up.
>
> Signed-off-by: Nicholas Mc Guire <hofrat-Q945KHDl0DbYtjvyW6yDsg@public.gmane.org>
> ---
Fixed variable name to 'time_left' and applied to for-next, thanks!
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] i2c: img-scb: fixup of wait_for_completion_timeout return handling
2015-03-15 10:01 ` Wolfram Sang
@ 2015-03-15 10:12 ` Nicholas Mc Guire
0 siblings, 0 replies; 4+ messages in thread
From: Nicholas Mc Guire @ 2015-03-15 10:12 UTC (permalink / raw)
To: Wolfram Sang
Cc: Nicholas Mc Guire, James Hogan, Ezequiel Garcia,
Andrew Bresticker, linux-i2c-u79uwXL29TY76Z2rM5mHXA
On Sun, 15 Mar 2015, Wolfram Sang wrote:
> On Mon, Feb 09, 2015 at 10:15:21AM -0500, Nicholas Mc Guire wrote:
> > Return type of wait_for_completion_timeout is unsigned long not int.
> > Appropriately typed/named variable are added and assignment fixed up.
> >
> > Signed-off-by: Nicholas Mc Guire <hofrat-Q945KHDl0DbYtjvyW6yDsg@public.gmane.org>
> > ---
>
> Fixed variable name to 'time_left' and applied to for-next, thanks!
>
thanks - in all of the new cleanups (I hope) the naming
has been considered.
thx!
hofrat
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-03-15 10:12 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-09 15:15 [PATCH v2] i2c: img-scb: fixup of wait_for_completion_timeout return handling Nicholas Mc Guire
[not found] ` <1423494921-2708-1-git-send-email-hofrat-Q945KHDl0DbYtjvyW6yDsg@public.gmane.org>
2015-02-09 15:25 ` James Hogan
2015-03-15 10:01 ` Wolfram Sang
2015-03-15 10:12 ` Nicholas Mc Guire
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).