Patent ID: 7539832

Claim:
A method, comprising: determining an amount of a memory mapped input/output (MMIO) memory available to a computer; accessing a data store configured to store information concerning devices operably connected to the computer; searching for devices operably connected to the computer; upon discovering a device that is operably connected to the computer: logically representing the device in the data store; determining an MMIO memory requirement for the device; and upon determining that the device includes an option ROM: mapping the option ROM into the computer; opening an MMIO aperture for the device; reading a device driver for the device from the option ROM; storing the device driver in a non-MMIO memory available to the computer; unmapping the option ROM from the computer; and linking the device driver stored in the non-MMIO memory to one or more devices logically represented in the data store; and for devices for which MMIO apertures were opened, closing the MMIO apertures.