Share via


Secure Digital Card Bus Driver (Windows CE 5.0)

Send Feedback

The Secure Digital (SD) card bus driver abstracts the physical implementation of the host controller to provide the client driver with a simple method of sending commands to a card regardless of bus topology. If a client driver must know the details regarding the physical connection of a card for performance reasons, it is able to query the bus driver for this information.

The bus driver is responsible for managing client drivers and, to some degree, host controller drivers. The bus driver exposes a set of services specific to client drivers and a set of services specific to host controller drivers. Both services are designed to minimize complex driver operations, such as client driver loading and unloading, SD Card interrogation and identification, client driver bus requests, and I/O cancellation. These operations are handled by the bus driver.

When a card is inserted into the bus driver, it initiates a set of actions to determine the type of the card and load the appropriate client driver. The SD bus driver loads client drivers using the ActivateDeviceEx function.

Due to the layered architecture of the SD card stack, the bus driver is the only driver that the client driver must interface with. The bus driver presents an abstraction of the SD protocol to the client driver. This abstraction hides all operation of the lower level host controller hardware from the client driver. Because this abstraction is purely software based, a client driver can operate on any hardware platform for which the SD bus driver exists and a compatible host controller driver has been written.

The bus driver provides simultaneous access for multiple client drivers in a thread-safe manner. The bus driver provides the proper serialization and synchronization even if the client drivers are controlling cards in separate slots or controlling separate functions on a multi-function card.

See Also

Secure Digital Card Driver Development Concepts | ActivateDeviceEx

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.