• Vignesh R's avatar
    usb: dwc3: omap: remove IRQ_NOAUTOEN used with shared irq · ee249b45
    Vignesh R authored
    IRQ_NOAUTOEN cannot be used with shared IRQs, since commit 04c848d3
    ("genirq: Warn when IRQ_NOAUTOEN is used with shared interrupts") and
    kernel now throws a warn dump. But OMAP DWC3 driver uses this flag. As
    per commit 12a7f17f ("usb: dwc3: omap: fix race of pm runtime with
    irq handler in probe") that introduced this flag, PM runtime can race
    with IRQ handler when deferred probing happens due to extcon,
    therefore IRQ_NOAUTOEN needs to be set so that irq is not enabled until
    extcon is registered.
    
    Remove setting of IRQ_NOAUTOEN and move the registration of
    shared irq to a point after dwc3_omap_extcon_register() and
    of_platform_populate(). This avoids possibility of probe deferring and
    above said race condition.
    Reviewed-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
    Signed-off-by: default avatarVignesh R <vigneshr@ti.com>
    Signed-off-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
    ee249b45
dwc3-omap.c 15.5 KB