|
@@ -656,6 +656,14 @@ static const struct dmi_system_id ehci_dmi_nohandoff_table[] = {
|
|
DMI_MATCH(DMI_BIOS_VERSION, "Lucid-"),
|
|
DMI_MATCH(DMI_BIOS_VERSION, "Lucid-"),
|
|
},
|
|
},
|
|
},
|
|
},
|
|
|
|
+ {
|
|
|
|
+ /* HASEE E200 */
|
|
|
|
+ .matches = {
|
|
|
|
+ DMI_MATCH(DMI_BOARD_VENDOR, "HASEE"),
|
|
|
|
+ DMI_MATCH(DMI_BOARD_NAME, "E210"),
|
|
|
|
+ DMI_MATCH(DMI_BIOS_VERSION, "6.00"),
|
|
|
|
+ },
|
|
|
|
+ },
|
|
{ }
|
|
{ }
|
|
};
|
|
};
|
|
|
|
|
|
@@ -665,9 +673,14 @@ static void ehci_bios_handoff(struct pci_dev *pdev,
|
|
{
|
|
{
|
|
int try_handoff = 1, tried_handoff = 0;
|
|
int try_handoff = 1, tried_handoff = 0;
|
|
|
|
|
|
- /* The Pegatron Lucid tablet sporadically waits for 98 seconds trying
|
|
|
|
- * the handoff on its unused controller. Skip it. */
|
|
|
|
- if (pdev->vendor == 0x8086 && pdev->device == 0x283a) {
|
|
|
|
|
|
+ /*
|
|
|
|
+ * The Pegatron Lucid tablet sporadically waits for 98 seconds trying
|
|
|
|
+ * the handoff on its unused controller. Skip it.
|
|
|
|
+ *
|
|
|
|
+ * The HASEE E200 hangs when the semaphore is set (bugzilla #77021).
|
|
|
|
+ */
|
|
|
|
+ if (pdev->vendor == 0x8086 && (pdev->device == 0x283a ||
|
|
|
|
+ pdev->device == 0x27cc)) {
|
|
if (dmi_check_system(ehci_dmi_nohandoff_table))
|
|
if (dmi_check_system(ehci_dmi_nohandoff_table))
|
|
try_handoff = 0;
|
|
try_handoff = 0;
|
|
}
|
|
}
|