mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-05 10:29:37 +00:00
![Mathias Nyman](/assets/img/avatar_default.png)
Make the Linux xHCI driver automatically try to switchover the EHCI ports to xHCI when an Intel xHCI host is detected, and it also finds an Intel EHCI host. This means we will no longer have to add Intel xHCI hosts to a quirks list when the PCI device IDs change. Simply continuing to add new Intel xHCI PCI device IDs to the quirks list is not sustainable. During suspend ports may be swicthed back to EHCI by BIOS and not properly restored to xHCI at resume. Previously both EHCI and xHCI resume functions switched ports back to XHCI, but it's enough to do it in xHCI only because the hub driver doesn't start running again until after both hosts are resumed. Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
22 lines
885 B
C
22 lines
885 B
C
#ifndef __LINUX_USB_PCI_QUIRKS_H
|
|
#define __LINUX_USB_PCI_QUIRKS_H
|
|
|
|
#ifdef CONFIG_PCI
|
|
void uhci_reset_hc(struct pci_dev *pdev, unsigned long base);
|
|
int uhci_check_and_reset_hc(struct pci_dev *pdev, unsigned long base);
|
|
int usb_amd_find_chipset_info(void);
|
|
void usb_amd_dev_put(void);
|
|
void usb_amd_quirk_pll_disable(void);
|
|
void usb_amd_quirk_pll_enable(void);
|
|
void usb_enable_intel_xhci_ports(struct pci_dev *xhci_pdev);
|
|
void usb_disable_xhci_ports(struct pci_dev *xhci_pdev);
|
|
void sb800_prefetch(struct device *dev, int on);
|
|
#else
|
|
static inline void usb_amd_quirk_pll_disable(void) {}
|
|
static inline void usb_amd_quirk_pll_enable(void) {}
|
|
static inline void usb_amd_dev_put(void) {}
|
|
static inline void usb_disable_xhci_ports(struct pci_dev *xhci_pdev) {}
|
|
static inline void sb800_prefetch(struct device *dev, int on) {}
|
|
#endif /* CONFIG_PCI */
|
|
|
|
#endif /* __LINUX_USB_PCI_QUIRKS_H */
|