Method and a portable computing device (PCD) for exposing a peripheral component interface express (PCIE) coupled device to an operating system operable on the PCD
First Claim
Patent Images
1. A method for exposing a peripheral component interconnect express (PCIe) compatible device to an operating system absent a native bus driver on a portable computing device, the method comprising:
- storing content in a set of PCIe base address registers that describe a PCIe compatible device;
integrating the content in the set of PCIe base address registers to an advanced configuration power interface (ACPI) stored in the portable computing device; and
using firmware coupled to a processor in the portable computing device to initialize a PCIe device coupled to the portable computing device absent the driver by matching the content in the set of PCIe base address registers as integrated in the ACPI to coincide with values in the ACPI such that the PCIe device is exposed to an operating system operating within the portable computing device through the ACPI absent the driver, wherein integrating the content in the set of PCIe base address registers comprises reading a table at runtime and providing the content at compile time.
1 Assignment
0 Petitions
Accused Products
Abstract
In a portable computing device having a system-on-chip (SoC) Acorn RISC Machine (ARM)-based resource architecture, a peripheral component interconnect express (PCIe) bus is used to insert PCIe device memory into system memory absent a PCIe driver. During a PCIe initialization, the contents of PCIe base address registers (BARs) are mapped or otherwise updated to coincide with values assigned to the PCIe device in the advanced configuration and power interface (ACPI) tables.
-
Citations
13 Claims
-
1. A method for exposing a peripheral component interconnect express (PCIe) compatible device to an operating system absent a native bus driver on a portable computing device, the method comprising:
-
storing content in a set of PCIe base address registers that describe a PCIe compatible device; integrating the content in the set of PCIe base address registers to an advanced configuration power interface (ACPI) stored in the portable computing device; and using firmware coupled to a processor in the portable computing device to initialize a PCIe device coupled to the portable computing device absent the driver by matching the content in the set of PCIe base address registers as integrated in the ACPI to coincide with values in the ACPI such that the PCIe device is exposed to an operating system operating within the portable computing device through the ACPI absent the driver, wherein integrating the content in the set of PCIe base address registers comprises reading a table at runtime and providing the content at compile time. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A portable computing device (PCD) for exposing a peripheral component interconnect express (PCIe) compatible device to an operating system on the PCD absent a native bus driver on the portable computing device, the portable computing device comprising:
-
a processor coupled to a memory element having an operating system and an advanced configuration and power interface (ACPI) stored therein; an extensible host controller interface (xHCI) coupled to the processor via a PCIe bus; and a firmware element coupled to the processor and the memory element via a first bus entirely within the PCD, the firmware element including a PCIe base address register set store having a plurality of addressable memory elements with respective content stored therein that match a resource, as described by information in one or more of the tables in the ACPI, and that expose a PCIe compatible device to the operating system in response to matched content from within the PCD through the ACPI absent the driver, wherein integrating the content in the set of PCIe base address registers comprises reading a table at runtime and providing the content at compile time. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer program product comprising a non-transitory computer usable medium having a computer readable program code embodied therein, said computer readable program code adapted to be executed to implement a method for configuring a portable computing device having a plurality of resources, said method comprising:
-
comparing content in a set of PCIe base address registers to an advanced configuration power interface (ACPI) such that the content in the set of PCIe base address registers and information in the ACPI identify a PCIe device, wherein comparing the content in the set of PCIe base address registers to information in the ACPI comprises reading a table at runtime and providing the content at compile time; and using firmware within the portable computing device to initialize a PCIe bus coupled to the portable computing device and the PCIe device without using a driver such that the PCIe device is available to an operating system on the portable computing device through the ACPI without use of the driver.
-
Specification