This patch adds support for the new get_resuming_ports HCD method to
the xhci-hcd driver.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Acked-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
        return 0;
 }
 
+unsigned long xhci_get_resuming_ports(struct usb_hcd *hcd)
+{
+       struct xhci_hcd *xhci = hcd_to_xhci(hcd);
+       struct xhci_bus_state *bus_state;
+
+       bus_state = &xhci->bus_state[hcd_index(hcd)];
+
+       /* USB3 port wakeups are reported via usb_wakeup_notification() */
+       return bus_state->resuming_ports;       /* USB2 ports only */
+}
+
 #endif /* CONFIG_PM */
 
        .hub_status_data =      xhci_hub_status_data,
        .bus_suspend =          xhci_bus_suspend,
        .bus_resume =           xhci_bus_resume,
+       .get_resuming_ports =   xhci_get_resuming_ports,
 
        /*
         * call back when device connected and addressed
 
 #ifdef CONFIG_PM
 int xhci_bus_suspend(struct usb_hcd *hcd);
 int xhci_bus_resume(struct usb_hcd *hcd);
+unsigned long xhci_get_resuming_ports(struct usb_hcd *hcd);
 #else
 #define        xhci_bus_suspend        NULL
 #define        xhci_bus_resume         NULL
+#define        xhci_get_resuming_ports NULL
 #endif /* CONFIG_PM */
 
 u32 xhci_port_state_to_neutral(u32 state);