diff options
Diffstat (limited to 'drivers/usb/host/xhci.h')
-rw-r--r-- | drivers/usb/host/xhci.h | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h index 443d6333f280..e9217bb288ad 100644 --- a/drivers/usb/host/xhci.h +++ b/drivers/usb/host/xhci.h | |||
@@ -1174,12 +1174,16 @@ struct xhci_bus_state { | |||
1174 | 1174 | ||
1175 | static inline unsigned int hcd_index(struct usb_hcd *hcd) | 1175 | static inline unsigned int hcd_index(struct usb_hcd *hcd) |
1176 | { | 1176 | { |
1177 | return 0; | 1177 | if (hcd->speed == HCD_USB3) |
1178 | return 0; | ||
1179 | else | ||
1180 | return 1; | ||
1178 | } | 1181 | } |
1179 | 1182 | ||
1180 | /* There is one ehci_hci structure per controller */ | 1183 | /* There is one ehci_hci structure per controller */ |
1181 | struct xhci_hcd { | 1184 | struct xhci_hcd { |
1182 | struct usb_hcd *main_hcd; | 1185 | struct usb_hcd *main_hcd; |
1186 | struct usb_hcd *shared_hcd; | ||
1183 | /* glue to PCI and HCD framework */ | 1187 | /* glue to PCI and HCD framework */ |
1184 | struct xhci_cap_regs __iomem *cap_regs; | 1188 | struct xhci_cap_regs __iomem *cap_regs; |
1185 | struct xhci_op_regs __iomem *op_regs; | 1189 | struct xhci_op_regs __iomem *op_regs; |
@@ -1262,10 +1266,8 @@ struct xhci_hcd { | |||
1262 | #define XHCI_LINK_TRB_QUIRK (1 << 0) | 1266 | #define XHCI_LINK_TRB_QUIRK (1 << 0) |
1263 | #define XHCI_RESET_EP_QUIRK (1 << 1) | 1267 | #define XHCI_RESET_EP_QUIRK (1 << 1) |
1264 | #define XHCI_NEC_HOST (1 << 2) | 1268 | #define XHCI_NEC_HOST (1 << 2) |
1265 | /* There's only one roothub to keep track of bus suspend info for | 1269 | /* There are two roothubs to keep track of bus suspend info for */ |
1266 | * (right now). | 1270 | struct xhci_bus_state bus_state[2]; |
1267 | */ | ||
1268 | struct xhci_bus_state bus_state[1]; | ||
1269 | /* Is each xHCI roothub port a USB 3.0, USB 2.0, or USB 1.1 port? */ | 1271 | /* Is each xHCI roothub port a USB 3.0, USB 2.0, or USB 1.1 port? */ |
1270 | u8 *port_array; | 1272 | u8 *port_array; |
1271 | /* Array of pointers to USB 3.0 PORTSC registers */ | 1273 | /* Array of pointers to USB 3.0 PORTSC registers */ |