aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/host/pci-quirks.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/drivers/usb/host/pci-quirks.c b/drivers/usb/host/pci-quirks.c
index 4a6d3dd68572..2f3acebb577a 100644
--- a/drivers/usb/host/pci-quirks.c
+++ b/drivers/usb/host/pci-quirks.c
@@ -656,6 +656,14 @@ static const struct dmi_system_id ehci_dmi_nohandoff_table[] = {
656 DMI_MATCH(DMI_BIOS_VERSION, "Lucid-"), 656 DMI_MATCH(DMI_BIOS_VERSION, "Lucid-"),
657 }, 657 },
658 }, 658 },
659 {
660 /* HASEE E200 */
661 .matches = {
662 DMI_MATCH(DMI_BOARD_VENDOR, "HASEE"),
663 DMI_MATCH(DMI_BOARD_NAME, "E210"),
664 DMI_MATCH(DMI_BIOS_VERSION, "6.00"),
665 },
666 },
659 { } 667 { }
660}; 668};
661 669
@@ -665,9 +673,14 @@ static void ehci_bios_handoff(struct pci_dev *pdev,
665{ 673{
666 int try_handoff = 1, tried_handoff = 0; 674 int try_handoff = 1, tried_handoff = 0;
667 675
668 /* The Pegatron Lucid tablet sporadically waits for 98 seconds trying 676 /*
669 * the handoff on its unused controller. Skip it. */ 677 * The Pegatron Lucid tablet sporadically waits for 98 seconds trying
670 if (pdev->vendor == 0x8086 && pdev->device == 0x283a) { 678 * the handoff on its unused controller. Skip it.
679 *
680 * The HASEE E200 hangs when the semaphore is set (bugzilla #77021).
681 */
682 if (pdev->vendor == 0x8086 && (pdev->device == 0x283a ||
683 pdev->device == 0x27cc)) {
671 if (dmi_check_system(ehci_dmi_nohandoff_table)) 684 if (dmi_check_system(ehci_dmi_nohandoff_table))
672 try_handoff = 0; 685 try_handoff = 0;
673 } 686 }