Firmware Update Hand-Off Block for Single Boot Cycle Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing information handling systems face challenges in efficiently updating firmware, particularly in accessing and executing multiple updates during a single boot cycle without data loss or corruption, especially in constrained memory environments and varying hardware configurations.

Innovation Solution

The method involves determining the presence of firmware updates in a boot partition during reboot, reading the updates without initializing queues or enabling the storage device controller, and executing them by creating a firmware update hand-off block that is passed through pre-EFI initialization to the DXE foundation, utilizing NVMe properties and multi-capsule protocols for storing and executing updates in a continuous block of data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If firmware updates are stored in traditional storage locations and accessed during boot, then the system can perform updates, but the boot process becomes complex and time-consuming with multiple initialization steps

Engineering Contradiction:
Improveupdate execution speedVSAvoidboot process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The firmware updates are prepared and stored in the boot partition before the boot process begins. The update capsules are packaged with metadata describing the updates, allowing the system to automatically identify and execute them during boot without requiring complex manual intervention or additional initialization steps.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent combines the boot process with the firmware update execution by storing update capsules in the boot partition. This merging allows the system to perform both booting and updating in a single unified process, eliminating the need for separate complex initialization sequences and reducing overall boot time.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If multiple firmware updates are executed during a single boot cycle, then update efficiency improves, but data loss or corruption may occur in constrained memory environments

Engineering Contradiction:
Improveupdate execution efficiencyVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The firmware updates are segmented into individual capsule payloads, each containing a single update or a small group of related updates. This segmentation allows the system to process and execute updates in manageable chunks during the boot process, preventing memory overload and ensuring data integrity even in constrained environments.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The boot partition acts as an intermediary storage layer between the storage device and the execution environment. It temporarily holds the update capsules and their metadata, allowing the system to read, validate, and execute updates without directly manipulating raw storage data, thereby preventing corruption and ensuring reliable execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If the storage device controller is enabled during boot partition access, then normal storage operations can be performed, but the boot process cannot access updates efficiently

Engineering Contradiction:
Improveboot partition accessibilityVSAvoidupdate access speed
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent extracts the boot partition access mechanism from the normal storage controller initialization sequence. By providing a dedicated simplified interface for reading the boot partition before controller initialization, the system can efficiently access update capsules without requiring the full storage controller to be enabled, thus maintaining both accessibility and performance.

Inventive Principle:
Principle #2Taking out (Extraction)

4Speed

If firmware updates are stored in a continuous block of data in the boot partition, then access speed improves, but the storage structure becomes more complex

Engineering Contradiction:
Improveupdate read speedVSAvoidstorage structure complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The storage structure is pre-organized during system setup, with update capsules and their metadata arranged in a continuous block within the boot partition. This preliminary structuring eliminates the need for complex runtime search and indexing operations, allowing fast sequential access during boot while maintaining a relatively simple storage layout that is easy to implement.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240427584A1Firmware store for updates in an information handling system
Publication Date: 2024.12.26 DELL PROD LP
  • US20240427584A1 patent drawing
  • US20240427584A1 patent drawing
  • US20240427584A1 patent drawing

AI summary

This disclosure describes systems and methods for performing an update or multiple updates to firmware on an information handling system in a single reboot cycle. According to some aspects of the disclosure, firmware updates may be stored in a boot partition. During reboot, an information handling system may determine whether a firmware update is present in the boot partition, and when a firmware update is present performing the update. According to some aspects of the disclosure, performing the update may include creating a firmware update hand-off block (HOB), which may correspond to the firmware update and identify where the update is stored in the boot partition.