Message ID | 1429008108-29295-1-git-send-email-ulf.hansson@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Apr 14, 2015 at 12:41:48PM +0200, Ulf Hansson wrote: > The legacy system PM support has long time ago been dropped from the > AMBA bus. Align to that by converting to the modern system PM > callbacks. > > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> If this has not been noticed since end of 2013 maybe we should drop the driver? > --- > drivers/input/serio/ambakmi.c | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/drivers/input/serio/ambakmi.c b/drivers/input/serio/ambakmi.c > index 8b748d9..058e1d8 100644 > --- a/drivers/input/serio/ambakmi.c > +++ b/drivers/input/serio/ambakmi.c > @@ -175,15 +175,19 @@ static int amba_kmi_remove(struct amba_device *dev) > return 0; > } > > -static int amba_kmi_resume(struct amba_device *dev) > +#ifdef CONFIG_PM_SLEEP > +static int amba_kmi_resume(struct device *dev) > { > - struct amba_kmi_port *kmi = amba_get_drvdata(dev); > + struct amba_kmi_port *kmi = dev_get_drvdata(dev); > > /* kick the serio layer to rescan this port */ > serio_reconnect(kmi->io); > > return 0; > } > +#endif > + > +static SIMPLE_DEV_PM_OPS(amba_kmi_dev_pm_ops, NULL, amba_kmi_resume); > > static struct amba_id amba_kmi_idtable[] = { > { > @@ -199,11 +203,11 @@ static struct amba_driver ambakmi_driver = { > .drv = { > .name = "kmi-pl050", > .owner = THIS_MODULE, > + .pm = &amba_kmi_dev_pm_ops, > }, > .id_table = amba_kmi_idtable, > .probe = amba_kmi_probe, > .remove = amba_kmi_remove, > - .resume = amba_kmi_resume, > }; > > module_amba_driver(ambakmi_driver); > -- > 1.9.1 >
On Tue, Apr 14, 2015 at 09:22:10AM -0700, Dmitry Torokhov wrote: > On Tue, Apr 14, 2015 at 12:41:48PM +0200, Ulf Hansson wrote: > > The legacy system PM support has long time ago been dropped from the > > AMBA bus. Align to that by converting to the modern system PM > > callbacks. > > > > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > > If this has not been noticed since end of 2013 maybe we should drop the > driver? That's rather silly. It isn't a build breakage, and it's not a functional breakage. In fact, this driver gets build and boot tested every evening on hardware I have here in my autobuild system. The regression is only visible if it is used on a platform with power management support, and that's probably close to none - unless hibernate support is enabled. I'm just pushing up some patches which fix long term hibernation issues on ARM. If we apply your "lets drop stuff" argument, maybe we should drop ARM hibernation support because its been broken for many years... obviously that's also a rediculous suggestion.
On Tue, Apr 14, 2015 at 11:30:29PM +0100, Russell King - ARM Linux wrote: > On Tue, Apr 14, 2015 at 09:22:10AM -0700, Dmitry Torokhov wrote: > > On Tue, Apr 14, 2015 at 12:41:48PM +0200, Ulf Hansson wrote: > > > The legacy system PM support has long time ago been dropped from the > > > AMBA bus. Align to that by converting to the modern system PM > > > callbacks. > > > > > > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > > > > If this has not been noticed since end of 2013 maybe we should drop the > > driver? > > That's rather silly. It isn't a build breakage, and it's not a > functional breakage. In fact, this driver gets build and boot tested > every evening on hardware I have here in my autobuild system. OK. > > The regression is only visible if it is used on a platform with power > management support, and that's probably close to none - unless hibernate > support is enabled. I'm just pushing up some patches which fix long > term hibernation issues on ARM. > > If we apply your "lets drop stuff" argument, maybe we should drop ARM > hibernation support because its been broken for many years... obviously > that's also a rediculous suggestion. Why is it a ridiculous suggestion? If it has been broken for many years I do not see why it has to be kept? Is there someone who is actively working on making it functional? Thanks.
On Tue, Apr 14, 2015 at 04:58:22PM -0700, Dmitry Torokhov wrote: > On Tue, Apr 14, 2015 at 11:30:29PM +0100, Russell King - ARM Linux wrote: > > On Tue, Apr 14, 2015 at 09:22:10AM -0700, Dmitry Torokhov wrote: > > > On Tue, Apr 14, 2015 at 12:41:48PM +0200, Ulf Hansson wrote: > > > > The legacy system PM support has long time ago been dropped from the > > > > AMBA bus. Align to that by converting to the modern system PM > > > > callbacks. > > > > > > > > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > > > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > > > > > > If this has not been noticed since end of 2013 maybe we should drop the > > > driver? > > > > That's rather silly. It isn't a build breakage, and it's not a > > functional breakage. In fact, this driver gets build and boot tested > > every evening on hardware I have here in my autobuild system. > > OK. > > > > > The regression is only visible if it is used on a platform with power > > management support, and that's probably close to none - unless hibernate > > support is enabled. I'm just pushing up some patches which fix long > > term hibernation issues on ARM. > > > > If we apply your "lets drop stuff" argument, maybe we should drop ARM > > hibernation support because its been broken for many years... obviously > > that's also a rediculous suggestion. > > Why is it a ridiculous suggestion? If it has been broken for many > years I do not see why it has to be kept? Is there someone who is > actively working on making it functional? I *didn't* say it was broken everywhere - it's exactly the same situation as ambakmi. It doesn't work in a certain scenario, but that doesn't mean it doesn't work at all, and it doesn't mean that there are no users of it. The lesson I'm trying to teach you is that a patch or a report which says something is broken does not _necessarily_ mean it's broken everywhere, and jumping on the "oh we can remove it then" bandwagon immediately without taking the time to understand the nature of the breakage is a totally rediculous attitude for a kernel maintainer to take. In fact, it's positively harmful. Had I not noticed your message, you would have probably ended up removing a driver which is very much in use, is functional, and therefore is not as broken as Ulf claims. The other lesson to come away from this is that just because someone claims something is broken does *not* make it broken. It means _they_ are seeing some problem which maybe no one else is seeing. Again, that's no basis to jump on the "lets remove the whole driver then" bandwagon. And I doubt that Ulf even has the hardware to be able to test this change, which makes it even worse. So please, stop this idiotic "someone reports something broken, lets remove the driver" attitude without first analysing whether the breakage actually prevents anyone from using the driver.
[...] > > Had I not noticed your message, you would have probably ended up removing > a driver which is very much in use, is functional, and therefore is not > as broken as Ulf claims. I claimed the system PM needed to be fixed, nothing else. :-) > > The other lesson to come away from this is that just because someone claims > something is broken does *not* make it broken. It means _they_ are seeing > some problem which maybe no one else is seeing. Again, that's no basis to > jump on the "lets remove the whole driver then" bandwagon. > > And I doubt that Ulf even has the hardware to be able to test this change, > which makes it even worse. Correct, this patch is only compile time tested. Actually I found it when I just realized that commit 26825cfd90f9 ("ARM: 7914/1: amba: Drop legacy PM support and use the pm_generic functions"), missed to remove the legacy system PM callbacks from the struct amba_driver, as it should have. I intended to send a patch for the above when I found these legacy callbacks still being used. Somehow I missed this once when removing the legacy system PM support in the amba bus. Sorry about that. Kind regards Uffe -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Apr 15, 2015 at 10:32:45AM +0100, Russell King - ARM Linux wrote: > On Tue, Apr 14, 2015 at 04:58:22PM -0700, Dmitry Torokhov wrote: > > On Tue, Apr 14, 2015 at 11:30:29PM +0100, Russell King - ARM Linux wrote: > > > On Tue, Apr 14, 2015 at 09:22:10AM -0700, Dmitry Torokhov wrote: > > > > On Tue, Apr 14, 2015 at 12:41:48PM +0200, Ulf Hansson wrote: > > > > > The legacy system PM support has long time ago been dropped from the > > > > > AMBA bus. Align to that by converting to the modern system PM > > > > > callbacks. > > > > > > > > > > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > > > > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > > > > > > > > If this has not been noticed since end of 2013 maybe we should drop the > > > > driver? > > > > > > That's rather silly. It isn't a build breakage, and it's not a > > > functional breakage. In fact, this driver gets build and boot tested > > > every evening on hardware I have here in my autobuild system. > > > > OK. > > > > > > > > The regression is only visible if it is used on a platform with power > > > management support, and that's probably close to none - unless hibernate > > > support is enabled. I'm just pushing up some patches which fix long > > > term hibernation issues on ARM. > > > > > > If we apply your "lets drop stuff" argument, maybe we should drop ARM > > > hibernation support because its been broken for many years... obviously > > > that's also a rediculous suggestion. > > > > Why is it a ridiculous suggestion? If it has been broken for many > > years I do not see why it has to be kept? Is there someone who is > > actively working on making it functional? > > I *didn't* say it was broken everywhere - it's exactly the same situation > as ambakmi. It doesn't work in a certain scenario, but that doesn't mean > it doesn't work at all, and it doesn't mean that there are no users of it. I can only go by what you told me and if you re-read what you wrote above you will see that you said that "ARM hibernation support ... been broken for many years". You did not say that if was broken only in certain cases. > > The lesson I'm trying to teach you is that a patch or a report which says I do not need to you to "teach me a lesson", thank you very much. Please keep your condescension to yourself. > something is broken does not _necessarily_ mean it's broken everywhere, > and jumping on the "oh we can remove it then" bandwagon immediately without > taking the time to understand the nature of the breakage is a totally > rediculous attitude for a kernel maintainer to take. In fact, it's > positively harmful. > > Had I not noticed your message, you would have probably ended up removing > a driver which is very much in use, is functional, and therefore is not > as broken as Ulf claims. > > The other lesson to come away from this is that just because someone claims > something is broken does *not* make it broken. It means _they_ are seeing > some problem which maybe no one else is seeing. Again, that's no basis to > jump on the "lets remove the whole driver then" bandwagon. You were on the mail as well as arm list, so I was not concerned about accidentally removing something that is in active use. Still, when I see a patch to a driver that claims to fix a regression in basic functionality (and I do consider PM basic functionality nowadays) that was introduced about year and a half ago the question if this driver is still relevant is warranted. I can't keep in mind everyone's pet sub-arches and whether all drivers are used or not. > > And I doubt that Ulf even has the hardware to be able to test this change, > which makes it even worse. But you will be able to, right? > > So please, stop this idiotic "someone reports something broken, lets remove > the driver" attitude without first analysing whether the breakage actually > prevents anyone from using the driver. Did you see the patch going in removing the driver? No? So take it easy, the process worked as it should have been - the question was posted and the answer was given. Thanks.
On 14 April 2015 at 12:41, Ulf Hansson <ulf.hansson@linaro.org> wrote: > The legacy system PM support has long time ago been dropped from the > AMBA bus. Align to that by converting to the modern system PM > callbacks. > > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> What happened with this one? Can we queue it for 4.2? Kind regards Uffe > --- > drivers/input/serio/ambakmi.c | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/drivers/input/serio/ambakmi.c b/drivers/input/serio/ambakmi.c > index 8b748d9..058e1d8 100644 > --- a/drivers/input/serio/ambakmi.c > +++ b/drivers/input/serio/ambakmi.c > @@ -175,15 +175,19 @@ static int amba_kmi_remove(struct amba_device *dev) > return 0; > } > > -static int amba_kmi_resume(struct amba_device *dev) > +#ifdef CONFIG_PM_SLEEP > +static int amba_kmi_resume(struct device *dev) > { > - struct amba_kmi_port *kmi = amba_get_drvdata(dev); > + struct amba_kmi_port *kmi = dev_get_drvdata(dev); > > /* kick the serio layer to rescan this port */ > serio_reconnect(kmi->io); > > return 0; > } > +#endif > + > +static SIMPLE_DEV_PM_OPS(amba_kmi_dev_pm_ops, NULL, amba_kmi_resume); > > static struct amba_id amba_kmi_idtable[] = { > { > @@ -199,11 +203,11 @@ static struct amba_driver ambakmi_driver = { > .drv = { > .name = "kmi-pl050", > .owner = THIS_MODULE, > + .pm = &amba_kmi_dev_pm_ops, > }, > .id_table = amba_kmi_idtable, > .probe = amba_kmi_probe, > .remove = amba_kmi_remove, > - .resume = amba_kmi_resume, > }; > > module_amba_driver(ambakmi_driver); > -- > 1.9.1 > -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, May 22, 2015 at 04:37:12PM +0200, Ulf Hansson wrote: > On 14 April 2015 at 12:41, Ulf Hansson <ulf.hansson@linaro.org> wrote: > > The legacy system PM support has long time ago been dropped from the > > AMBA bus. Align to that by converting to the modern system PM > > callbacks. > > > > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > > What happened with this one? Can we queue it for 4.2? Why does it have a Fixes: tag? Is it fixing a real bug, or is it just fixing a warning that the kernel prints?
On Fri, May 22, 2015 at 04:37:12PM +0200, Ulf Hansson wrote: > On 14 April 2015 at 12:41, Ulf Hansson <ulf.hansson@linaro.org> wrote: > > The legacy system PM support has long time ago been dropped from the > > AMBA bus. Align to that by converting to the modern system PM > > callbacks. > > > > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > > What happened with this one? Can we queue it for 4.2? I was hoping that Russel could give it a spin since he has the relevant hardware. Thanks.
On 22 May 2015 at 16:39, Russell King - ARM Linux <linux@arm.linux.org.uk> wrote: > On Fri, May 22, 2015 at 04:37:12PM +0200, Ulf Hansson wrote: >> On 14 April 2015 at 12:41, Ulf Hansson <ulf.hansson@linaro.org> wrote: >> > The legacy system PM support has long time ago been dropped from the >> > AMBA bus. Align to that by converting to the modern system PM >> > callbacks. >> > >> > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) >> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> >> >> What happened with this one? Can we queue it for 4.2? > > Why does it have a Fixes: tag? Is it fixing a real bug, or is it just > fixing a warning that the kernel prints? I would expect it to fix a real bug, but I am not able to test this on HW. Since the commit 26825cfd90f9, the amba bus doesn't invoke the legacy system PM callbacks any more. Instead it uses pm_generic_resume() as its ->resume() callback which means amba_kmi_resume() won't be invoked during system PM resume. Kind regards Uffe -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 22 May 2015 at 18:49, Dmitry Torokhov <dmitry.torokhov@gmail.com> wrote: > On Fri, May 22, 2015 at 04:37:12PM +0200, Ulf Hansson wrote: >> On 14 April 2015 at 12:41, Ulf Hansson <ulf.hansson@linaro.org> wrote: >> > The legacy system PM support has long time ago been dropped from the >> > AMBA bus. Align to that by converting to the modern system PM >> > callbacks. >> > >> > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) >> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> >> >> What happened with this one? Can we queue it for 4.2? > > I was hoping that Russel could give it a spin since he has the > relevant hardware. > Hmm, as there are still no progress could we give it a try and queue it to get some test in linux-next? I think the patch is trivial and it would be nice to get it queued as a fix. Kind regards Uffe -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Jul 16, 2015 at 10:48:06AM +0200, Ulf Hansson wrote: > On 22 May 2015 at 18:49, Dmitry Torokhov <dmitry.torokhov@gmail.com> wrote: > > On Fri, May 22, 2015 at 04:37:12PM +0200, Ulf Hansson wrote: > >> On 14 April 2015 at 12:41, Ulf Hansson <ulf.hansson@linaro.org> wrote: > >> > The legacy system PM support has long time ago been dropped from the > >> > AMBA bus. Align to that by converting to the modern system PM > >> > callbacks. > >> > > >> > Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) > >> > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > >> > >> What happened with this one? Can we queue it for 4.2? > > > > I was hoping that Russel could give it a spin since he has the > > relevant hardware. > > > > Hmm, as there are still no progress could we give it a try and queue > it to get some test in linux-next? I think the patch is trivial and it > would be nice to get it queued as a fix. Yep. I removed #ifdef CONFIG_PM_SLEEP guard in favor of __maybe_unused and applied. Thanks.
diff --git a/drivers/input/serio/ambakmi.c b/drivers/input/serio/ambakmi.c index 8b748d9..058e1d8 100644 --- a/drivers/input/serio/ambakmi.c +++ b/drivers/input/serio/ambakmi.c @@ -175,15 +175,19 @@ static int amba_kmi_remove(struct amba_device *dev) return 0; } -static int amba_kmi_resume(struct amba_device *dev) +#ifdef CONFIG_PM_SLEEP +static int amba_kmi_resume(struct device *dev) { - struct amba_kmi_port *kmi = amba_get_drvdata(dev); + struct amba_kmi_port *kmi = dev_get_drvdata(dev); /* kick the serio layer to rescan this port */ serio_reconnect(kmi->io); return 0; } +#endif + +static SIMPLE_DEV_PM_OPS(amba_kmi_dev_pm_ops, NULL, amba_kmi_resume); static struct amba_id amba_kmi_idtable[] = { { @@ -199,11 +203,11 @@ static struct amba_driver ambakmi_driver = { .drv = { .name = "kmi-pl050", .owner = THIS_MODULE, + .pm = &amba_kmi_dev_pm_ops, }, .id_table = amba_kmi_idtable, .probe = amba_kmi_probe, .remove = amba_kmi_remove, - .resume = amba_kmi_resume, }; module_amba_driver(ambakmi_driver);
The legacy system PM support has long time ago been dropped from the AMBA bus. Align to that by converting to the modern system PM callbacks. Fixes: 26825cfd90f9 (ARM: 7914/1: amba: Drop legacy PM support ...) Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> --- drivers/input/serio/ambakmi.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)