IP Library Granted Patent US 7,500,094
Granted Patent B2
US 7,500,094 · App. 11/252,486 · Granted Mar 3, 2009

BIOS identification, initialization and management

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,500,094
App. No.
11/252,486
Granted
Mar 3, 2009
Kind
B2
Abstract

The present invention provides systems and methods for a modular and enhanced device initialization manager (eDIM). eDIM enumerates and allocates resources to buses and devices of a computer systems during basic input output system (BIOS) power on self-test (POST).

Claims (43)

1. A method of initializing BIOS (basic input/output system) POST (power on self test) of a device within a computer system, said method comprising the step of:

during BIOS POST, calling a modularized enhanced device initialization manager (eDIM) to perform a set of BIOS initialization instructions and to build a driver list for the devices of the system, the driver list comprising types and characteristics of each available driver; and

upon the eDIM performing the set of BIOS initialization instructions and building the driver list, returning control from the eDIM back to the BIOS POST.

2. The method of claim 1 , wherein said eDIM further comprises the step of classifying each driver into a group consisting of device/bus specific, class specific, or generic driver classification.

3. The method of claim 1 , wherein said eDIM further comprises the step of initializing a configuration manager that provides generic instructions for enumerating and allocating a device tree during POST.

4. The method of claim 1 , wherein said eDIM further comprises the step of initializing a resource manager that manages system-wide resources and manages arbitration and allocation of the resources to buses and devices of the system during POST.

5. The method of claim 1 , wherein said eDIM further comprises the step of allocating a root bus.

6. The method of claim 1 , wherein said eDIM further comprises the step of locating a driver for root bus in said driver list.

7. The method of claim 1 , wherein said eDIM further comprises the step of preparing entry points for said root bus.

8. The method of claim 1 , wherein said eDIM further comprises the step of enumerating said root bus.

9. The method of claim 1 , wherein said eDIM further comprises the step of allocating resources to said root bus.

10. A method of performing a modularized set of BIOS initialization instruction of a device within a computer system, said method comprising the steps of:

a) during POST, building a driver list for a device of a system, the driver list comprising types and characteristics of each available driver;

b) initializing a configuration manager that provides generic instructions for enumerating and allocating a device tree during POST;

c) initializing a resource manager that manages system-wide resources and manages arbitration and allocation of the resources to buses and devices of the system during POST;

d) allocating a root bus through the configuration manager;

e) upon allocating the root bus, locating a driver for said root bus in said driver list through the configuration manager;

f) upon locating the driver, preparing the entry points of said root bus through the configuration manager;

g) upon preparing the entry points, enumerating said root bus through the configuration manager; and

h) upon enumerating said root bus, allocating resources to said root bus through the resource manager.

11. The method of claim 10 , wherein said step of enumerating said root bus further comprises the step of recursively enumerating each eNode coupled to said root bus.

12. The method of claim 10 , wherein each step of allocating resources to said root bus further comprises the step of recursively allocating resources to each eNode coupled to said root bus.

13. A computer system comprising:

a) a central processing unit (CPU) having registers associated therewith and functioning for executing a basic input/output system (BIOS);

b) a read-only memory (ROM) in circuit communication with said CPU and containing BIOS code executable on said CPU;

c) a random access memory (RAM) in circuit communication with said CPU, wherein said CPU, ROM, RAM and BIOS being configured to:

during POST, build a driver list for a device of a said system, the driver list comprising types and characteristics of each available driver;

initialize a configuration manager that provides generic instructions for enumerating and allocating a device tree during POST;

initialize a resource manager that manages system-wide resources and manages arbitration and allocation of the resources to buses and devices of the system during POST;

allocate a root bus through the configuration manager;

locate a driver for said root bus in said driver list through the configuration manager;

prepare the entry points of said root bus through the configuration manager;

enumerate said root bus through the configuration manager; and

allocate resources to said root bus through the resource manager.

14. A computer system according to claim 13 further comprising isolated code sections that perform specific functions.

15. A computer system according to claim 13 further comprising subroutines that support specific hardware devices.

16. A computer system according to claim 13 further comprising support for IA64 and IA32 platform architectures.

17. A computer system according to claim 13 further comprising support for full BIOS modularity facilitating the removal or addition of support for a device.

18. A computer system according to claim 13 further comprising support for legacy free and legacy platform architecture.

19. A computer system according to claim 13 further comprising support bridge hopping.

20. A computer system according to claim 13 further comprising support option ROMs.

21. A computer system according to claim 13 further comprising support for separate north and south bridge code.

22. A computer system according to claim 13 further comprising resource and error logging.

Assignments (5)
PATENT SECURITY AGREEMENT Recorded Oct 23, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: BAIN CAPITAL CREDIT, LP, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 069229/0834 →
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: PHELPS, ROBERT; NATARAJAN, SIVAGAR
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 021542/0503 →