Share via


PCMCIA Legacy Compatibility Layer Architecture

Other versions of this page are also available for the following:

Windows Mobile Not SupportedWindows Embedded CE Supported

8/28/2008

The legacy PCMCIA legacy compatibility layer allows any legacy PCMCIA client drivers to run on the Windows CE 5.0 host stack.

Note

A legacy PCMCIA client driver is one that was created prior to Windows CE 5.0 that supports only 16-bit PCMCIA cards. A PC Card driver is one that was created in Windows CE 5.0 that supports both 16 and 32-bit PCMCIA cards and was written using the bus-agnostic driver model. For more information, see PC Card Bus-Agnostic Client Drivers.

The upper layer of this driver exposes a number of functions that you can use to write stream interface drivers for individual legacy PCMCIA cards. These functions constitute the PCMCIA card services library. The lower layer exposes a set of lower-level functions that the upper layer uses. These functions constitute the PCMCIA socket services library.

The following table shows the device interface functions for the PCMCIA legacy compatibility layer.

Function Description

CardAccessConfigurationRegister

Reads or writes the function and configuration registers of a legacy PCMCIA card.

CardDeregisterClient

Removes a legacy PCMCIA client driver's registration from PC Card card services.

PC Card client drivers are stream interface drivers that use the PC Card services library to interact with their PC Card devices.

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 on 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 legacy PCMCIA memory or I/O space to system memory and returns a pointer that accesses the mapped region.

CardModifyConfiguration

Modifies an existing legacy PCMCIA card configuration. It can 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 powers 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. PC Card 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 legacy PCMCIA memory or I/O space. The window must be mapped by the CardMapWindow function before the window can access the legacy PCMCIA 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 the socket and function pair specified in the CARD_EVENT_MASK_PARMS structure.

See Also

Concepts

Legacy PCMCIA Driver Support
Legacy PCMCIA Driver Registry Settings