Dynamically updating a computer system and firmware image utilizing an option read only memory (OPROM) data structure
First Claim
1. A computer-implemented method for dynamically updating a computer system firmware image, the method comprising computer-implemented operations for:
- modifying, using a computer having a memory and a processor, a first option read only memory (“
OPROM”
) corresponding to a first hardware device within the computer system firmware image having a plurality of OPROMs;
searching, using the computer, the firmware image for a data structure signature stored within an OPROM data structure, the OPROM data structure having a plurality of stored OPROM identifiers corresponding to a plurality of hardware devices associated with a computer system;
retrieving, using the computer, the OPROM data structure identified by the data structure signature; and
modifying, using the computer, a first OPROM identifier within the OPROM data structure to reflect the modification of the first OPROM,wherein modifying the first OPROM comprises storing the first OPROM corresponding to an added hardware device to the firmware image with the plurality of OPROMs and wherein modifying the first OPROM identifier within the OPROM data structure comprises storing the first OPROM identifier corresponding to the first OPROM within a data field of the OPROM data structure.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, apparatus, and computer-readable media for dynamically updating a computer system and firmware image utilizing an option ROM (“OPROM”) data structure. When a hardware configuration of a computer system is modified, a corresponding OPROM within the firmware image is modified. An OPROM data structure is created in a firmware image. Each data structure contains identification data corresponding to the data structure as well as an OPROM entry for each OPROM within the firmware image. Each OPROM entry has identification data pointing to the corresponding OPROM and identification data corresponding to the OPROM and associated hardware device. Firmware program modules utilize the OPROM data structure to identify the correct OPROMs for use with the computer system hardware configuration. An application searches for a unique signature associated with the OPROM data structure and modifies OPROM entries as hardware devices and associated OPROMs are added to and removed from the computer system.
62 Citations
19 Claims
-
1. A computer-implemented method for dynamically updating a computer system firmware image, the method comprising computer-implemented operations for:
-
modifying, using a computer having a memory and a processor, a first option read only memory (“
OPROM”
) corresponding to a first hardware device within the computer system firmware image having a plurality of OPROMs;searching, using the computer, the firmware image for a data structure signature stored within an OPROM data structure, the OPROM data structure having a plurality of stored OPROM identifiers corresponding to a plurality of hardware devices associated with a computer system; retrieving, using the computer, the OPROM data structure identified by the data structure signature; and modifying, using the computer, a first OPROM identifier within the OPROM data structure to reflect the modification of the first OPROM, wherein modifying the first OPROM comprises storing the first OPROM corresponding to an added hardware device to the firmware image with the plurality of OPROMs and wherein modifying the first OPROM identifier within the OPROM data structure comprises storing the first OPROM identifier corresponding to the first OPROM within a data field of the OPROM data structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-implemented method for dynamically updating a computer system and computer system firmware image, the method comprising computer-implemented operations for comprising:
-
installing, using a computer having a memory and a processor, a first hardware device within the computer system; determining, using a computer, whether a first OPROM corresponding to the first hardware device is present within the computer system; if the first OPROM is not present within the computer system, storing the first OPROM within a firmware image of the computer system; searching, using the computer, the firmware image for a data structure signature stored within an OPROM data structure, the OPROM data structure having a plurality of stored OPROM identifiers corresponding to a plurality of hardware devices associated with the computer system; retrieving, using the computer, the OPROM data structure located by the data structure signature; and storing a first OPROM identifier within the OPROM data structure corresponding to the first OPROM stored within the firmware image, wherein modifying the first OPROM comprises storing the first OPROM corresponding to an added hardware device to the firmware image with the plurality of OPROMs and wherein modifying the first OPROM identifier within the OPROM data structure comprises storing the first OPROM identifier corresponding to the first OPROM within a data field of the OPROM data structure. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory memory for storing a firmware image for creating a computer system firmware, the firmware image comprising:
-
an OPROM corresponding to a hardware device associated with the computer system, and an OPROM data structure stored in the firmware image, the OPROM data structure having an array of data fields populated by a data structure signature identifying the OPROM data structure, an OPROM identifier comprising identifying information relating to the OPROM, and a pointer identifying a location of the OPROM, and wherein modifying the first OPROM comprises storing the first OPROM corresponding to an added hardware device to the firmware image with the plurality of OPROMs and wherein modifying the first OPROM identifier within the OPROM data structure comprises storing the first OPROM identifier corresponding to the first OPROM within a data field of the OPROM data structure. - View Dependent Claims (17, 18, 19)
-
Specification