Firmware Update Recovery Using RAM Backup and Warm Reboot

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Firmware corruption in information handling systems can lead to boot failures and device detection issues, resulting in data loss and poor user experience.

Innovation Solution

The system stores a copy of the current firmware in RAM before updating, verifies the new firmware post-restart, and reverts to the previous firmware if the update fails, using a warm reboot to maintain volatile memory power.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system updates firmware directly without backup, then the update process is simple and fast, but the system risks boot failure and data loss if the new firmware is corrupted

Engineering Contradiction:
Improvefirmware update reliabilityVSAvoidfirmware update process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by storing the current firmware image in volatile memory (RAM) before initiating the firmware update process. This backup is created in advance so that if the new firmware proves to be corrupted or incompatible, the system can revert to the previous working firmware, thereby preventing boot failures and data loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system prepares compensatory measures in advance by maintaining a backup of the current firmware in volatile memory during the update process. This cushioning mechanism ensures that if the new firmware causes system failure, the system can recover by restoring the previous firmware, thus protecting against the harmful effects of firmware corruption.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

2Reliability

If the system stores current firmware in volatile memory during update, then recovery from corrupted firmware is enabled, but memory power must be maintained during reset

Engineering Contradiction:
Improvefirmware recovery capabilityVSAvoidvolatile memory power consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system dynamically adjusts the power state of the volatile memory during the firmware update process. By implementing a warm reboot mechanism that maintains power to the volatile memory containing the backup firmware, the system ensures recovery capability while minimizing energy consumption compared to maintaining full system power. The power management is optimized to sustain only the necessary memory regions during the critical update transition.

Inventive Principle:
Principle #15Dynamics

3Loss of energy

If the system performs cold reboot after firmware update, then power is saved, but the volatile memory loses power and backup firmware is lost

Engineering Contradiction:
Improvepower consumption during rebootVSAvoidbackup firmware data loss
Core Design Contradiction:
Loss of energyVSLoss of information

Solution Approach 1:

The system compensates for the information loss that would occur during a cold reboot by maintaining a duplicate copy of the current firmware in non-volatile storage. This ensures that even if the volatile memory backup is lost due to power loss during reboot, the system can still recover by restoring from the non-volatile backup, thus preventing firmware corruption and system failure.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS12474919B2Firmware distribution method for an information handling system
Publication Date: 2025.11.18 DELL PROD LP
  • US12474919B2 patent drawing
  • US12474919B2 patent drawing
  • US12474919B2 patent drawing

AI summary

A method for updating firmware on a device in an information handling system in a resilient manner is described. The method includes receiving a new firmware for updating a device; storing a current firmware image or a working copy of the current firmware of the device in a volatile memory; updating the device with the new firmware after storing the current firmware in the volatile memory; setting a first boot flag to perform diagnostics at a next reset of the information handling system based on updating the device with the new firmware; and determining, by the information handling system at the next 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. An information handling system that includes the device and performs the method is also described.