RE: [RFC] xhci: free legacy irq in xhci driver.

2014-07-31 Thread Wang, Yu Y
> On Fri, Aug 01, 2014 at 11:00:08AM +0800, Wang, Yu wrote:
> > From: "Wang, Yu" 
> >
> > By current xhci ISR request/release flow, the IRQ request be done by
> > xhci driver(xhci_run) whatever it is legacy irq or MSI. But the IRQ
> > release flow is a little mess, MSI release be handled by xhci
> > driver(xhci_stop), and legacy IRQ release be handled by USB core when
> > hcd is removing(usb_remove_hcd).
> >
> > There have one bug if XHCI_BROKEN_MSI quirk be set and meet STS_SRE
> > error during xhci resuming(xhci_resume), it will cause the xhci ISR be
> > requested more times.
> >
> > The reason is xhci driver will try to re-initialize all registers and
> > related structures to rescue the restore operation failure. And it
> > will call xhci_cleanup_msix to release the ISR and call xhci_run to
> > re-request it. In this flow, hcd will not be remove so USB core will
> > not to free the legacy xhci ISR. For MSI case, it should be fine due
> > to they will be free in xhci_cleanup_msix. But if XHCI_BROKEN_MSI
> > quirk be set, the xhci will use legacy irq then reproduce this issue.
> >
> > This patch will unify the xhci irq request/release flow in xhci driver
> > to avoid involve USB core.
> >
> > Change-Id: I85d589b9c7849c471595da89e5b63347bc3a2939
> 
> Why is this line here?  Please don't do that...

[Yu:] Oh. Sorry. It is some intel internal tool add it. I will remove it.
Thanks
Yu
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [RFC] xhci: free legacy irq in xhci driver.

2014-07-31 Thread Greg KH
On Fri, Aug 01, 2014 at 11:00:08AM +0800, Wang, Yu wrote:
> From: "Wang, Yu" 
> 
> By current xhci ISR request/release flow, the IRQ request be done by
> xhci driver(xhci_run) whatever it is legacy irq or MSI. But the IRQ
> release flow is a little mess, MSI release be handled by xhci
> driver(xhci_stop), and legacy IRQ release be handled by USB core when
> hcd is removing(usb_remove_hcd).
> 
> There have one bug if XHCI_BROKEN_MSI quirk be set and meet STS_SRE
> error during xhci resuming(xhci_resume), it will cause the xhci ISR be
> requested more times.
> 
> The reason is xhci driver will try to re-initialize all registers and
> related structures to rescue the restore operation failure. And it will
> call xhci_cleanup_msix to release the ISR and call xhci_run to
> re-request it. In this flow, hcd will not be remove so USB core will not
> to free the legacy xhci ISR. For MSI case, it should be fine due to they
> will be free in xhci_cleanup_msix. But if XHCI_BROKEN_MSI quirk be set,
> the xhci will use legacy irq then reproduce this issue.
> 
> This patch will unify the xhci irq request/release flow in xhci driver
> to avoid involve USB core.
> 
> Change-Id: I85d589b9c7849c471595da89e5b63347bc3a2939

Why is this line here?  Please don't do that...
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html