1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef __LINUX_USB_PCI_QUIRKS_H 3#define __LINUX_USB_PCI_QUIRKS_H 4 5#ifdef CONFIG_USB_PCI_AMD 6int usb_hcd_amd_remote_wakeup_quirk(struct pci_dev *pdev); 7bool usb_amd_hang_symptom_quirk(void); 8bool usb_amd_prefetch_quirk(void); 9void usb_amd_dev_put(void); 10bool usb_amd_quirk_pll_check(void); 11void usb_amd_quirk_pll_disable(void); 12void usb_amd_quirk_pll_enable(void); 13void sb800_prefetch(struct device *dev, int on); 14bool usb_amd_pt_check_port(struct device *device, int port); 15#else 16static inline bool usb_amd_hang_symptom_quirk(void) 17{ 18 return false; 19}; 20static inline bool usb_amd_prefetch_quirk(void) 21{ 22 return false; 23} 24static inline void usb_amd_quirk_pll_disable(void) {} 25static inline void usb_amd_quirk_pll_enable(void) {} 26static inline void usb_amd_dev_put(void) {} 27static inline bool usb_amd_quirk_pll_check(void) 28{ 29 return false; 30} 31static inline void sb800_prefetch(struct device *dev, int on) {} 32static inline bool usb_amd_pt_check_port(struct device *device, int port) 33{ 34 return false; 35} 36#endif /* CONFIG_USB_PCI_AMD */ 37 38#ifdef CONFIG_USB_PCI 39void uhci_reset_hc(struct pci_dev *pdev, unsigned long base); 40int uhci_check_and_reset_hc(struct pci_dev *pdev, unsigned long base); 41void usb_asmedia_modifyflowcontrol(struct pci_dev *pdev); 42void usb_enable_intel_xhci_ports(struct pci_dev *xhci_pdev); 43void usb_disable_xhci_ports(struct pci_dev *xhci_pdev); 44#else 45struct pci_dev; 46static inline void usb_asmedia_modifyflowcontrol(struct pci_dev *pdev) {} 47static inline void usb_disable_xhci_ports(struct pci_dev *xhci_pdev) {} 48#endif /* CONFIG_USB_PCI */ 49 50#endif /* __LINUX_USB_PCI_QUIRKS_H */ 51