All of lore.kernel.org
 help / color / mirror / Atom feed
From: Doug Anderson <dianders@chromium.org>
To: Minas Harutyunyan <Minas.Harutyunyan@synopsys.com>
Cc: "John Youn" <John.Youn@synopsys.com>,
	"Felipe Balbi" <balbi@kernel.org>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	linux-usb@vger.kernel.org, "Felipe Balbi" <balbi@ti.com>,
	"Heiko Stübner" <heiko.stuebner@collabora.com>,
	"# 4.0+" <stable@vger.kernel.org>,
	"Frank Mori Hess" <fmh6jj@gmail.com>
Subject: Re: [PATCH] usb: dwc2: Fix shutdown callback in platform
Date: Fri, 29 May 2020 07:49:26 -0700	[thread overview]
Message-ID: <CAD=FV=W1x_HJNCYMUb11QNA8yGs0heEiZzHZdeMPzFaRHaTOsA@mail.gmail.com> (raw)
In-Reply-To: <1d3bae1b3048f5d6e19f7ef569dd77e9e160a026.1590753016.git.hminas@synopsys.com>

Hi,

On Fri, May 29, 2020 at 4:51 AM Minas Harutyunyan
<Minas.Harutyunyan@synopsys.com> wrote:
>
> To avoid lot of interrupts from dwc2 core, which can be asserted in
> specific conditions need to disable interrupts on HW level instead of
> disable IRQs on Kernel level, because of IRQ can be shared between
> drivers.
>
> Cc: stable@vger.kernel.org
> Fixes: a40a00318c7fc ("usb: dwc2: add shutdown callback to platform variant")
> Tested-by: Frank Mori Hess <fmh6jj@gmail.com>
> Signed-off-by: Minas Harutyunyan <hminas@synopsys.com>
> ---
>  drivers/usb/dwc2/platform.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/usb/dwc2/platform.c b/drivers/usb/dwc2/platform.c
> index e571c8ae65ec..ada5b66b948e 100644
> --- a/drivers/usb/dwc2/platform.c
> +++ b/drivers/usb/dwc2/platform.c
> @@ -342,7 +342,7 @@ static void dwc2_driver_shutdown(struct platform_device *dev)
>  {
>         struct dwc2_hsotg *hsotg = platform_get_drvdata(dev);
>
> -       disable_irq(hsotg->irq);
> +       dwc2_disable_global_interrupts(hsotg);
>  }

I could be wrong, but I think it would be better to instead end up
with both calls, like:

dwc2_disable_global_interrupts(hsotg);
disable_irq(hsotg->irq);

To some extent it's slightly overkill, but the disable_irq() function
has the nice "and wait for completion" bit.  Your new call doesn't do
this.

That being said, though, you still won't wait for the completion of
the IRQ handler for the "other drivers" you reference, right.  Maybe a
better fix would be to add a shutdown callback for those other drivers
and just keep relying on disable_irq()?


-Doug

  reply	other threads:[~2020-05-29 14:49 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-29 11:56 [PATCH] usb: dwc2: Fix shutdown callback in platform Minas Harutyunyan
2020-05-29 14:49 ` Doug Anderson [this message]
     [not found]   ` <0f6b1580-41d8-b7e7-206b-64cda87abfd5@synopsys.com>
2020-05-29 16:37     ` Doug Anderson
2020-05-29 17:44       ` Frank Mori Hess
2020-05-29 17:52         ` Doug Anderson
2020-05-29 18:21           ` Frank Mori Hess
2020-05-29 18:45             ` Doug Anderson
2020-05-29 19:00               ` Alan Stern
2020-05-29 19:07                 ` Doug Anderson
     [not found]                   ` <52f936c5-7f3f-5da0-33b8-3e6d4a4008d1@synopsys.com>
2020-05-29 19:45                     ` Frank Mori Hess
2020-05-29 19:46                       ` Doug Anderson
     [not found]                         ` <f68ce0c2-7014-64ff-73e3-94d93897e3b2@synopsys.com>
2020-05-29 20:29                           ` Frank Mori Hess

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='CAD=FV=W1x_HJNCYMUb11QNA8yGs0heEiZzHZdeMPzFaRHaTOsA@mail.gmail.com' \
    --to=dianders@chromium.org \
    --cc=John.Youn@synopsys.com \
    --cc=Minas.Harutyunyan@synopsys.com \
    --cc=balbi@kernel.org \
    --cc=balbi@ti.com \
    --cc=fmh6jj@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=heiko.stuebner@collabora.com \
    --cc=linux-usb@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /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.