It still has below limitations: - it does not work for multi-phy ehci - the best place is after debounce, but I can't get phy there
Signed-off-by: Richard Zhao <[email protected]> --- drivers/usb/host/ehci-hcd.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c index 5597e60..389252e 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c @@ -928,6 +928,15 @@ static irqreturn_t ehci_irq (struct usb_hcd *hcd) pstatus = ehci_readl(ehci, &ehci->regs->port_status[i]); + /* FIXME: + * - it does not work for multi-phy ehci + * - the best place is after debounce, but I can't get + * phy there + */ + if ((pstatus & PORT_CSC) && ehci->transceiver) + usb_phy_notify_connect_change(ehci->transceiver, + i, pstatus & PORT_CONNECT); + if (pstatus & PORT_OWNER) continue; if (!(test_bit(i, &ehci->suspended_ports) && -- 1.7.5.4 _______________________________________________ devicetree-discuss mailing list [email protected] https://lists.ozlabs.org/listinfo/devicetree-discuss
