IP Library Granted Patent US 7,840,792
Granted Patent B2
US 7,840,792 · App. 11/789,732 · Granted Nov 23, 2010

Utilizing hand-off blocks in system management mode to allow independent initialization of SMBASE between PEI and DXE phases

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,840,792
App. No.
11/789,732
Granted
Nov 23, 2010
Kind
B2
Abstract

Methods, systems, and computer program products are provided for making PEI phase implementation independent from DXE phase implementation in a computer system implementing the Extensible Firmware Interface standard. For example, one embodiment of the present invention uses a hand-off block to make SMBASE initialization in PEI independent form SMBASE initialization in DXE. In another embodiment of the present invention, PEI phase is entered in order to resume from an S3 standby state.

Claims (51)

1. A computer-implemented method for using a hand-off block (“HOB”) in a system management mode (“SMM”) to make SMM base (“SMBASE”) initialization in a pre-EFI initialization (“PEI”) phase independent from SMBASE initialization in a driver execution environment (“DXE”) phase, the method comprising executing instructions on a general-purpose computing device programmed to perform the steps of:

entering the PEI phase;

creating a copy of a default SMM handler;

determining an initial boot-strap processor (“BSP”) SMBASE and storing it in the HOB;

determining a first SMBASE for a first processor using the initial BSP SMBASE;

storing the first SMBASE in the HOB;

storing DXE information that describes the memory to be used during the DXE phase of SMM in the HOB;

storing the number of processors in the HOB;

restoring the default SMM handler using the copy of the default SMM handler; and

using information in the HOB to initialize SMM.

2. The method of claim 1 , wherein entering the PEI phase comprises entering the PEI phase in order to resume from an S3 standby state.

3. The method of claim 1 , wherein entering the PEI phase comprises entering the PEI phase from at least one of a cold boot, warm boot, CPU-only reset, or power-on state.

4. The method of claim 1 , further comprising the steps of:

determining a second SMBASE for a second processor using the initial BSP SMBASE; and

storing the second SMBASE in the HOB.

5. The method of claim 4 , further comprising the step of selecting a processor to execute one or more SMM drivers using the BSP.

6. The method of claim 1 , wherein the HOB comprises a plurality of HOBs.

7. A system for using a hand-off block (“HOB”) in a system management mode (“SMM”) to make SMM base (“SMBASE”) initialization in a pre-EFI initialization (“PEI”) phase independent from SMBASE initialization in a driver execution environment (“DXE”) phase, comprising:

means for entering the PEI phase;

means for creating a copy of a default SMM handler;

means for determining an initial boot-strap processor (“BSP”) SMBASE and storing it in the HOB;

means for determining a first SMBASE for a first processor using the initial BSP SMBASE;

means for storing the first SMBASE in the HOB;

means for storing DXE information that describes the memory to be used during the DXE phase of SMM in the HOB;

means for storing the number of processors in the HOB;

means for restoring the default SMM handler using the copy of the default SMM handler; and

means for using information in the HOB to initialize SMM.

8. The system of claim 7 , wherein entering the PEI phase comprises entering the PEI phase in order to resume from an S3 standby state.

9. The system of claim 7 , wherein entering the PEI phase comprises entering the PEI phase from at least one of a cold boot, warm boot, CPU-only reset, or power-on state.

10. The system of claim 7 , further comprising:

a means for determining a second SMBASE for a second processor using the initial BSP SMBASE; and

a means for storing the second SMBASE in the HOB.

11. The system of claim 10 , further comprising a means for selecting a processor to execute one or more SMM drivers using the BSP.

12. The system of claim 7 , wherein the HOB comprises a plurality of HOBs.

13. A non-transitory computer storage medium encoded with computer-readable instructions for using a hand-off block (“HOB”) in a system management mode (“SMM”) of a computer to make SMM base (“SMBASE”) initialization in a pre-EFI initialization (“PEI”) phase independent from SMBASE initialization in a driver execution environment (“DXE”) phase, wherein the computer-readable instructions cause a computer to perform the steps of:

entering the PEI phase;

creating a copy of a default SMM handler;

determining an initial boot-strap processor (“BSP”) SMBASE and storing it in the HOB;

determining a first SMBASE for a first processor using the initial BSP SMBASE;

storing the first SMBASE in the HOB;

storing DXE information that describes the memory to be used during the DXE phase of SMM in the HOB;

storing the number of processors in the HOB;

restoring the default SMM handler using the copy of the default SMM handler; and

using information in the HOB to initialize SMM.

14. The computer storage medium of claim 13 , wherein entering the PEI phase comprises entering the PEI phase in order to resume from an S3 standby state.

15. The computer storage medium of claim 13 , wherein entering the PEI phase comprises entering the PEI phase from at least one of a cold boot, warm boot, CPU-only reset, or power-on state.

16. The computer storage medium of claim 13 , encoded with further computer-readable instructions that cause the computer to perform the steps of:

determining a second SMBASE for a second processor using the initial BSP SMBASE; and

storing the second SMBASE in the HOB.

17. The computer storage medium of claim 16 , encoded with further computer-readable instructions that cause the computer to perform the step of selecting a processor to execute one or more SMM drivers using the BSP.

18. The computer storage medium of claim 13 , wherein the HOB comprises a plurality of HOBs.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0795 →
SECURITY INTEREST Recorded May 6, 2019
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 049087/0266 →
ENTITY CONVERSION Recorded Apr 15, 2019
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 049091/0973 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2008
From: WILSON, MARK ERIC
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 021543/0917 →