PC Card Driver Architecture

The PC Card socket driver manages any PC Card sockets on a Microsoft® Windows® CE–based platform. The upper layer of this driver exposes a number of functions that you can use to write stream interface drivers for individual PC Cards. These functions constitute the card services library. The lower layer exposes a set of lower-level functions that the upper layer uses. These functions constitute the socket services library.

The following table shows the device interface functions for the PC Card socket driver.

Function Description
CardAccessConfigurationRegister Reads or writes the function and configuration registers of a PC Card.
CardDeregisterClient Removes a PC Card client driver's registration from Card Services.
CardGetEventMask Retrieves either the driver's global event mask or the event mask for a particular socket and function. The event mask specifies the events that trigger a callback.
CardGetFirstTuple Retrieves the first tuple of the specified type for the specified socket and function.
CardGetNextTuple Retrieves the next tuple of the specified type for the specified socket and function.
CardGetParsedTuple Reads and decodes the CISTPL_CONFIG and CISTPL_CFTABLE_ENTRY tuples. These tuples are both complex and difficult to decode; this function stores the information in those tuples in data structures that are easier to access.
CardGetStatus Retrieves the current status of the specified socket and function pair.
CardGetTupleData Reads the data from the current tuple.
CardMapWindow Maps an area in PC Card memory or I/O space to system memory and returns a pointer used to access the mapped region.
CardModifyConfiguration Modifies an existing PC Card configuration. It can be used to set and reset information within the fAttributes parameter of the CARD_CONFIG_INFO structure.
CardPowerOff Turns the power off for a configured socket and function. If all functions on a given socket are powered off or are not configured, the socket itself will power down.
CardPowerOn Restarts the power on an already configured socket that has been powered down.
CardRegisterClient Registers a callback function that is called by Card Services when a specified socket event occurs. The callback function notifies the driver of the event, such as card insertion, so that the driver can take the appropriate action.
CardReleaseConfiguration Places the selected socket and card into a memory-only interface, which is the default mode.
CardReleaseExclusive Releases exclusive access to a socket and function pair.
CardReleaseIRQ Stops notification of interrupts on the specified socket and function pair.
CardReleaseSocketMask Disables the callbacks requested by the CardRequestSocketMask function for a particular socket and function pair.
CardReleaseWindow Releases a memory or I/O window allocated by the CardRequestWindow function.
CardRequestConfiguration Sets socket attributes, interface type, voltage, and registers, as specified by the CARD_CONFIG_INFO structure.
CardRequestExclusive Requests exclusive access to a specified socket and function pair.
CardRequestIRQ Registers an interrupt service callback function for the specified socket and function pair.
CardRequestSocketMask Associates a socket and function pair with an event mask for the driver. Card Services then restricts its future callbacks to the driver to those associated with the event mask passed to this function.
CardRequestWindow Allocates a window within system memory used to access PC Card memory or I/O space. The window must be mapped by the CardMapWindow function before the window can access the PC Card.
CardResetFunction Resets a specified card function in a specified socket.
CardSetEventMask Sets either the driver's global event mask, set initially by the CardRegisterClient function, or an event mask for a specified socket and function pair as specified in the CARD_EVENT_MASK_PARMS structure.

The following table shows the hardware interface functions for the PC Card socket driver.

Function Description
PDCardGetAdapter Returns power-save mode status and capabilities.
PDCardGetSocket Gets the socket state of the specified socket.
PDCardGetWindow Reports the current state of a memory or an I/O window.
PDCardInquireAdapter Returns the socket controller's characteristics and capabilities.
PDCardInquireWindow Reports the characteristics and capabilities of a memory or I/O window.
PDCardReadAttrByte Reads the byte at the specified offset in a card's attribute memory space.
PDCardReadCmnByte Reads the byte at the specified offset in a card's common memory space.
PDCardResetSocket Resets the specified socket.
PDCardSetAdapter Sets power-save mode status and capabilities.
PDCardSetSocket Sets the socket state of the specified socket.
PDCardSetWindow Changes the characteristics of a memory or I/O window.
PDCardWriteAttrByte Writes a byte to the specified offset in a card's attribute memory space.
PDCardWriteCmnByte Writes a byte to the specified offset in a card's common memory space.

See Also

PC Card Drivers | PC Card Driver Samples | PC Card Driver Registry Settings

 Last updated on Tuesday, May 18, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.