blob: c622ddf21c94e61f6c8089cdc493088f33973599 [file] [log] [blame]
Adrian Bunk75e2df62006-03-25 18:01:53 +01001#ifndef __LINUX_USB_PCI_QUIRKS_H
2#define __LINUX_USB_PCI_QUIRKS_H
3
Andiry Xuad935622011-03-01 14:57:05 +08004#ifdef CONFIG_PCI
Adrian Bunk75e2df62006-03-25 18:01:53 +01005void uhci_reset_hc(struct pci_dev *pdev, unsigned long base);
6int uhci_check_and_reset_hc(struct pci_dev *pdev, unsigned long base);
Andiry Xuad935622011-03-01 14:57:05 +08007int usb_amd_find_chipset_info(void);
Konrad Zapalowicz342a7492014-05-27 23:09:14 +02008int usb_hcd_amd_remote_wakeup_quirk(struct pci_dev *pdev);
Huang Rui3ad145b2013-10-03 23:37:12 +08009bool usb_amd_hang_symptom_quirk(void);
Huang Rui02c123e2013-10-03 23:37:13 +080010bool usb_amd_prefetch_quirk(void);
Andiry Xuad935622011-03-01 14:57:05 +080011void usb_amd_dev_put(void);
12void usb_amd_quirk_pll_disable(void);
13void usb_amd_quirk_pll_enable(void);
Mathias Nyman26b76792013-07-23 11:35:47 +030014void usb_enable_intel_xhci_ports(struct pci_dev *xhci_pdev);
Sarah Sharpe95829f2012-07-23 18:59:30 +030015void usb_disable_xhci_ports(struct pci_dev *xhci_pdev);
Manjunath Goudar2621d012013-05-28 18:34:50 +053016void sb800_prefetch(struct device *dev, int on);
Andiry Xuad935622011-03-01 14:57:05 +080017#else
Randy Dunlapc4d949b2013-07-23 15:22:59 -070018struct pci_dev;
Andiry Xuad935622011-03-01 14:57:05 +080019static inline void usb_amd_quirk_pll_disable(void) {}
20static inline void usb_amd_quirk_pll_enable(void) {}
21static inline void usb_amd_dev_put(void) {}
Moiz Sonasath29636572012-09-05 08:34:26 +030022static inline void usb_disable_xhci_ports(struct pci_dev *xhci_pdev) {}
Manjunath Goudar2621d012013-05-28 18:34:50 +053023static inline void sb800_prefetch(struct device *dev, int on) {}
Andiry Xuad935622011-03-01 14:57:05 +080024#endif /* CONFIG_PCI */
Adrian Bunk75e2df62006-03-25 18:01:53 +010025
26#endif /* __LINUX_USB_PCI_QUIRKS_H */