| CPC G06F 8/654 (2018.02) [G06F 8/71 (2013.01)] | 17 Claims |

|
7. An information handling system, comprising:
a memory;
a processor coupled to the memory, wherein the processor is configured to perform steps comprising:
receiving, by an information handling system, a new firmware for updating a device;
storing, by the information handling system, a copy of a current firmware of the device in a cloud location and a volatile memory;
updating, by the information handling system, the device with the new firmware after storing a copy of the current firmware in the cloud location and the volatile memory;
setting, by the information handling system, a first boot flag to perform diagnostics at a future reset of the information handling system based on updating the device with the new firmware;
and determining, by the information handling system at the future reset in response to the first boot flag, whether the device satisfies at least one criteria indicating the new firmware is operational on the device;
and when the at least one criteria is not satisfied, determining, by the information handling system, if the copy of the current firmware stored in the volatile memory is a working copy;
when the copy of the current firmware stored in the volatile memory is a working copy, updating, by the information handling system, the device with the working copy of the firmware from the volatile memory;
when the copy of the current firmware stored in the volatile memory location is not a working copy, updating, by the information handling system, the device with a working copy of the current firmware stored in the cloud location.
|