blob: 638e88f7a28bbce2a3e04df49cee7dedde99229d [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);
Huang Rui3ad145b2013-10-03 23:37:12 +08008bool usb_amd_hang_symptom_quirk(void);
Huang Rui02c123e2013-10-03 23:37:13 +08009bool usb_amd_prefetch_quirk(void);
Andiry Xuad935622011-03-01 14:57:05 +080010void usb_amd_dev_put(void);
11void usb_amd_quirk_pll_disable(void);
12void usb_amd_quirk_pll_enable(void);
Mathias Nyman26b76792013-07-23 11:35:47 +030013void usb_enable_intel_xhci_ports(struct pci_dev *xhci_pdev);
Sarah Sharpe95829f2012-07-23 18:59:30 +030014void usb_disable_xhci_ports(struct pci_dev *xhci_pdev);
Manjunath Goudar2621d012013-05-28 18:34:50 +053015void sb800_prefetch(struct device *dev, int on);
Andiry Xuad935622011-03-01 14:57:05 +080016#else
Randy Dunlapc4d949b2013-07-23 15:22:59 -070017struct pci_dev;
Andiry Xuad935622011-03-01 14:57:05 +080018static inline void usb_amd_quirk_pll_disable(void) {}
19static inline void usb_amd_quirk_pll_enable(void) {}
20static inline void usb_amd_dev_put(void) {}
Moiz Sonasath29636572012-09-05 08:34:26 +030021static inline void usb_disable_xhci_ports(struct pci_dev *xhci_pdev) {}
Manjunath Goudar2621d012013-05-28 18:34:50 +053022static inline void sb800_prefetch(struct device *dev, int on) {}
Andiry Xuad935622011-03-01 14:57:05 +080023#endif /* CONFIG_PCI */
Adrian Bunk75e2df62006-03-25 18:01:53 +010024
25#endif /* __LINUX_USB_PCI_QUIRKS_H */