CSX_PARSE_CISTPL_SPCL(9F) Kernel Functions for Drivers CSX_PARSE_CISTPL_SPCL(9F)

csx_Parse_CISTPL_SPCL - parse the Special Purpose tuple

#include <sys/pccard.h>
int32_t csx_Parse_CISTPL_SPCL(client_handle_t ch, tuple_t *tu,

cistpl_spcl_t *csp);

illumos DDI Specific (illumos DDI)

ch

Client handle returned from csx_RegisterClient(9F).

tu

Pointer to a tuple_t structure (see tuple(9S)) returned by a call to csx_GetFirstTuple(9F) or csx_GetNextTuple(9F).

csp

Pointer to a cistpl_spcl_t structure which contains the parsed CISTPL_SPCL tuple information upon return from this function.

This function parses the Special Purpose tuple, CISTPL_SPCL, into a form usable by PC Card drivers.

The CISTPL_SPCL tuple is identified by an identification field that is assigned by PCMCIA or JEIDA. A sequence field allows a series of CISTPL_SPCL tuples to be used when the data exceeds the size that can be stored in a single tuple; the maximum data area of a series of CISTPL_SPCL tuples is unlimited. Another field gives the number of bytes in the data field in this tuple.

The structure members of cistpl_date_t are:


uint32_t    id;       /* tuple contents identification */
uint32_t    seq;      /* data sequence number */
uint32_t    bytes;    /* number of bytes following */
uchar_t     data[CIS_MAX_TUPLE_DATA_LEN];

The fields are defined as follows:

id

This field contains a PCMCIA or JEIDA assigned value that identifies this series of one or more CISTPL_SPCL tuples. These field values are assigned by contacting either PCMCIA or JEIDA.

seq

This field contains a data sequence number. CISTPL_SPCL_SEQ_END is the last tuple in sequence.

bytes

This field contains the number of data bytes in the data[CIS_MAX_TUPLE_DATA_LEN].

data

The data component of this tuple.

CS_SUCCESS

Successful operation.

CS_BAD_HANDLE

Client handle is invalid.

CS_UNKNOWN_TUPLE

Parser does not know how to parse tuple.

CS_NO_CARD

No PC Card in socket.

CS_NO_CIS

No Card Information Structure (CIS) on PC Card.

CS_UNSUPPORTED_FUNCTION

No PCMCIA hardware installed.

This function may be called from user or kernel context.

csx_GetFirstTuple(9F), csx_GetTupleData(9F), csx_RegisterClient(9F), csx_ValidateCIS(9F), tuple(9S)

PC Card 95 Standard, PCMCIA/JEIDA

December 20, 1996 OmniOS