Bus Drivers (Compact 2013)

3/26/2014

A bus driver is a device driver that controls a bus. Bus drivers can have one or more of the following responsibilities:

  • Manage physical buses such as PC Card, USB, or PCI
  • Load drivers on a physical bus for hardware that the bus driver does not directly manage. An example is the Bus Enumerator, which is the root bus driver that loads built-in drivers if the platform has PCI bus support
  • Load device drivers that manage hardware indirectly through another device driver

Bus drivers read configuration information about a bus and walk buses to discover and enumerate devices on the bus. Bus drivers provide Device Manager with information to create device handles and bus-relative names. They also provide enough information to identify themselves to drivers and applications for bus control operations.

Bus drivers manage the \$bus namespace and create bus names for bus-based devices. Bus names relate to the underlying bus structure and are usually derived from the bus type, the bus number, and other specific identifiers such as the device number and function number. The \$bus namespace provides a way to perform operations on a device that differ from typical device operations. Because these operations typically go through the bus driver, the bus driver can provide additional security for the system. For more information about bus names and the \$bus namespace, see Bus-Based Driver Names.

Because Windows Embedded Compact 2013 includes bus drivers for most popular bus topologies, you typically do not develop bus drivers. When you develop a new device driver, you implement your device driver to work with an existing bus driver if your device is on a bus. The Windows Embedded Compact 2013 PCI bus driver walks and enumerates devices on an attached PCI bus. The Windows Embedded Compact 2013 USB bus driver connects a USB hub to your target platform and exposes the USB driver interface functions listed in the Universal Serial Bus Specification.

For More Information About Bus Drivers

To learn more about bus drivers, see the Windows Embedded Compact 2013 topics described in the following table.

Topic

Description

PCI Bus Drivers

Describes PCI bus driver device configuration functions, structures, and IOCTLs.

USB Bus Driver

Describes USB host controller drivers that control USB hubs connected to a Windows Embedded Compact powered device.

See Also

Concepts

Device Driver Types