Re: ehci-hcd.c causes: irq <number>: nobody cared

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 13 May 2014, Dr. Werner Fink wrote:

> On Tue, May 13, 2014 at 06:10:46PM +0200, Dr. Werner Fink wrote:
> > On Tue, May 13, 2014 at 11:59:38AM -0400, Alan Stern wrote:
> > > 
> > > What about something like this instead?
> > > 
> > >  	masked_status = status & (INTR_MASK | STS_FLR);
> > >  
> > >  	/* Shared IRQ? */
> > >  	if (!masked_status || unlikely(ehci->rh_state == EHCI_RH_HALTED)) {
> > > +		if (status & STS_RECL) {
> > > +			ehci_writel(ehci, STS_RECL, &ehci->regs->status);
> > > +			ehci_readl(ehci, &ehci->regs->status);
> > > +		}
> > >  		spin_unlock_irqrestore(&ehci->lock, flags);
> > >  		return IRQ_NONE;
> > >  	}
> > > 
> > > That should do about the same thing as your change, except for
> > > returning IRQ_NONE rather than IRQ_HANDLED.
> > 
> > I'll forward this to my home to try it out.  It will take some time
> > as my wife is also working on this system.  Nevertheless I'm curious
> > about it.
> 
> The code is active now:

...

> it works.

Does it still work if you omit the ehci_readl() call?

If you want to submit a patch containing this fix, please add a quirk 
flag for it.  And a comment explaining why the ehci_writel() call is 
needed.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux