commit 3b064a81 (convert musb to new style bind) didn't complete the conversion leaving musb in a state where it would never work. This is due to an old patch which was added to musb to prevent it from acking IRQs while no gadget driver was loaded. With the new style bind, UDC controller drivers don't know anymore when a gadget driver is bound to them, because now gadget drivers are bound to the udc class, so that part on MUSB's IRQ handler has to be removed. While at that, also fix a dev_dbg() message which would cause kernel oops. Signed-off-by: Felipe Balbi <balbi@xxxxxx> --- drivers/usb/musb/musb_core.c | 6 ------ drivers/usb/musb/musb_gadget.c | 4 ++-- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index 9c44b7c..d53e616 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb/musb_core.c @@ -1520,12 +1520,6 @@ irqreturn_t musb_interrupt(struct musb *musb) (devctl & MUSB_DEVCTL_HM) ? "host" : "peripheral", musb->int_usb, musb->int_tx, musb->int_rx); - if (is_otg_enabled(musb) || is_peripheral_enabled(musb)) - if (!musb->gadget_driver) { - dev_dbg(musb->controller, "No gadget driver loaded\n"); - return IRQ_HANDLED; - } - /* the core can interrupt us for multiple reasons; docs have * a generic interrupt flowchart to follow */ diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c index bd89f79..3a0c465 100644 --- a/drivers/usb/musb/musb_gadget.c +++ b/drivers/usb/musb/musb_gadget.c @@ -1657,8 +1657,8 @@ static void musb_pullup(struct musb *musb, int is_on) /* FIXME if on, HdrcStart; if off, HdrcStop */ - dev_dbg(musb->controller, "gadget %s D+ pullup %s\n", - musb->gadget_driver->function, is_on ? "on" : "off"); + dev_dbg(musb->controller, "gadget D+ pullup %s\n", + is_on ? "on" : "off"); musb_writeb(musb->mregs, MUSB_POWER, power); } -- 1.7.5.4 -- 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