X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=target%2Flinux%2Fgeneric%2Fpending-4.14%2F811-pci_disable_usb_common_quirks.patch;h=f40214c29b0ad6df86ef335df691e6a2133a7ca4;hb=f1a2b5bbbc46084b64c36f2b665a60f2317bddc0;hp=005c25d048198bfa1db7d4631e818cde55f1ddbc;hpb=b3f95490b9bec020314eb32016988ee262d52884;p=oweals%2Fopenwrt.git diff --git a/target/linux/generic/pending-4.14/811-pci_disable_usb_common_quirks.patch b/target/linux/generic/pending-4.14/811-pci_disable_usb_common_quirks.patch index 005c25d048..f40214c29b 100644 --- a/target/linux/generic/pending-4.14/811-pci_disable_usb_common_quirks.patch +++ b/target/linux/generic/pending-4.14/811-pci_disable_usb_common_quirks.patch @@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau --- a/drivers/usb/host/pci-quirks.c +++ b/drivers/usb/host/pci-quirks.c -@@ -107,6 +107,8 @@ struct amd_chipset_type { +@@ -124,6 +124,8 @@ struct amd_chipset_type { u8 rev; }; @@ -19,9 +19,9 @@ Signed-off-by: Felix Fietkau static struct amd_chipset_info { struct pci_dev *nb_dev; struct pci_dev *smbus_dev; -@@ -511,6 +513,10 @@ void usb_amd_dev_put(void) +@@ -620,6 +622,10 @@ bool usb_amd_pt_check_port(struct device } - EXPORT_SYMBOL_GPL(usb_amd_dev_put); + EXPORT_SYMBOL_GPL(usb_amd_pt_check_port); +#endif /* CONFIG_PCI_DISABLE_COMMON_QUIRKS */ + @@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau /* * Make sure the controller is completely inactive, unable to * generate interrupts or do DMA. -@@ -590,8 +596,17 @@ reset_needed: +@@ -699,8 +705,17 @@ reset_needed: uhci_reset_hc(pdev, base); return 1; } @@ -48,14 +48,11 @@ Signed-off-by: Felix Fietkau static inline int io_type_enabled(struct pci_dev *pdev, unsigned int mask) { u16 cmd; -@@ -1158,6 +1173,7 @@ static void quirk_usb_early_handoff(stru +@@ -1287,3 +1302,4 @@ bool usb_xhci_needs_pci_reset(struct pci + return false; } - DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_ANY_ID, PCI_ANY_ID, - PCI_CLASS_SERIAL_USB, 8, quirk_usb_early_handoff); + EXPORT_SYMBOL_GPL(usb_xhci_needs_pci_reset); +#endif - - bool usb_xhci_needs_pci_reset(struct pci_dev *pdev) - { --- a/drivers/usb/host/pci-quirks.h +++ b/drivers/usb/host/pci-quirks.h @@ -5,6 +5,9 @@ @@ -68,8 +65,8 @@ Signed-off-by: Felix Fietkau int usb_amd_find_chipset_info(void); int usb_hcd_amd_remote_wakeup_quirk(struct pci_dev *pdev); bool usb_amd_hang_symptom_quirk(void); -@@ -19,12 +22,25 @@ void sb800_prefetch(struct device *dev, - bool usb_xhci_needs_pci_reset(struct pci_dev *pdev); +@@ -20,6 +23,18 @@ bool usb_xhci_needs_pci_reset(struct pci + bool usb_amd_pt_check_port(struct device *device, int port); #else struct pci_dev; +static inline int usb_amd_find_chipset_info(void) @@ -87,10 +84,15 @@ Signed-off-by: Felix Fietkau static inline void usb_amd_quirk_pll_disable(void) {} static inline void usb_amd_quirk_pll_enable(void) {} static inline void usb_asmedia_modifyflowcontrol(struct pci_dev *pdev) {} - 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) {} +@@ -30,6 +45,11 @@ static inline bool usb_amd_pt_check_port + { + return false; + } +static inline void usb_enable_intel_xhci_ports(struct pci_dev *xhci_pdev) {} ++static inline bool usb_xhci_needs_pci_reset(struct pci_dev *pdev) ++{ ++ return false; ++} #endif /* CONFIG_USB_PCI */ #endif /* __LINUX_USB_PCI_QUIRKS_H */