diff options
Diffstat (limited to 'drivers/usb/host/ehci-pci.c')
-rw-r--r-- | drivers/usb/host/ehci-pci.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/drivers/usb/host/ehci-pci.c b/drivers/usb/host/ehci-pci.c index 965202138161..2a5d2fd76040 100644 --- a/drivers/usb/host/ehci-pci.c +++ b/drivers/usb/host/ehci-pci.c | |||
@@ -42,18 +42,22 @@ static inline bool is_intel_quark_x1000(struct pci_dev *pdev) | |||
42 | pdev->device == PCI_DEVICE_ID_INTEL_QUARK_X1000_SOC; | 42 | pdev->device == PCI_DEVICE_ID_INTEL_QUARK_X1000_SOC; |
43 | } | 43 | } |
44 | 44 | ||
45 | static const struct pci_device_id ci_hdrc_pci_id_table[] = { | 45 | /* |
46 | { PCI_DEVICE(0x153F, 0x1004), }, | 46 | * This is the list of PCI IDs for the devices that have EHCI USB class and |
47 | { PCI_DEVICE(0x153F, 0x1006), }, | 47 | * specific drivers for that. One of the example is a ChipIdea device installed |
48 | * on some Intel MID platforms. | ||
49 | */ | ||
50 | static const struct pci_device_id bypass_pci_id_table[] = { | ||
51 | /* ChipIdea on Intel MID platform */ | ||
48 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x0811), }, | 52 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x0811), }, |
49 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x0829), }, | 53 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x0829), }, |
50 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0xe006), }, | 54 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0xe006), }, |
51 | {} | 55 | {} |
52 | }; | 56 | }; |
53 | 57 | ||
54 | static inline bool is_ci_hdrc_pci(struct pci_dev *pdev) | 58 | static inline bool is_bypassed_id(struct pci_dev *pdev) |
55 | { | 59 | { |
56 | return !!pci_match_id(ci_hdrc_pci_id_table, pdev); | 60 | return !!pci_match_id(bypass_pci_id_table, pdev); |
57 | } | 61 | } |
58 | 62 | ||
59 | /* | 63 | /* |
@@ -368,7 +372,7 @@ static const struct ehci_driver_overrides pci_overrides __initconst = { | |||
368 | 372 | ||
369 | static int ehci_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) | 373 | static int ehci_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) |
370 | { | 374 | { |
371 | if (is_ci_hdrc_pci(pdev)) | 375 | if (is_bypassed_id(pdev)) |
372 | return -ENODEV; | 376 | return -ENODEV; |
373 | return usb_hcd_pci_probe(pdev, id); | 377 | return usb_hcd_pci_probe(pdev, id); |
374 | } | 378 | } |