diff options
Diffstat (limited to 'arch/x86/kernel/reboot.c')
| -rw-r--r-- | arch/x86/kernel/reboot.c | 16 | 
1 files changed, 12 insertions, 4 deletions
diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c index 834c9da8bf9..a06e8d10184 100644 --- a/arch/x86/kernel/reboot.c +++ b/arch/x86/kernel/reboot.c @@ -405,7 +405,7 @@ EXPORT_SYMBOL(machine_real_restart);  #endif /* CONFIG_X86_32 */  /* - * Apple MacBook5,2 (2009 MacBook) needs reboot=p + * Some Apple MacBook and MacBookPro's needs reboot=p to be able to reboot   */  static int __init set_pci_reboot(const struct dmi_system_id *d)  { @@ -418,12 +418,20 @@ static int __init set_pci_reboot(const struct dmi_system_id *d)  }  static struct dmi_system_id __initdata pci_reboot_dmi_table[] = { -	{	/* Handle problems with rebooting on Apple MacBook5,2 */ +	{	/* Handle problems with rebooting on Apple MacBook5 */  		.callback = set_pci_reboot, -		.ident = "Apple MacBook", +		.ident = "Apple MacBook5",  		.matches = {  			DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."), -			DMI_MATCH(DMI_PRODUCT_NAME, "MacBook5,2"), +			DMI_MATCH(DMI_PRODUCT_NAME, "MacBook5"), +		}, +	}, +	{	/* Handle problems with rebooting on Apple MacBookPro5 */ +		.callback = set_pci_reboot, +		.ident = "Apple MacBookPro5", +		.matches = { +			DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."), +			DMI_MATCH(DMI_PRODUCT_NAME, "MacBookPro5"),  		},  	},  	{ }  |