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

NAME


csx_GetTupleData - return the data portion of a tuple

SYNOPSIS


#include <sys/pccard.h>


int32_t csx_GetTupleData(client_handle_t ch, tuple_t *tu);


INTERFACE LEVEL


illumos DDI Specific (illumos DDI)

PARAMETERS


ch
Client handle returned from csx_RegisterClient(9F).


tu
Pointer to a tuple_t structure.


DESCRIPTION


This function returns the data portion of a tuple, as returned by the
csx_GetFirstTuple(9F) and csx_GetNextTuple(9F) functions.

STRUCTURE MEMBERS


The structure members of tuple_t are:


The fields are defined as follows:

uint32_t Socket; /* socket number */
uint32_t Attributes; /* tuple attributes*/
cisdata_t DesiredTuple; /* tuple to search for*/
cisdata_t TupleOffset; /* tuple data offset*/
cisdata_t TupleDataMax; /* max tuple data size*/
cisdata_t TupleDataLen; /* actual tuple data length*/
cisdata_t TupleData[CIS_MAX_TUPLE_DATA_LEN];/* tuple body data buffer*/
cisdata_t TupleCode; /* tuple type code*/
cisdata_t TupleLink; /* tuple link */


Socket
Not used in illumos, but for portability with other
Card Services implementations, it should be set to
the logical socket number.


Attributes
Initialized by csx_GetFirstTuple(9F) or
csx_GetNextTuple(9F); the client must not modify the
value in this field.


DesiredTuple
Initialized by csx_GetFirstTuple(9F) or
csx_GetNextTuple(9F); the client must not modify the
value in this field.


TupleOffset
This field allows partial tuple information to be
retrieved, starting anywhere within the tuple.


TupleDataMax
This field is the size of the tuple data buffer that
Card Services uses to return raw tuple data from
csx_GetTupleData. It can be larger than the number of
bytes in the tuple data body. Card Services ignores
any value placed here by the client.


TupleDataLen
This field is the actual size of the tuple data body.
It represents the number of tuple data body bytes
returned.


TupleData
This field is an array of bytes containing the raw
tuple data body contents.


TupleCode
Initialized by csx_GetFirstTuple(9F) or
csx_GetNextTuple(9F); the client must not modify the
value in this field.


TupleLink
Initialized by csx_GetFirstTuple(9F) or
csx_GetNextTuple(9F); the client must not modify the
value in this field.


RETURN VALUES


CS_SUCCESS
Successful operation.


CS_BAD_HANDLE
Client handle is invalid.


CS_BAD_ARGS
Data from prior csx_GetFirstTuple(9F) or
csx_GetNextTuple(9F) is corrupt.


CS_NO_CARD
No PC Card in socket.


CS_NO_CIS
No Card Information Structure (CIS) on PC
Card.


CS_NO_MORE_ITEMS
Card Services was not able to read the
tuple from the PC Card.


CS_UNSUPPORTED_FUNCTION
No PCMCIA hardware installed.


CONTEXT


This function may be called from user or kernel context.

SEE ALSO


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


PC Card 95 Standard, PCMCIA/JEIDA

December 20, 1996 CSX_GETTUPLEDATA(9F)

tribblix@gmail.com :: GitHub :: Privacy