IP Library Granted Patent US 10,866,801
Granted Patent B1
US 10,866,801 · App. 16/580,804 · Granted Dec 15, 2020

Non-destructive update of discrete components of firmware

Inventors: Igor Kulchytskyy (Lawrenceville, GA); Senthamizhsey Subramanian (Suwanee, GA); Bejean David Mosher (Acworth, GA)
Assignee: AMERICAN MEGATRENDS INTERNATIONAL, LLC
G06F8/654G06F8/65G06F9/4401G06F16/245
View Patent ↗
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 10,866,801
App. No.
16/580,804
Granted
Dec 15, 2020
Kind
B1
Abstract

Non-destructive update of discrete firmware components of a firmware is provided. During a boot-up process, the availability of an update for the firmware can be determined prior to execution thereof. To that end, a controller device can be queried for availability of the update and, when the update is available, a processor that executes the firmware as part of the boot-up process can retrieve an updated version of one or more components of the firmware from a virtual drive device provided by the controller device. The processor can retain such component(s) in a main memory device. The processor can then execute the component(s) from the main memory and can execute other non-updated component(s) of the firmware from a non-volatile memory device that retains the firmware. Therefore, the firmware can be updated during the boot-up process, without changing the contents of the non-volatile memory device.

Claims (30)

1. A method, comprising:

receiving, at a baseboard management controller (BMC), first data indicative of an update for a group of firmware file system (FFS) files, wherein the receiving the first data comprises receiving one or more values of respective one or more attributes of a first FFS file in the group of FFS files, the first data represented as a non-standard resource of a hypermedia representational state transfer (REST) interface and expressed using a JavaScript Object Notation (JSON) based on Open Data Protocol (OData);

configuring, at the BMC, second data indicative of the update for the group of FFS files being available;

receiving, at the BMC, from a processor that executes a firmware of a computing device, a query message requesting availability of an update for at least one FFS file; and

responsive to the query message,

determining, using at least the second data, that an update for the first FFS file in the group of FFS files is available;

providing at least one of a virtual drive device or a media service to expose the update for the first FFS file; and

causing the processor to access the first FFS file from one of the provided virtual drive device or the provided media service.

2. The method of claim 1 , wherein the receiving the one or more values comprises using the hypermedia REST interface, the one or more values expressed using the JavaScript Object Notation (JSON) based on the OData.

3. The method of claim 1 , wherein the receiving the query message comprises receiving data using a hypermedia representational state transfer (REST) interface, the data expressed using a JavaScript Object Notation (JSON) based on Open Data Protocol (OData).

4. The method of claim 1 , wherein the causing the processor to access the update for the first FFS file comprises sending a response message using a hypermedia representational state transfer (REST) interface, the data expressed using a JavaScript Object Notation (JSON) based on Open Data Protocol (OData).

5. The method of claim 4 , wherein the sending the response message comprises sending, to the processor, an instruction to retrieve the update for the first FFS file from the provided virtual drive device or the provided media service.

6. The method of claim 5 , wherein the sending the instruction comprises sending third data using the hypermedia REST interface, the third data expressed using the JSON based on the OData.

7. The method of claim 6 , wherein the sending the third data using the hypermedia REST interface comprises configuring non-standard data in a standard property of the REST interface.

8. A controller device, comprising:

at least one processor; and

at least one memory device having instructions stored thereon that, in response to execution by the at least one processor, cause the controller device to:

receive first data indicative of an update for a group of firmware file system (FFS) files, wherein receiving the first data comprises receiving one or more values of respective one or more attributes of a first FFS file in the group of FFS files, the first data represented as a non-standard resource of a hypermedia representational state transfer (REST) interface and expressed using a JavaScript Object Notation (JSON) based on Open Data Protocol (OData);

configure second data indicative of the update for the group of FFS files being available;

receive, from a processor that executes a firmware of a computing device, a query message requesting availability of an update for at least one FFS file; and

responsive to the query message,

determine, using the second data, that an update for the first FFS file in the group of FFS files is available;

provide at least one of a virtual drive device or a media service to expose the update for the first FFS file; and

cause the processor to access the first FFS file from one of the provided virtual drive device or the provided media service.

9. The controller device of claim 8 , wherein the receiving the one or more values comprises using the hypermedia REST interface, the one or more values expressed using the JSON based on the OData.

10. The controller device of claim 8 , wherein receiving the query message comprises receiving data using a hypermedia representational state transfer (REST) interface, the data expressed using a JavaScript Object Notation (JSON) based on Open Data Protocol (OData).

11. The controller device of claim 8 , wherein causing the processor to access the update for the first FFS file comprises sending a response message using a hypermedia representational state transfer (REST) interface, the data expressed using a JavaScript Object Notation (JSON) based on Open Data Protocol (OData).

12. The controller device of claim 11 , wherein the sending the response message comprises sending, to the processor, an instruction to retrieve the update for the FFS file from the provided virtual drive device or the provided media service.

13. The controller device of claim 12 , wherein the sending the instruction comprises sending third data using the hypermedia REST interface, the third data expressed using the JSON based on the OData.

14. The controller device of claim 13 , wherein the sending the third data using the hypermedia REST interface comprises configuring non-standard data in a standard property of the hypermedia REST interface.

Assignments (5)
PATENT SECURITY AGREEMENT Recorded Oct 23, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: BAIN CAPITAL CREDIT, LP, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 069229/0834 →
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0948 →
SECURITY INTEREST Recorded Apr 30, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 067274/0834 →
ENTITY CONVERSION Recorded Feb 27, 2020
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 052047/0715 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 24, 2019
From: KULCHYTSKYY, IGOR; SUBRAMANIAN, SENTHAMIZHSEY; MOSHER, BEJEAN DAVID
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 050476/0574 →