Hello,
I was investigating why CPU hangs during of GPIO driver suspend and in
the end it turned out that it is a Broadcom WiFi driver problem because
it keeps OOB wake-interrupt enabled while WLAN interface is DOWN and this
may cause a bit weird CPU hang on writing to INT_ENB register during of
GPIO driver suspend. Meanwhile I also noticed that a few things could be
improved in the driver, that's what this small series addresses.
Dmitry Osipenko (3):
gpio: tegra: Use generic readl_relaxed/writel_relaxed accessors
gpio: tegra: Properly handle irq_set_irq_wake() error
gpio: tegra: Use NOIRQ phase for suspend/resume
drivers/gpio/gpio-tegra.c | 21 ++++++++++-----------
1 file changed, 10 insertions(+), 11 deletions(-)
--
2.24.0
On Sun, Dec 15, 2019 at 09:30:44PM +0300, Dmitry Osipenko wrote:
> Hello,
>
> I was investigating why CPU hangs during of GPIO driver suspend and in
> the end it turned out that it is a Broadcom WiFi driver problem because
> it keeps OOB wake-interrupt enabled while WLAN interface is DOWN and this
> may cause a bit weird CPU hang on writing to INT_ENB register during of
> GPIO driver suspend. Meanwhile I also noticed that a few things could be
> improved in the driver, that's what this small series addresses.
>
> Dmitry Osipenko (3):
> gpio: tegra: Use generic readl_relaxed/writel_relaxed accessors
> gpio: tegra: Properly handle irq_set_irq_wake() error
> gpio: tegra: Use NOIRQ phase for suspend/resume
>
> drivers/gpio/gpio-tegra.c | 21 ++++++++++-----------
> 1 file changed, 10 insertions(+), 11 deletions(-)
Patches look good:
Reviewed-by: Thierry Reding <[email protected]>
I also applied this series on top of v5.5-rc1 and ran it through our
test system:
Test results:
13 builds: 13 pass, 0 fail
22 boots: 22 pass, 0 fail
34 tests: 34 pass, 0 fail
Linux version: 5.5.0-rc1-g3d0b4fced39e
Boards tested: tegra124-jetson-tk1, tegra186-p2771-0000,
tegra194-p2972-0000, tegra20-ventana,
tegra210-p2371-2180, tegra30-cardhu-a04
All tests passing, so:
Tested-by: Thierry Reding <[email protected]>
19.12.2019 17:53, Thierry Reding пишет:
> On Sun, Dec 15, 2019 at 09:30:44PM +0300, Dmitry Osipenko wrote:
>> Hello,
>>
>> I was investigating why CPU hangs during of GPIO driver suspend and in
>> the end it turned out that it is a Broadcom WiFi driver problem because
>> it keeps OOB wake-interrupt enabled while WLAN interface is DOWN and this
>> may cause a bit weird CPU hang on writing to INT_ENB register during of
>> GPIO driver suspend. Meanwhile I also noticed that a few things could be
>> improved in the driver, that's what this small series addresses.
>>
>> Dmitry Osipenko (3):
>> gpio: tegra: Use generic readl_relaxed/writel_relaxed accessors
>> gpio: tegra: Properly handle irq_set_irq_wake() error
>> gpio: tegra: Use NOIRQ phase for suspend/resume
>>
>> drivers/gpio/gpio-tegra.c | 21 ++++++++++-----------
>> 1 file changed, 10 insertions(+), 11 deletions(-)
>
> Patches look good:
>
> Reviewed-by: Thierry Reding <[email protected]>
>
> I also applied this series on top of v5.5-rc1 and ran it through our
> test system:
>
> Test results:
> 13 builds: 13 pass, 0 fail
> 22 boots: 22 pass, 0 fail
> 34 tests: 34 pass, 0 fail
>
> Linux version: 5.5.0-rc1-g3d0b4fced39e
> Boards tested: tegra124-jetson-tk1, tegra186-p2771-0000,
> tegra194-p2972-0000, tegra20-ventana,
> tegra210-p2371-2180, tegra30-cardhu-a04
>
> All tests passing, so:
>
> Tested-by: Thierry Reding <[email protected]>
>
Thank you very much!
On Sun, Dec 15, 2019 at 7:31 PM Dmitry Osipenko <[email protected]> wrote:
> I was investigating why CPU hangs during of GPIO driver suspend and in
> the end it turned out that it is a Broadcom WiFi driver problem because
> it keeps OOB wake-interrupt enabled while WLAN interface is DOWN and this
> may cause a bit weird CPU hang on writing to INT_ENB register during of
> GPIO driver suspend. Meanwhile I also noticed that a few things could be
> improved in the driver, that's what this small series addresses.
>
> Dmitry Osipenko (3):
> gpio: tegra: Use generic readl_relaxed/writel_relaxed accessors
> gpio: tegra: Properly handle irq_set_irq_wake() error
> gpio: tegra: Use NOIRQ phase for suspend/resume
All three patches applied with Thierry's review/test tag.
Yours,
Linus Walleij
pon., 6 sty 2020 o 23:59 Linus Walleij <[email protected]> napisał(a):
>
> On Sun, Dec 15, 2019 at 7:31 PM Dmitry Osipenko <[email protected]> wrote:
>
> > I was investigating why CPU hangs during of GPIO driver suspend and in
> > the end it turned out that it is a Broadcom WiFi driver problem because
> > it keeps OOB wake-interrupt enabled while WLAN interface is DOWN and this
> > may cause a bit weird CPU hang on writing to INT_ENB register during of
> > GPIO driver suspend. Meanwhile I also noticed that a few things could be
> > improved in the driver, that's what this small series addresses.
> >
> > Dmitry Osipenko (3):
> > gpio: tegra: Use generic readl_relaxed/writel_relaxed accessors
> > gpio: tegra: Properly handle irq_set_irq_wake() error
> > gpio: tegra: Use NOIRQ phase for suspend/resume
>
> All three patches applied with Thierry's review/test tag.
>
> Yours,
> Linus Walleij
Ugh, I now noticed I responded to Thierry only after applying this to my tree.
Anyway, it shouldn't be a problem. I'll take more care next time.
Bart
On Tue, Jan 7, 2020 at 9:25 AM Bartosz Golaszewski
<[email protected]> wrote:
> pon., 6 sty 2020 o 23:59 Linus Walleij <[email protected]> napisał(a):
> > On Sun, Dec 15, 2019 at 7:31 PM Dmitry Osipenko <[email protected]> wrote:
> >
> > > I was investigating why CPU hangs during of GPIO driver suspend and in
> > > the end it turned out that it is a Broadcom WiFi driver problem because
> > > it keeps OOB wake-interrupt enabled while WLAN interface is DOWN and this
> > > may cause a bit weird CPU hang on writing to INT_ENB register during of
> > > GPIO driver suspend. Meanwhile I also noticed that a few things could be
> > > improved in the driver, that's what this small series addresses.
> > >
> > > Dmitry Osipenko (3):
> > > gpio: tegra: Use generic readl_relaxed/writel_relaxed accessors
> > > gpio: tegra: Properly handle irq_set_irq_wake() error
> > > gpio: tegra: Use NOIRQ phase for suspend/resume
> >
> > All three patches applied with Thierry's review/test tag.
> >
> > Yours,
> > Linus Walleij
>
> Ugh, I now noticed I responded to Thierry only after applying this to my tree.
>
> Anyway, it shouldn't be a problem. I'll take more care next time.
OK shall I drop the patches from my tree then? No big deal.
Thanks,
Linus Walleij
wt., 7 sty 2020 o 10:29 Linus Walleij <[email protected]> napisał(a):
>
> On Tue, Jan 7, 2020 at 9:25 AM Bartosz Golaszewski
> <[email protected]> wrote:
>
> > pon., 6 sty 2020 o 23:59 Linus Walleij <[email protected]> napisał(a):
> > > On Sun, Dec 15, 2019 at 7:31 PM Dmitry Osipenko <[email protected]> wrote:
> > >
> > > > I was investigating why CPU hangs during of GPIO driver suspend and in
> > > > the end it turned out that it is a Broadcom WiFi driver problem because
> > > > it keeps OOB wake-interrupt enabled while WLAN interface is DOWN and this
> > > > may cause a bit weird CPU hang on writing to INT_ENB register during of
> > > > GPIO driver suspend. Meanwhile I also noticed that a few things could be
> > > > improved in the driver, that's what this small series addresses.
> > > >
> > > > Dmitry Osipenko (3):
> > > > gpio: tegra: Use generic readl_relaxed/writel_relaxed accessors
> > > > gpio: tegra: Properly handle irq_set_irq_wake() error
> > > > gpio: tegra: Use NOIRQ phase for suspend/resume
> > >
> > > All three patches applied with Thierry's review/test tag.
> > >
> > > Yours,
> > > Linus Walleij
> >
> > Ugh, I now noticed I responded to Thierry only after applying this to my tree.
> >
> > Anyway, it shouldn't be a problem. I'll take more care next time.
>
> OK shall I drop the patches from my tree then? No big deal.
>
If you're fine with this, sure!
Thanks a lot,
Bart
On Tue, Jan 7, 2020 at 10:31 AM Bartosz Golaszewski
<[email protected]> wrote:
> wt., 7 sty 2020 o 10:29 Linus Walleij <[email protected]> napisał(a):
> > > Ugh, I now noticed I responded to Thierry only after applying this to my tree.
> > >
> > > Anyway, it shouldn't be a problem. I'll take more care next time.
> >
> > OK shall I drop the patches from my tree then? No big deal.
> >
>
> If you're fine with this, sure!
OK dropped them, hadn't even pushed the branch out yet.
Soon reaching the top of my mailbox so I will be pushing the branches
for the autobuilders and later tonight for-next.
Yours,
Linus Walleij