From: Kevin Hilman <khilman@ti.com>
To: Shubhrajyoti D <shubhrajyoti@ti.com>
Cc: linux-omap@vger.kernel.org, linux-i2c@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, ben-linux@fluff.org,
tony@atomide.com, w.sang@pengutronix.de,
Rajendra Nayak <rnayak@ti.com>
Subject: Re: [PATCHv9 02/10] I2C: OMAP: Fix the mismatch of pm_runtime enable and disable
Date: Fri, 25 May 2012 14:57:24 -0700 [thread overview]
Message-ID: <87wr3zkjp7.fsf@ti.com> (raw)
In-Reply-To: <1335969135-20858-3-git-send-email-shubhrajyoti@ti.com> (Shubhrajyoti D.'s message of "Wed, 2 May 2012 20:02:07 +0530")
Shubhrajyoti D <shubhrajyoti@ti.com> writes:
> Currently the i2c driver calls the pm_runtime_enable and never
> the disable. This may cause a warning when pm_runtime_enable
> checks for the count match.Attempting to fix the same by calling
> pm_runtime_disable in the error and the remove path.
Looks right.
Can you be more specific in the changelog about when the errors/warning
happens? e.g. why pm_runtime_enable() is called again? Is this on
module unload/reload?
Other than that
Acked-by: Kevin Hilman <khilman@ti.com>
> Cc: Kevin Hilman <khilman@ti.com>
> Cc: Rajendra Nayak <rnayak@ti.com>
> Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com>
> ---
> drivers/i2c/busses/i2c-omap.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c
> index 4f4188d..c851672 100644
> --- a/drivers/i2c/busses/i2c-omap.c
> +++ b/drivers/i2c/busses/i2c-omap.c
> @@ -1090,6 +1090,7 @@ err_unuse_clocks:
> omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0);
> pm_runtime_put(dev->dev);
> iounmap(dev->base);
> + pm_runtime_disable(&pdev->dev);
> err_free_mem:
> platform_set_drvdata(pdev, NULL);
> kfree(dev);
> @@ -1110,6 +1111,7 @@ omap_i2c_remove(struct platform_device *pdev)
> free_irq(dev->irq, dev);
> i2c_del_adapter(&dev->adapter);
> omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0);
> + pm_runtime_disable(&pdev->dev);
> iounmap(dev->base);
> kfree(dev);
> mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
WARNING: multiple messages have this Message-ID (diff)
From: khilman@ti.com (Kevin Hilman)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCHv9 02/10] I2C: OMAP: Fix the mismatch of pm_runtime enable and disable
Date: Fri, 25 May 2012 14:57:24 -0700 [thread overview]
Message-ID: <87wr3zkjp7.fsf@ti.com> (raw)
In-Reply-To: <1335969135-20858-3-git-send-email-shubhrajyoti@ti.com> (Shubhrajyoti D.'s message of "Wed, 2 May 2012 20:02:07 +0530")
Shubhrajyoti D <shubhrajyoti@ti.com> writes:
> Currently the i2c driver calls the pm_runtime_enable and never
> the disable. This may cause a warning when pm_runtime_enable
> checks for the count match.Attempting to fix the same by calling
> pm_runtime_disable in the error and the remove path.
Looks right.
Can you be more specific in the changelog about when the errors/warning
happens? e.g. why pm_runtime_enable() is called again? Is this on
module unload/reload?
Other than that
Acked-by: Kevin Hilman <khilman@ti.com>
> Cc: Kevin Hilman <khilman@ti.com>
> Cc: Rajendra Nayak <rnayak@ti.com>
> Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com>
> ---
> drivers/i2c/busses/i2c-omap.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-omap.c b/drivers/i2c/busses/i2c-omap.c
> index 4f4188d..c851672 100644
> --- a/drivers/i2c/busses/i2c-omap.c
> +++ b/drivers/i2c/busses/i2c-omap.c
> @@ -1090,6 +1090,7 @@ err_unuse_clocks:
> omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0);
> pm_runtime_put(dev->dev);
> iounmap(dev->base);
> + pm_runtime_disable(&pdev->dev);
> err_free_mem:
> platform_set_drvdata(pdev, NULL);
> kfree(dev);
> @@ -1110,6 +1111,7 @@ omap_i2c_remove(struct platform_device *pdev)
> free_irq(dev->irq, dev);
> i2c_del_adapter(&dev->adapter);
> omap_i2c_write_reg(dev, OMAP_I2C_CON_REG, 0);
> + pm_runtime_disable(&pdev->dev);
> iounmap(dev->base);
> kfree(dev);
> mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
next prev parent reply other threads:[~2012-05-25 21:57 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-02 14:32 [PATCHv9 00/10] I2C fixes Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-02 14:32 ` [PATCHv9 01/10] I2C: OMAP: make omap_i2c_unidle/idle functions depend on CONFIG_PM_RUNTIME Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-02 14:32 ` [PATCHv9 03/10] I2C: OMAP: Fix the interrupt clearing in OMAP4 Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-02 14:32 ` [PATCHv9 04/10] I2C: OMAP: Prevent the register access after pm_runtime_put in probe Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-02 14:32 ` [PATCHv9 07/10] I2C: OMAP: Handle error check for pm runtime Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
[not found] ` <1335969135-20858-8-git-send-email-shubhrajyoti-l0cyMroinI0@public.gmane.org>
2012-05-25 22:06 ` Kevin Hilman
2012-05-25 22:06 ` Kevin Hilman
[not found] ` <87likfkjar.fsf-l0cyMroinI0@public.gmane.org>
2012-05-28 11:22 ` Shubhrajyoti
2012-05-28 11:22 ` Shubhrajyoti
2012-05-02 14:32 ` [PATCHv9 08/10] I2C: OMAP: prevent the overwrite of the errata flags Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-12 18:10 ` [PATCHv9 00/10] I2C fixes Wolfram Sang
2012-05-12 18:10 ` Wolfram Sang
[not found] ` <1335969135-20858-1-git-send-email-shubhrajyoti-l0cyMroinI0@public.gmane.org>
2012-05-02 14:32 ` [PATCHv9 02/10] I2C: OMAP: Fix the mismatch of pm_runtime enable and disable Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-25 21:57 ` Kevin Hilman [this message]
2012-05-25 21:57 ` Kevin Hilman
[not found] ` <87wr3zkjp7.fsf-l0cyMroinI0@public.gmane.org>
2012-05-28 9:59 ` Shubhrajyoti
2012-05-28 9:59 ` Shubhrajyoti
2012-05-02 14:32 ` [PATCHv9 05/10] I2C: OMAP: Don't check if wait_for_completion_timeout() returns less than zero Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-02 14:32 ` [PATCHv9 06/10] I2C: OMAP: Fix the crash in i2c remove Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
[not found] ` <1335969135-20858-7-git-send-email-shubhrajyoti-l0cyMroinI0@public.gmane.org>
2012-05-12 18:10 ` Wolfram Sang
2012-05-12 18:10 ` Wolfram Sang
2012-05-14 11:26 ` Shubhrajyoti
2012-05-14 11:26 ` Shubhrajyoti
[not found] ` <20120512181019.GA28973-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2012-05-25 21:51 ` Kevin Hilman
2012-05-25 21:51 ` Kevin Hilman
2012-05-02 14:32 ` [PATCHv9 09/10] I2C: OMAP: Do not set the XUDF(Transmit underflow) if the underflow is not reached Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-25 22:09 ` Kevin Hilman
2012-05-25 22:09 ` Kevin Hilman
2012-05-02 14:32 ` [PATCHv9 10/10] I2C: OMAP: Rename the 1p153 to the erratum id i462 Shubhrajyoti D
2012-05-02 14:32 ` Shubhrajyoti D
2012-05-25 22:13 ` [PATCHv9 00/10] I2C fixes Kevin Hilman
2012-05-25 22:13 ` Kevin Hilman
2012-05-28 9:52 ` Shubhrajyoti
2012-05-28 9:52 ` Shubhrajyoti
2012-05-25 23:40 ` Kevin Hilman
2012-05-25 23:40 ` Kevin Hilman
[not found] ` <87obpbhls0.fsf-l0cyMroinI0@public.gmane.org>
2012-05-28 9:54 ` Shubhrajyoti
2012-05-28 9:54 ` Shubhrajyoti
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wr3zkjp7.fsf@ti.com \
--to=khilman@ti.com \
--cc=ben-linux@fluff.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=rnayak@ti.com \
--cc=shubhrajyoti@ti.com \
--cc=tony@atomide.com \
--cc=w.sang@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.