Message ID | 20170920223152.100641-2-rajatja@google.com |
---|---|
State | Superseded |
Headers | show |
Series | [1/2] i2c: designware: switch to suspend_late/resume_early | expand |
On Thu, Sep 21, 2017 at 12:31 AM, Rajat Jain <rajatja@google.com> wrote: > Ref: https://lkml.org/lkml/2017/9/19/649 > > The intel-lpss hosts the designware i2c controller device, which > needs to be up and running until all its i2c child devices have > suspended (child devices need to be accessible over i2c until > suspend_late() has been called for all those devices). > > So lets delay the resetting of the controller until suspend_late(). > I thought of renaming function to say *_late / *_early but that > might cause confusion since the same function is also used for runtime > suspend/resume. > > Fixes: 0b471aaa0e1a ("Put I2C and SPI controllers into reset state on suspend") > Signed-off-by: Rajat Jain <rajatja@google.com> > --- > drivers/mfd/intel-lpss.h | 7 +------ > 1 file changed, 1 insertion(+), 6 deletions(-) > > diff --git a/drivers/mfd/intel-lpss.h b/drivers/mfd/intel-lpss.h > index 694116630ffa..865bbeaaf00c 100644 > --- a/drivers/mfd/intel-lpss.h > +++ b/drivers/mfd/intel-lpss.h > @@ -38,12 +38,7 @@ int intel_lpss_resume(struct device *dev); > #ifdef CONFIG_PM_SLEEP > #define INTEL_LPSS_SLEEP_PM_OPS \ > .prepare = intel_lpss_prepare, \ > - .suspend = intel_lpss_suspend, \ > - .resume = intel_lpss_resume, \ > - .freeze = intel_lpss_suspend, \ > - .thaw = intel_lpss_resume, \ > - .poweroff = intel_lpss_suspend, \ > - .restore = intel_lpss_resume, > + SET_LATE_SYSTEM_SLEEP_PM_OPS(intel_lpss_suspend, intel_lpss_resume) > #else > #define INTEL_LPSS_SLEEP_PM_OPS > #endif So I sent this exact patch several days ago: https://patchwork.kernel.org/patch/9939809/ Thanks, Rafael
On Wed, Sep 20, 2017 at 5:27 PM, Rafael J. Wysocki <rafael@kernel.org> wrote: > On Thu, Sep 21, 2017 at 12:31 AM, Rajat Jain <rajatja@google.com> wrote: >> Ref: https://lkml.org/lkml/2017/9/19/649 >> >> The intel-lpss hosts the designware i2c controller device, which >> needs to be up and running until all its i2c child devices have >> suspended (child devices need to be accessible over i2c until >> suspend_late() has been called for all those devices). >> >> So lets delay the resetting of the controller until suspend_late(). >> I thought of renaming function to say *_late / *_early but that >> might cause confusion since the same function is also used for runtime >> suspend/resume. >> >> Fixes: 0b471aaa0e1a ("Put I2C and SPI controllers into reset state on suspend") >> Signed-off-by: Rajat Jain <rajatja@google.com> >> --- >> drivers/mfd/intel-lpss.h | 7 +------ >> 1 file changed, 1 insertion(+), 6 deletions(-) >> >> diff --git a/drivers/mfd/intel-lpss.h b/drivers/mfd/intel-lpss.h >> index 694116630ffa..865bbeaaf00c 100644 >> --- a/drivers/mfd/intel-lpss.h >> +++ b/drivers/mfd/intel-lpss.h >> @@ -38,12 +38,7 @@ int intel_lpss_resume(struct device *dev); >> #ifdef CONFIG_PM_SLEEP >> #define INTEL_LPSS_SLEEP_PM_OPS \ >> .prepare = intel_lpss_prepare, \ >> - .suspend = intel_lpss_suspend, \ >> - .resume = intel_lpss_resume, \ >> - .freeze = intel_lpss_suspend, \ >> - .thaw = intel_lpss_resume, \ >> - .poweroff = intel_lpss_suspend, \ >> - .restore = intel_lpss_resume, >> + SET_LATE_SYSTEM_SLEEP_PM_OPS(intel_lpss_suspend, intel_lpss_resume) >> #else >> #define INTEL_LPSS_SLEEP_PM_OPS >> #endif > > So I sent this exact patch several days ago: > https://patchwork.kernel.org/patch/9939809/ Sorry, I missed it. Please consider my patch withdrawn / self-nack'ed in favor of Rafael's patch. > > Thanks, > Rafael
On Thu, 21 Sep 2017, Rafael J. Wysocki wrote: > On Thu, Sep 21, 2017 at 12:31 AM, Rajat Jain <rajatja@google.com> wrote: > > Ref: https://lkml.org/lkml/2017/9/19/649 > > > > The intel-lpss hosts the designware i2c controller device, which > > needs to be up and running until all its i2c child devices have > > suspended (child devices need to be accessible over i2c until > > suspend_late() has been called for all those devices). > > > > So lets delay the resetting of the controller until suspend_late(). > > I thought of renaming function to say *_late / *_early but that > > might cause confusion since the same function is also used for runtime > > suspend/resume. > > > > Fixes: 0b471aaa0e1a ("Put I2C and SPI controllers into reset state on suspend") > > Signed-off-by: Rajat Jain <rajatja@google.com> > > --- > > drivers/mfd/intel-lpss.h | 7 +------ > > 1 file changed, 1 insertion(+), 6 deletions(-) > > > > diff --git a/drivers/mfd/intel-lpss.h b/drivers/mfd/intel-lpss.h > > index 694116630ffa..865bbeaaf00c 100644 > > --- a/drivers/mfd/intel-lpss.h > > +++ b/drivers/mfd/intel-lpss.h > > @@ -38,12 +38,7 @@ int intel_lpss_resume(struct device *dev); > > #ifdef CONFIG_PM_SLEEP > > #define INTEL_LPSS_SLEEP_PM_OPS \ > > .prepare = intel_lpss_prepare, \ > > - .suspend = intel_lpss_suspend, \ > > - .resume = intel_lpss_resume, \ > > - .freeze = intel_lpss_suspend, \ > > - .thaw = intel_lpss_resume, \ > > - .poweroff = intel_lpss_suspend, \ > > - .restore = intel_lpss_resume, > > + SET_LATE_SYSTEM_SLEEP_PM_OPS(intel_lpss_suspend, intel_lpss_resume) > > #else > > #define INTEL_LPSS_SLEEP_PM_OPS > > #endif > > So I sent this exact patch several days ago: > https://patchwork.kernel.org/patch/9939809/ You did? Any reason you didn't send it to me?
On Thursday, September 21, 2017 10:41:33 AM CEST Lee Jones wrote: > On Thu, 21 Sep 2017, Rafael J. Wysocki wrote: > > > On Thu, Sep 21, 2017 at 12:31 AM, Rajat Jain <rajatja@google.com> wrote: > > > Ref: https://lkml.org/lkml/2017/9/19/649 > > > > > > The intel-lpss hosts the designware i2c controller device, which > > > needs to be up and running until all its i2c child devices have > > > suspended (child devices need to be accessible over i2c until > > > suspend_late() has been called for all those devices). > > > > > > So lets delay the resetting of the controller until suspend_late(). > > > I thought of renaming function to say *_late / *_early but that > > > might cause confusion since the same function is also used for runtime > > > suspend/resume. > > > > > > Fixes: 0b471aaa0e1a ("Put I2C and SPI controllers into reset state on suspend") > > > Signed-off-by: Rajat Jain <rajatja@google.com> > > > --- > > > drivers/mfd/intel-lpss.h | 7 +------ > > > 1 file changed, 1 insertion(+), 6 deletions(-) > > > > > > diff --git a/drivers/mfd/intel-lpss.h b/drivers/mfd/intel-lpss.h > > > index 694116630ffa..865bbeaaf00c 100644 > > > --- a/drivers/mfd/intel-lpss.h > > > +++ b/drivers/mfd/intel-lpss.h > > > @@ -38,12 +38,7 @@ int intel_lpss_resume(struct device *dev); > > > #ifdef CONFIG_PM_SLEEP > > > #define INTEL_LPSS_SLEEP_PM_OPS \ > > > .prepare = intel_lpss_prepare, \ > > > - .suspend = intel_lpss_suspend, \ > > > - .resume = intel_lpss_resume, \ > > > - .freeze = intel_lpss_suspend, \ > > > - .thaw = intel_lpss_resume, \ > > > - .poweroff = intel_lpss_suspend, \ > > > - .restore = intel_lpss_resume, > > > + SET_LATE_SYSTEM_SLEEP_PM_OPS(intel_lpss_suspend, intel_lpss_resume) > > > #else > > > #define INTEL_LPSS_SLEEP_PM_OPS > > > #endif > > > > So I sent this exact patch several days ago: > > https://patchwork.kernel.org/patch/9939809/ > > You did? Yes, I did. > Any reason you didn't send it to me? Well, Lee Jones <lee@kernel.org> is very much in the CC list of it. Was I expected to use a different e-mail address for that? Thanks, Rafael
On Thu, 21 Sep 2017, Rafael J. Wysocki wrote: > On Thursday, September 21, 2017 10:41:33 AM CEST Lee Jones wrote: > > On Thu, 21 Sep 2017, Rafael J. Wysocki wrote: > > > > > On Thu, Sep 21, 2017 at 12:31 AM, Rajat Jain <rajatja@google.com> wrote: > > > > Ref: https://lkml.org/lkml/2017/9/19/649 > > > > > > > > The intel-lpss hosts the designware i2c controller device, which > > > > needs to be up and running until all its i2c child devices have > > > > suspended (child devices need to be accessible over i2c until > > > > suspend_late() has been called for all those devices). > > > > > > > > So lets delay the resetting of the controller until suspend_late(). > > > > I thought of renaming function to say *_late / *_early but that > > > > might cause confusion since the same function is also used for runtime > > > > suspend/resume. > > > > > > > > Fixes: 0b471aaa0e1a ("Put I2C and SPI controllers into reset state on suspend") > > > > Signed-off-by: Rajat Jain <rajatja@google.com> > > > > --- > > > > drivers/mfd/intel-lpss.h | 7 +------ > > > > 1 file changed, 1 insertion(+), 6 deletions(-) > > > > > > > > diff --git a/drivers/mfd/intel-lpss.h b/drivers/mfd/intel-lpss.h > > > > index 694116630ffa..865bbeaaf00c 100644 > > > > --- a/drivers/mfd/intel-lpss.h > > > > +++ b/drivers/mfd/intel-lpss.h > > > > @@ -38,12 +38,7 @@ int intel_lpss_resume(struct device *dev); > > > > #ifdef CONFIG_PM_SLEEP > > > > #define INTEL_LPSS_SLEEP_PM_OPS \ > > > > .prepare = intel_lpss_prepare, \ > > > > - .suspend = intel_lpss_suspend, \ > > > > - .resume = intel_lpss_resume, \ > > > > - .freeze = intel_lpss_suspend, \ > > > > - .thaw = intel_lpss_resume, \ > > > > - .poweroff = intel_lpss_suspend, \ > > > > - .restore = intel_lpss_resume, > > > > + SET_LATE_SYSTEM_SLEEP_PM_OPS(intel_lpss_suspend, intel_lpss_resume) > > > > #else > > > > #define INTEL_LPSS_SLEEP_PM_OPS > > > > #endif > > > > > > So I sent this exact patch several days ago: > > > https://patchwork.kernel.org/patch/9939809/ > > > > You did? > > Yes, I did. > > > Any reason you didn't send it to me? > > Well, Lee Jones <lee@kernel.org> is very much in the CC list of it. > > Was I expected to use a different e-mail address for that? I don't monitor that one. Better to use the one in MAINTAINERS.
On Thu, Sep 21, 2017 at 5:17 PM, Lee Jones <lee.jones@linaro.org> wrote: > On Thu, 21 Sep 2017, Rafael J. Wysocki wrote: > >> On Thursday, September 21, 2017 10:41:33 AM CEST Lee Jones wrote: >> > On Thu, 21 Sep 2017, Rafael J. Wysocki wrote: >> > >> > > On Thu, Sep 21, 2017 at 12:31 AM, Rajat Jain <rajatja@google.com> wrote: >> > > > Ref: https://lkml.org/lkml/2017/9/19/649 >> > > > >> > > > The intel-lpss hosts the designware i2c controller device, which >> > > > needs to be up and running until all its i2c child devices have >> > > > suspended (child devices need to be accessible over i2c until >> > > > suspend_late() has been called for all those devices). >> > > > >> > > > So lets delay the resetting of the controller until suspend_late(). >> > > > I thought of renaming function to say *_late / *_early but that >> > > > might cause confusion since the same function is also used for runtime >> > > > suspend/resume. >> > > > >> > > > Fixes: 0b471aaa0e1a ("Put I2C and SPI controllers into reset state on suspend") >> > > > Signed-off-by: Rajat Jain <rajatja@google.com> >> > > > --- >> > > > drivers/mfd/intel-lpss.h | 7 +------ >> > > > 1 file changed, 1 insertion(+), 6 deletions(-) >> > > > >> > > > diff --git a/drivers/mfd/intel-lpss.h b/drivers/mfd/intel-lpss.h >> > > > index 694116630ffa..865bbeaaf00c 100644 >> > > > --- a/drivers/mfd/intel-lpss.h >> > > > +++ b/drivers/mfd/intel-lpss.h >> > > > @@ -38,12 +38,7 @@ int intel_lpss_resume(struct device *dev); >> > > > #ifdef CONFIG_PM_SLEEP >> > > > #define INTEL_LPSS_SLEEP_PM_OPS \ >> > > > .prepare = intel_lpss_prepare, \ >> > > > - .suspend = intel_lpss_suspend, \ >> > > > - .resume = intel_lpss_resume, \ >> > > > - .freeze = intel_lpss_suspend, \ >> > > > - .thaw = intel_lpss_resume, \ >> > > > - .poweroff = intel_lpss_suspend, \ >> > > > - .restore = intel_lpss_resume, >> > > > + SET_LATE_SYSTEM_SLEEP_PM_OPS(intel_lpss_suspend, intel_lpss_resume) >> > > > #else >> > > > #define INTEL_LPSS_SLEEP_PM_OPS >> > > > #endif >> > > >> > > So I sent this exact patch several days ago: >> > > https://patchwork.kernel.org/patch/9939809/ >> > >> > You did? >> >> Yes, I did. >> >> > Any reason you didn't send it to me? >> >> Well, Lee Jones <lee@kernel.org> is very much in the CC list of it. >> >> Was I expected to use a different e-mail address for that? > > I don't monitor that one. Better to use the one in MAINTAINERS. OK, I will in the future.
diff --git a/drivers/mfd/intel-lpss.h b/drivers/mfd/intel-lpss.h index 694116630ffa..865bbeaaf00c 100644 --- a/drivers/mfd/intel-lpss.h +++ b/drivers/mfd/intel-lpss.h @@ -38,12 +38,7 @@ int intel_lpss_resume(struct device *dev); #ifdef CONFIG_PM_SLEEP #define INTEL_LPSS_SLEEP_PM_OPS \ .prepare = intel_lpss_prepare, \ - .suspend = intel_lpss_suspend, \ - .resume = intel_lpss_resume, \ - .freeze = intel_lpss_suspend, \ - .thaw = intel_lpss_resume, \ - .poweroff = intel_lpss_suspend, \ - .restore = intel_lpss_resume, + SET_LATE_SYSTEM_SLEEP_PM_OPS(intel_lpss_suspend, intel_lpss_resume) #else #define INTEL_LPSS_SLEEP_PM_OPS #endif
Ref: https://lkml.org/lkml/2017/9/19/649 The intel-lpss hosts the designware i2c controller device, which needs to be up and running until all its i2c child devices have suspended (child devices need to be accessible over i2c until suspend_late() has been called for all those devices). So lets delay the resetting of the controller until suspend_late(). I thought of renaming function to say *_late / *_early but that might cause confusion since the same function is also used for runtime suspend/resume. Fixes: 0b471aaa0e1a ("Put I2C and SPI controllers into reset state on suspend") Signed-off-by: Rajat Jain <rajatja@google.com> --- drivers/mfd/intel-lpss.h | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)