IP Library Granted Patent US 7,007,159
Granted Patent B2
US 7,007,159 · App. 10/141,829 · Granted Feb 28, 2006

System and method for loading and integrating a firmware extension onto executable base system firmware during initialization

Assignee: Intel Corporation
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,007,159
App. No.
10/141,829
Granted
Feb 28, 2006
Kind
B2
Abstract

Arrangements for initialization-time and run-time integration of firmware and driver software extensions for supporting add-in hardware.

Claims (18)

1. A firmware-initializing arrangement comprising:

an initialization-time integrator to load at least one firmware extension, from a selection of additional firmware extensions, that matches a hardware extension detected during initialization, and integrating the at least one firmware extension onto an executable base system firmware's run-time image during initialization, and to dynamically adjust, during initialization, system base firmware component interfaces and addressing pointers of the at least one firmware extension, with adjustment being according to at least one of: component relocation addressing information of a firmware memory location in active firmware memory where the at least one firmware extension is to be integrated, and base addressing information of at least one subroutine in base firmware, the initialization-time integrator being operative in real-time during initialization.

2. An arrangement as claimed in claim 1 , wherein the at least one firmware extension is integrated with the base firmware via shadow-copying thereof with the adjustment into a shadow-RAM (random access memory) used as the active firmware memory, during a shadow-RAM read/write initialization-time phase of the system.

3. An arrangement as claimed in claim 2 , wherein the shadow-RAM read/write initialization-time phase is one of: an INIT read/write initialization-time phase; and a power management (PM) read/write initialization-time phase.

4. An arrangement as claimed in claim 1 , further comprising:

a verifier operative to verify for each firmware extension of the at least one firmware extension, at least one of an origin and integrity of the firmware extension, and, in an event where a verification of the at least one of the origin and integrity of the firmware extension fails, to inhibit at least one of: integration of the firmware extension by the initialization-time integrator; and, execution of the firmware extension.

5. An arrangement as claimed in claim 4 , where the firmware extension has a stored cryptographic-generated signature associated therewith, and where the verifier is operative to use the signature to verify the firmware extension.

6. An arrangement as claimed in claim 5 , where the verifier is operative to generate a real-time cryptographic-generated signature of an image of the firmware extension, and to compare the real-time cryptographic-generated signature with the stored cryptographic-generated signature to verify the firmware extension.

7. An arrangement as claimed in claim 1 , wherein at least one of the at least one firmware extension is firmware to support hardware added to an original base platform of the system, or of an add-in adapter card, through an add-in hardware connector, or connector slot in the base platform.

8. An arrangement as claimed in claim 7 , wherein the at least one firmware extension is provided from at least one of: a daughter-card, add-in card, memory hardware and hard disk drive (HDD) data, and a network external to the original platform in which the arrangement is installed.

9. An arrangement as claimed in claim 7 , comprising a run-time integrator to dynamically integrate at least one driver in real-time during a run-time of a system, the at least one driver to support the hardware added to the original platform of the system.

10. An arrangement as claimed in claim 9 , wherein the at least one driver is obtained from at least one of: a daughter-card, memory hardware and hard disk drive (HDD) data, and a network external to an original platform in which the arrangement is installed.

11. An arrangement as claimed in claim 7 , wherein the initialization-time integrator is operative to investigate during initialization of the system, determination of at least one of: an existence, a location, a name, a type and a size of any firmware extension for integration with the base firmware during the initialization-time of the system.

12. A method of providing firmware support for child firmware added to a platform, comprising:

relocatably-adjusting, at an initialization time, at least one relocatable child firmware component from hardware-specific executable code and data, to accommodate integration of the at least one relocatable child firmware component with parent base firmware into active firmware memory, the at least one relocatable child firmware component being operative to provide run-time services and functional support algorithms for child hardware; and, initialization-time integrating the at least one relocatable child firmware component with the parent base firmware in the active firmware memory; the at least one relocatable child firmware component providing services to the parent base firmware at relocatable address locations indicated through an interface table of pointer offsets to the services;

wherein execution of the services uses at least one relocation context parameter which includes a relocation base offset of the at least one relocatable child firmware component after integration thereof in the active firmware memory, which relocation base offset is useable by child code of the at least one relocatable child firmware component during execution as a base offset for all relative firmware code and data access.

13. A method as claimed in claim 12 , wherein the parent base firmware provides callback routines and utilities to the at least one relocatable child firmware component, which may be used in the execution of firmware code for the purpose of using the parent base firmware to control the child hardware.

14. A method as claimed in claim 13 , wherein execution of parent callback routines by the at least one relocatable child firmware component includes the relocation context parameter, provided when the at least one relocatable child firmware component was previously called by the parent base firmware to perform a service.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2014
From: INTEL CORPORATION
To: SONY CORPORATION OF AMERICA
Reel/Frame 032893/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 10, 2002
From: WYATT, DAVID A.
To: INTEL CORPORATION
Reel/Frame 012888/0471 →
Continuity (1)
Related Publication 20030217255A1 · Nov 20, 2003