On 11/24/07, David Brownell <[EMAIL PROTECTED]> wrote: > On Friday 23 November 2007, Grant Likely wrote: > > Some multi-role (host/peripheral) USB controllers use a shared interrupt > > line for all parts of the chip. > > Like the musb_hdrc code ... soonish to go upstream (it needs some > updates to catch up to usbcore urb->status changes), this is used > by the Nokia 800 and 810. In terms of chips with Linux support: > DaVinci, TUSB60x0, OMAP 2430, OMAP 3430, Blackfin BF527; and ISTR > a few less-publicised ones (including, yes, some PPC SOCs). > > That driver hasn't needed to change usbcore for IRQ handling though. > > > > Export usb_hcd_irq so drivers can call it > > from their interrupt handler instead of duplicating code. > > This seems to be the main point of this patch. I'd rather just > make that "static" though; it should already be marked that way. > > That routine doesn't do enough to make me like it any more; and > with dual-role controllers, the driver lifecycle is more complex > than usbcore can be expected to mediate. Best to just call the > host side IRQ logic directly from your toplevel IRQ handler. > > > > Drivers pass an irqnum of 0 to usb_add_hcd to signal that the interrupt > > handler > > shouldn't be registerred by the core. > > The current way to get that behavior is to leave hcd->driver->irq > as zero; then "irqnum" is ignored, and your dual role driver can > register its own handler.
Okay, I'll make that change. Cheers, g. -- Grant Likely, B.Sc., P.Eng. Secret Lab Technologies Ltd. [EMAIL PROTECTED] (403) 399-0195 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev