* i2c imx: suspicious use of runtime PM calls
@ 2015-08-22 21:42 Heiner Kallweit
[not found] ` <55D8ECBA.6050505-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Heiner Kallweit @ 2015-08-22 21:42 UTC (permalink / raw)
To: Gao Pan; +Cc: linux-i2c-u79uwXL29TY76Z2rM5mHXA, Wolfram Sang
Just by chance I stumbled across this driver and the recently added runtime PM code.
Two things in i2c_imx_probe look suspicious to me:
- You activate the I2C clock and then initialize runtime PM with
pm_runtime_enable(&pdev->dev);
pm_runtime_set_autosuspend_delay(&pdev->dev, I2C_PM_TIMEOUT);
pm_runtime_use_autosuspend(&pdev->dev);
Seems like a call to pm_runtime_set_active is missing to tell runtime PM
that the device is in status "active" now.
- You use pm_runtime_put_autosuspend (which decrements the ref count) but you don't
get a reference before. I think you would have to use pm_runtime_get_... before
or use pm_runtime_autosuspend.
Regards, Heiner
^ permalink raw reply [flat|nested] 3+ messages in thread[parent not found: <55D8ECBA.6050505-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>]
* RE: i2c imx: suspicious use of runtime PM calls [not found] ` <55D8ECBA.6050505-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> @ 2015-08-24 5:08 ` Gao Pandy [not found] ` <CY1PR0301MB0858E9E871CC1D399F45B1B3CF620-YrwGdl+PljlUWoKpOwApjpwN6zqB+hSMnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org> 0 siblings, 1 reply; 3+ messages in thread From: Gao Pandy @ 2015-08-24 5:08 UTC (permalink / raw) To: Heiner Kallweit Cc: linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Wolfram Sang, Gao Pandy From: Heiner Kallweit <mailto:hkallweit1@gmail.com> Sent: Sunday, August 23, 2015 5:42 AM > To: Gao Pan-B54642 > Cc: linux-i2c@vger.kernel.org; Wolfram Sang > Subject: i2c imx: suspicious use of runtime PM calls > > Just by chance I stumbled across this driver and the recently added > runtime PM code. > Two things in i2c_imx_probe look suspicious to me: > > - You activate the I2C clock and then initialize runtime PM with > > pm_runtime_enable(&pdev->dev); > pm_runtime_set_autosuspend_delay(&pdev->dev, I2C_PM_TIMEOUT); > pm_runtime_use_autosuspend(&pdev->dev); > > Seems like a call to pm_runtime_set_active is missing to tell runtime > PM that the device is in status "active" now. Thanks, you are right. I will fix it in next patch. > - You use pm_runtime_put_autosuspend (which decrements the ref count) but > you don't > get a reference before. I think you would have to use pm_runtime_get_... > before or use pm_runtime_autosuspend. Thanks for your precise review. I will fix it in next patch. ^ permalink raw reply [flat|nested] 3+ messages in thread
[parent not found: <CY1PR0301MB0858E9E871CC1D399F45B1B3CF620-YrwGdl+PljlUWoKpOwApjpwN6zqB+hSMnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>]
* Re: i2c imx: suspicious use of runtime PM calls [not found] ` <CY1PR0301MB0858E9E871CC1D399F45B1B3CF620-YrwGdl+PljlUWoKpOwApjpwN6zqB+hSMnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org> @ 2015-08-24 12:09 ` Wolfram Sang 0 siblings, 0 replies; 3+ messages in thread From: Wolfram Sang @ 2015-08-24 12:09 UTC (permalink / raw) To: Gao Pandy Cc: Heiner Kallweit, linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org [-- Attachment #1: Type: text/plain, Size: 679 bytes --] > > Just by chance I stumbled across this driver and the recently added > > runtime PM code. > > Two things in i2c_imx_probe look suspicious to me: > > > > - You activate the I2C clock and then initialize runtime PM with > > > > pm_runtime_enable(&pdev->dev); > > pm_runtime_set_autosuspend_delay(&pdev->dev, I2C_PM_TIMEOUT); > > pm_runtime_use_autosuspend(&pdev->dev); > > > > Seems like a call to pm_runtime_set_active is missing to tell runtime > > PM that the device is in status "active" now. > > Thanks, you are right. I will fix it in next patch. Thanks Heiner for the report. I dropped this patch and will wait for a new version. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-08-24 12:09 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-22 21:42 i2c imx: suspicious use of runtime PM calls Heiner Kallweit
[not found] ` <55D8ECBA.6050505-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-08-24 5:08 ` Gao Pandy
[not found] ` <CY1PR0301MB0858E9E871CC1D399F45B1B3CF620-YrwGdl+PljlUWoKpOwApjpwN6zqB+hSMnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2015-08-24 12:09 ` Wolfram Sang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox