CardRequestIRQ

The CardRequestIRQ function registers an interrupt service callback function for the specified socket and function pair.

Syntax

STATUS CardRequestIRQ( CARD_CLIENT_HANDLE hCardClient CARD_SOCKET_HANDLE hSocket CARD_ISR ISRFunction UINT32 uISRContextData );

Note Only I/O drivers can request interrupt notifications. Interrupts will not be signaled until the PC Card is configured for the I/O interface by a call to CardRequestConfiguration.

Parameters

hCardClient
Specifies a client handle obtained from CardRegisterClient.
hSocket
Specifies a handle to a socket and function pair.
ISRFunction
Points to the interrupt callback function for the specified socket and function pair. This parameter is required.
uISRContextData
Specifies context data to be passed to the interrupt callback function.

Return Values

If the function succeeds, the return value is CERR_SUCCESS; otherwise, it is one of the following:

Value Description
CERR_BAD_ARGS Indicates the pointer specified for ISRFunction is invalid.
CERR_BAD_HANDLE Indicates the driver handle specified for hCardClient is invalid.
CERR_BAD_SOCKET Indicates the socket identifier specified for hSocket is invalid or the PC Card not inserted.
CERR_IN_USE Indicates the configuration or interrupt is owned by another driver.
CERR_OUT_OF_RESOURCE Indicates a memory window is not available to access configuration registers.

Remarks

This function sets up the interrupt callback exclusively for the requesting driver. The device determines the interrupt source, determines which function on a socket interrupted, and calls the appropriate interrupt service callback function.

See Also

CardReleaseConfiguration, CardReleaseIRQ