IP Library Granted Patent US 8,122,447
Granted Patent B2
US 8,122,447 · App. 11/831,559 · Granted Feb 21, 2012

Firmware installation

Assignee: Hewlett-Packard Development Company, L.P.
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 8,122,447
App. No.
11/831,559
Granted
Feb 21, 2012
Kind
B2
Abstract

A firmware bundle is download to a non-operational storage area without changing a live copy of firmware in a device. The firmware bundle is downloaded in order to reboot the device to deploy one or more downloaded firmware packages from the non-operational storage area to the device, launch an Early Boot Installer manager to spawn and monitor the status of one or more Early Boot Installer processes contained in the firmware bundle download, determine in parallel whether a firmware install to one or more subsystems of the device is desire, and install the downloaded firmware package in parallel to one or more subsystems of the device.

Claims (40)

1. A method comprising:

initiating a firmware bundle download to a non-operational storage area, such that a live copy of firmware in a device is not changed;

rebooting the device to deploy one or more downloaded firmware packages from the non-operational storage area to the device;

launching an Early Boot Installer manager to spawn and monitor the status of one or more Early Boot Installer processes contained in the firmware bundle download, wherein launching comprises initializing the Early Boot Installer manager after loading an operating system and one or more basic drivers and before launching a software component that utilizes one or more of the basic drivers;

determining in parallel whether a firmware install to one or more subsystems of the device is desired; and

installing the downloaded firmware package in parallel to one or more subsystems of the device when desired.

2. The method of claim 1 , wherein initiating a firmware bundle download comprises fully overwriting the non-operational storage area with the firmware bundle or retaining multiple instances of the firmware bundle on the non-operational storage area for future installs.

3. The method of claim 1 , further comprising prohibiting with the Early Boot Installer manager, the continuation of a normal boot process until each of the Early Boot Installer processes is complete.

4. The method of claim 1 , wherein determining whether a firmware install is desired comprises:

the Early Boot Installer process reading a value from an override flag, wherein the value from the override flag determines whether or not to force an install; and

the Early Boot Installer process communicating with a version database and a corresponding firmware package on the non-operational storage area if the value from the override flag does not indicate a force install.

5. The method of claim 4 , wherein communicating comprises:

comparing a firmware package version with a corresponding live copy of firmware version, wherein the corresponding live copy of firmware version is listed in the version database.

6. The method of claim 1 further comprising updating a version database after a firmware package install has completed, wherein updating comprises the version database configuring the corresponding live copy of firmware version on the version database to have it reflect the current version the subsystem is running and configuring the corresponding resiliency flag on the version database to reflect that the most recent install to the corresponding subsystem was successful.

7. The method of claim 1 , wherein the Early Boot Installer process may re-install over the corresponding subsystem firmware on the device depending on a corresponding resiliency flag value, wherein the resiliency flag is stored in the device.

8. The method of claim 1 , wherein the Early Boot Installer process periodically provides a status report to the Early Boot Installer manager.

9. The method of claim 8 , wherein the status report of the Early Boot Installer process is sent to a control panel by the Early Boot Installer manager.

10. An apparatus comprising:

a device with one or more subsystems in parallel;

a non-operational storage area, wherein the non-operational storage area may be configured to download a firmware bundle;

a live copy of firmware, wherein the live copy of firmware resides in the device and remains untouched when a firmware bundle download occurs;

an Early Boot Installer manager to spawn and monitor the status of one or more Early Boot Installer processes contained in the firmware bundle and to prohibit a normal boot process from continuing by sending a halt command to the device to prohibit the launching of a software component that utilizes a basic driver, wherein the Early Boot Installer manager is initialized after loading an operating system and the basic driver and before launching the software component that utilizes the basic driver; and

a version database residing in the device.

11. The apparatus of claim 10 , wherein the non-operational storage area may reside in a separate partition of a present storage device or on a separate storage device.

12. The apparatus of claim 10 , wherein the device comprises:

one or more operating systems;

one or more basic drivers; and

one or more software components.

13. The apparatus of claim 10 , wherein the version database comprises:

a list of each live copy of firmware version in the device; and

a resiliency flag for each live copy of firmware in the device, wherein the resiliency flag shows whether the previous install to the corresponding live copy of firmware in the device completed.

14. The apparatus of claim 10 , wherein the firmware bundle comprises one or more firmware packages.

15. The apparatus of claim 10 , wherein the firmware package comprises one or more files and a plurality of file types.

16. The apparatus of claim 10 , wherein the Early Boot Installer manager enables the device to boot if there is an interruption during a download of the firmware bundle to a non-operational storage area or if there is an interruption before each Early Boot Installer processes completes.

17. The apparatus of claim 10 wherein each Early Boot Installer processes resides in a corresponding firmware package.

18. The apparatus of claim 10 wherein the non-operational storage area may download the firmware bundle through an input/output path.

19. A non-transitory computer readable medium comprising:

a non-operational storage area, wherein the non-operational storage area stores one or more firmware bundles;

further wherein an Early Boot Installer manager reads a firmware packages from the non-operational storage area and spawns one or more Early Boot Installer processes in parallel, wherein the Early Boot Installer manager is configured to initialize after loading of an operating system and basic drivers in the device but before launching of a software component that utilizes a basic driver;

further wherein the Early Boot Installer processes comprise means for determining in parallel whether a firmware install is desired for one or more corresponding subsystems of a device and means for installing in parallel to one or more corresponding subsystems of the device when desired.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2008
From: COHEN, EUGENE; HOFFMANN, BRIAN; LEE, CHRIS
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 020816/0869 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2007
From: COHEN, EUGENE; HOFFMAN, BRIAN; LEE, CHRIS
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 019807/0219 →
Continuity (1)
Related Publication 20090037904A1 · Feb 5, 2009