IP Library Patent Application 17380979
Patent Application
App. No. 17/380,979

ENFORCING CORRECT SEQUENCING OF FIRMWARE UPDATES

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
17/380,979
Abstract

A firmware update method maintains a firmware resource table for multiple firmware modules. The table includes a globally unique identifier (GUID) of the module and current version information. A firmware capsule is delivered to a capsule delivery service (CDS) and pushed to a platform. The capsule includes a firmware update and firmware dependency components, indicating GUIDs and minimum current versions of one or more other firmware modules that must be found in the resource table before installing the firmware module being processed. An update may be perform for the particular firmware module responsive to confirming the current version information satisfies the dependency criteria. If the version information does not satisfy the dependency criteria, the firmware capsule may be staged to a platform store and GUID in the resource table may be removed. Conversely, successfully processing a previously staged firmware capsule may include restoring or otherwise updating the GUID.

Claims (30)

1 . A firmware update method, comprising:

maintaining a firmware resource table for a plurality of firmware modules wherein the firmware resource table includes, for each of the firmware modules, a globally unique identifier (GUID) of the firmware module and current version information indicative of current version of the firmware module;

receiving a firmware capsule from a firmware service, wherein the firmware capsule includes a firmware update for a particular firmware module and dependency criteria indicative of prerequisite versions of other firmware modules; and

processing the firmware capsule based on the current version information and the prerequisite version information, wherein processing the firmware capsule includes performing an update for the particular firmware module responsive to confirming the current version information satisfies the dependency criteria.

2 . The method of claim 1 , wherein the plurality of firmware modules comprise the system firmware modules for the platform.

3 . The method of claim 1 , wherein processing the firmware payload includes, responsive to determining that the current version information does not satisfy the dependency criteria, staging the firmware capsule in a staging resource without updating the particular firmware module.

4 . The method of claim 3 , wherein the staging resource comprises a local nonvolatile storage resource.

5 . The method of claim 3 , wherein the staging store comprises a network storage resource.

6 . The method of claim 5 , further comprising:

responsive to updating the firmware component, performing said processing on any previously staged firmware capsules.

7 . The method of claim 6 , wherein staging the firmware capsule includes removing the GUID from the firmware resource table and wherein processing the firmware capsule includes restoring the GUID to the firmware update resource table responsive to processing a staged firmware capsule and successfully updating the corresponding firmware module.

8 . The method of claim 1 , wherein the firmware service is selected from: a Windows update service and a Linux vendor firmware service (LVFS).

9 . The method of claim 1 , wherein the dependency criteria indicates GUIDs and minimum current versions of one or more other firmware modules that must be included in the firmware resource table.

10 . The method of claim 1 , wherein performing the firmware update includes storing a success or error code in the firmware resource table responsive to a successful or failed update.

11 . An information handling system, comprising:

a central processing unit;

a system memory, communicatively coupled to the CPU, including process executable instructions that, when executed by the CPU, cause the information handling system to perform firmware update operations, wherein the firmware update operations include:

maintaining a firmware resource table for a plurality of firmware modules wherein the firmware resource table includes, for each of the firmware modules, a globally unique identifier (GUID) of the firmware module and current version information indicative of current version of the firmware module;

receiving a firmware capsule from a firmware service, wherein the firmware capsule includes a firmware update for a particular firmware module and dependency criteria indicative of prerequisite versions of other firmware modules; and

processing the firmware capsule based on the current version information and the prerequisite version information, wherein processing the firmware capsule includes performing an update for the particular firmware module responsive to confirming the current version information satisfies the dependency criteria.

12 . The information handling system of claim 11 , wherein the plurality of firmware modules comprise the system firmware modules for the platform.

13 . The information handling system of claim 11 , wherein processing the firmware payload includes, responsive to determining that the current version information does not satisfy the dependency criteria, staging the firmware capsule in a staging resource without updating the particular firmware module.

14 . The information handling system of claim 13 , wherein the staging resource comprises a local nonvolatile storage resource.

15 . The information handling system of claim 13 , wherein the staging store comprises a network storage resource.

16 . The information handling system of claim 15 , wherein the firmware update operations include:

responsive to updating the firmware component, performing said processing on any previously staged firmware capsules.

17 . The information handling system of claim 16 , wherein staging the firmware capsule includes removing the GUID from the firmware resource table and wherein processing the firmware capsule includes restoring the GUID to the firmware update resource table responsive to processing a staged firmware capsule and successfully updating the corresponding firmware module.

18 . The information handling system of claim 11 , wherein the firmware service is selected from: a Windows update service and a Linux vendor firmware service (LVFS).

19 . The information handling system of claim 11 , wherein the dependency criteria indicates GUIDs and minimum current versions of one or more other firmware modules that must be included in the firmware resource table.

20 . The information handling system of claim 11 , wherein performing the firmware update includes storing a success or error code in the firmware resource table responsive to a successful or failed update.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2021
From: SAMUEL, BALASINGH PONRAJ; MARTINEZ, RICARDO L.
To: DELL PRODUCTS L.P.
Reel/Frame 056921/0616 →