IP Library › Granted Patent US 7,080,245
Granted Patent B2
US 7,080,245 · App. 10/155,345 · Granted Jul 18, 2006

Method and system of switching between two or more images of firmware on a host device

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 7,080,245
App. No.
10/155,345
Filed
May 23, 2002
Granted
Jul 18, 2006
Kind
B2
Examiner
DU, THUAN N
Art Unit
2116
USPC
713/2
Abstract

A method of switching between two or more images of firmware on a host device includes storing two or more images of firmware in non-volatile memory of the host device and loading one of the images upon startup in response to a user-controllable indicator. A host device that runs firmware during operation may include a non-volatile memory unit that stores a boot code module and is configured to hold two or more firmware images, a processor for executing the boot code module and firmware, said processor being in communication with the non-volatile memory and a switch in communication with the processor, where the boot code module is configured to cause the processor to execute a particular firmware image in response to a position of the switch. Alternatively, a host device that runs firmware during operation may include a non-volatile memory unit that stores a boot code module and at least one firmware image, a processor for executing firmware that communicates with the non-volatile memory unit and a digital flag associated with each firmware image in the non-volatile memory unit, where the boot code module is configured to execute a particular firmware image in response to the digital flags.

Claims (24)

1. A method of switching between two or more images of firmware on a host device, said method comprising:

storing two or more images of firmware in non-volatile memory of said host device; and

loading one of said images upon startup in response to a user-controllable indicator comprising a plurality of digital flags, a separate flag being associated with each of said two or more images of firmware, each said flag having a plurality of possible states and selectively exhibiting one of said plurality of states, such that said plurality of digital flags, taken together, indicate which of said firmware images to load at startup;

wherein said loading one of said images upon startup comprises reading the digital flag associated with each of said firmware images and loading a particular firmware image in accordance with said digital flags.

2. The method of claim 1 , further comprising entering a command via a user interface to make a change to at least one of said flags.

3. The method of claim 1 , wherein said loading one of said images further comprises copying a selected firmware image from non-volatile memory to random access memory.

4. The method of claim 1 , further comprising executing a boot module stored in said non-volatile memory, wherein selection of a firmware image for execution is performed by said boot module.

5. The method of claim 1 , wherein each of said flags comprises a binary string of 1's and 0's.

6. The method of claim 5 , said method further comprising selecting a firmware image for loading based on which flag comprises the most 1's.

7. The method of claim 5 , said method further comprising selecting a firmware image for loading based on which flag comprises the most 0's.

8. The method of claim 1 , further comprising changing a single bit of one of said flags to select a different firmware image to be loaded at a subsequent startup.

9. A host device that runs firmware during operation, said host device comprising:

a non-volatile memory unit that stores a boot code module and at least one firmware image;

a processor for executing firmware that communicates with said non-volatile memory unit; and

a plurality of digital flags such that a different digital flag is associated with each said firmware image in said non-volatile memory unit, each said flag having a plurality of possible states and selectively exhibiting one of said plurality of states;

wherein said boot code module is configured to execute a particular firmware image in response to said digital flags.

10. The host device of claim 9 , wherein said non-volatile memory unit comprises two or more memory devices.

11. The host device of claim 9 , wherein each of said flags comprises a binary string of 1's and 0's.

12. The host device of claim 11 , wherein said boot code module selects a firmware image for execution based on which flag comprises the most 1's.

13. The host device of claim 11 , wherein said boot code module selects a firmware image for execution based on which flag comprises the most 0's.

14. A system for rapidly switching between two or more images of firmware on a host device, said system comprising:

means for storing two or more images in said host device;

means for indicating a particular image to load at startup comprising a separate digital flag associated with each said image for indicating which image to load at startup, each said flag having a plurality of possible states and selectively exhibiting one of said plurality of states; and

means for loading one of said images upon startup in response to said means for indicating which a particular image to load at startup.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 043375/0374 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2003
From: HEWLETT-PACKARD COMPANY
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 013776/0928 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2002
From: BALLARD, CURTIS C.; TORREY, BILL; HOWE, COLETTE
To: HEWLETT-PACKARD COMPANY
Reel/Frame 013313/0456 →
Continuity (1)
Related Publication 20030221092A1 · Nov 27, 2003