From fd3efe9b00e704eba0b911d3d7438a0e53681898 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Sat, 8 Feb 2014 16:32:37 +0000 Subject: [PATCH] kernel: XHCI PCI quirks for kernel 3.12 and 3.13 This adds empty definitions for the PCI quirks functions when they should not be included in the kernel. This is based on a patch by Daniel Signed-off-by: Hauke Mehrtens git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39534 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../811-pci_disable_usb_common_quirks.patch | 14 ++++--------- .../811-pci_disable_usb_common_quirks.patch | 23 +++++++++++----------- 2 files changed, 16 insertions(+), 21 deletions(-) diff --git a/target/linux/generic/patches-3.12/811-pci_disable_usb_common_quirks.patch b/target/linux/generic/patches-3.12/811-pci_disable_usb_common_quirks.patch index ca0cc469e2..d06ad49227 100644 --- a/target/linux/generic/patches-3.12/811-pci_disable_usb_common_quirks.patch +++ b/target/linux/generic/patches-3.12/811-pci_disable_usb_common_quirks.patch @@ -46,24 +46,17 @@ +#endif --- a/drivers/usb/host/pci-quirks.h +++ b/drivers/usb/host/pci-quirks.h -@@ -4,20 +4,29 @@ +@@ -4,6 +4,9 @@ #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); -+bool usb_is_intel_switchable_xhci(struct pci_dev *pdev); -+void usb_enable_xhci_ports(struct pci_dev *xhci_pdev); -+void usb_disable_xhci_ports(struct pci_dev *xhci_pdev); -+#else -+static inline void usb_disable_xhci_ports(struct pci_dev *xhci_pdev) {} +#endif /* CONFIG_PCI */ + +#if defined(CONFIG_PCI) && !defined(CONFIG_PCI_DISABLE_COMMON_QUIRKS) 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); +@@ -13,11 +16,16 @@ void usb_disable_xhci_ports(struct pci_d void sb800_prefetch(struct device *dev, int on); #else struct pci_dev; @@ -74,9 +67,10 @@ 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 usb_disable_xhci_ports(struct pci_dev *xhci_pdev) {} static inline void sb800_prefetch(struct device *dev, int on) {} -#endif /* CONFIG_PCI */ ++static inline void usb_enable_intel_xhci_ports(struct pci_dev *xhci_pdev) {} +#endif #endif /* __LINUX_USB_PCI_QUIRKS_H */ diff --git a/target/linux/generic/patches-3.13/811-pci_disable_usb_common_quirks.patch b/target/linux/generic/patches-3.13/811-pci_disable_usb_common_quirks.patch index 1ec3a991b2..359c631342 100644 --- a/target/linux/generic/patches-3.13/811-pci_disable_usb_common_quirks.patch +++ b/target/linux/generic/patches-3.13/811-pci_disable_usb_common_quirks.patch @@ -46,25 +46,17 @@ +#endif --- a/drivers/usb/host/pci-quirks.h +++ b/drivers/usb/host/pci-quirks.h -@@ -4,22 +4,30 @@ +@@ -4,6 +4,9 @@ #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); -+void usb_enable_intel_xhci_ports(struct pci_dev *xhci_pdev); -+void usb_disable_xhci_ports(struct pci_dev *xhci_pdev); -+#else -+static inline void usb_disable_xhci_ports(struct pci_dev *xhci_pdev) {} +#endif /* CONFIG_PCI */ + +#if defined(CONFIG_PCI) && !defined(CONFIG_PCI_DISABLE_COMMON_QUIRKS) int usb_amd_find_chipset_info(void); bool usb_amd_hang_symptom_quirk(void); bool usb_amd_prefetch_quirk(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); +@@ -15,11 +18,24 @@ void usb_disable_xhci_ports(struct pci_d void sb800_prefetch(struct device *dev, int on); #else struct pci_dev; @@ -72,12 +64,21 @@ +{ + return 0; +} ++static inline bool usb_amd_hang_symptom_quirk(void) ++{ ++ return false; ++} ++static inline bool usb_amd_prefetch_quirk(void) ++{ ++ return false; ++} 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 usb_disable_xhci_ports(struct pci_dev *xhci_pdev) {} static inline void sb800_prefetch(struct device *dev, int on) {} -#endif /* CONFIG_PCI */ ++static inline void usb_enable_intel_xhci_ports(struct pci_dev *xhci_pdev) {} +#endif #endif /* __LINUX_USB_PCI_QUIRKS_H */ -- 2.11.0