|
@@ -535,6 +535,15 @@ static void native_machine_emergency_restart(void)
|
|
|
mode = reboot_mode == REBOOT_WARM ? 0x1234 : 0;
|
|
|
*((unsigned short *)__va(0x472)) = mode;
|
|
|
|
|
|
+ /*
|
|
|
+ * If an EFI capsule has been registered with the firmware then
|
|
|
+ * override the reboot= parameter.
|
|
|
+ */
|
|
|
+ if (efi_capsule_pending(NULL)) {
|
|
|
+ pr_info("EFI capsule is pending, forcing EFI reboot.\n");
|
|
|
+ reboot_type = BOOT_EFI;
|
|
|
+ }
|
|
|
+
|
|
|
for (;;) {
|
|
|
/* Could also try the reset bit in the Hammer NB */
|
|
|
switch (reboot_type) {
|