mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
x86: Use ACPI reboot method for Dell OptiPlex 9020
When EFI booting the Dell OptiPlex 9020, it sometimes GP faults in the
EFI runtime instead of rebooting. Quirk this hardware to use the ACPI
reboot method instead.
dmidecode info:
BIOS Information
Vendor: Dell Inc.
Version: A15
Release Date: 11/08/2015
System Information
Manufacturer: Dell Inc.
Product Name: OptiPlex 9020
Version: 00
Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
This commit is contained in:
1 parent
47591e012f
commit
6a6bbedd39
1 file changed
+13
@@ -128,11 +128,15 @@ static int __init override_reboot(struct dmi_system_id *d)
|
||||
{
|
||||
enum reboot_type type = (long)d->driver_data;
|
||||
|
||||
if ( type == BOOT_ACPI && acpi_disabled )
|
||||
type = BOOT_KBD;
|
||||
|
||||
if ( reboot_type != type )
|
||||
{
|
||||
static const char *__initdata msg[] =
|
||||
{
|
||||
[BOOT_KBD] = "keyboard controller",
|
||||
[BOOT_ACPI] = "ACPI",
|
||||
[BOOT_CF9] = "PCI",
|
||||
};
|
||||
|
||||
@@ -438,6 +442,15 @@ static struct dmi_system_id __initdata reboot_dmi_table[] = {
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 390"),
|
||||
},
|
||||
},
|
||||
{ /* Handle problems with rebooting on Dell OptiPlex 9020. */
|
||||
.callback = override_reboot,
|
||||
.driver_data = (void *)(long)BOOT_ACPI,
|
||||
.ident = "Dell OptiPlex 9020",
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 9020"),
|
||||
},
|
||||
},
|
||||
{ /* Handle problems with rebooting on the Latitude E6320. */
|
||||
.callback = override_reboot,
|
||||
.driver_data = (void *)(long)BOOT_CF9,
|
||||
|
||||