csx_Parse_CISTPL_FUNCE(9F)




NAME

     csx_Parse_CISTPL_FUNCE - parse Function Extension tuple


SYNOPSIS

     #include <sys/pccard.h>

     int32_t csx_Parse_CISTPL_FUNCE(client_handle_t  ch,  tuple_t
     *tu, cistpl_funce_t *cf, uint32_t fid);


INTERFACE LEVEL

     Solaris DDI Specific (Solaris DDI)


PARAMETERS

     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).

     cf    Pointer to a cistpl_funce_t structure  which  contains
           the  parsed CISTPL_FUNCE tuple information upon return
           from this function.

     fid   The function ID code to which this CISTPL_FUNCE  tuple
           refers. See csx_Parse_CISTPL_FUNCID(9F).


DESCRIPTION

     This  function  parses   the   Function   Extension   tuple,
     CISTPL_FUNCE, into a form usable by PC Card drivers.

     The CISTPL_FUNCE tuple is used to describe information about
     a  specific  PCCard  function.  The  information provided is
     determined   by   the   Function    Identification    tuple,
     CISTPL_FUNCID,  that  is being extended. Each function has a
     defined set of extension tuples.


STRUCTURE MEMBERS

     The structure members of cistpl_funce_t are:

     uint32_t     function;           /* type of extended data */
     uint32_t     subfunction;
     union {
            struct serial {
                   uint32_t  ua;      /* UART in use */
                   uint32_t  uc;      /* UART capabilities */
            } serial;
            struct modem {
                   uint32_t  fc;      /* supported flow control methods */
                   uint32_t  cb;      /* size of DCE command buffer */
                   uint32_t  eb;      /* size of DCE to DCE buffer */
                   uint32_t  tb;      /* size of DTE to DCE buffer */
            } modem;
            struct data_modem {
                   uint32_t  ud;      /* highest data rate */
                   uint32_t  ms;      /* modulation standards */
                   uint32_t  em;      /* err correct proto and
                                              /* non-CCITT modulation */
                   uint32_t  dc;      /* data compression protocols */
                   uint32_t  cm;      /* command protocols */
                   uint32_t  ex;      /* escape mechanisms */
                   uint32_t  dy;      /* standardized data encryption */
                   uint32_t  ef;      /* miscellaneous end user features */
                   uint32_t  ncd;     /* number of country codes */
                   uchar_t   cd[16];  /* CCITT country code */
            } data_modem;
            struct fax {
                   uint32_t  uf;      /* highest data rate in DTE/UART */
                   uint32_t  fm;      /* CCITT modulation standards */
                   uint32_t  fy;      /* standardized data encryption */
                   uint32_t  fs;      /* feature selection */
                   uint32_t  ncf;     /* number of country codes */
                   uchar_t  cf[16];   /* CCITT country codes */
            } fax;
            struct voice {
                   uint32_t  uv;      /* highest data rate */
                   uint32_t  nsr;
                   uint32_t  sr[16];  /* voice sampling rates (*100) */
                   uint32_t  nss;
                   uint32_t  ss[16];  /* voice sample sizes (*10) */
                   uint32_t  nsc;
                   uint32_t  sc[16];  /* voice compression methods */
            } voice;
            struct lan {
                   uint32_t  tech;    /* network technology */
                   uint32_t  speed;   /* media bit or baud rate */
                   uint32_t  media;   /* network media supported */
                   uint32_t  con;     /* open/closed connector standard */
                   uint32_t  id_sz;   /* length of lan station id */
                   uchar_t  id[16];   /* station ID */
             } lan;
     } data;

     The fields are defined as follows:

     function
           This field identifies the type of extended information
           provided  about  a function by the CISTPL_FUNCE tuple.
           This field is defined as follows:

           TPLFE_SUB_SERIAL
                 Serial port interface

           TPLFE_SUB_MODEM_COMMON
                 Common modem interface

           TPLFE_SUB_MODEM_DATA
                 Data modem services

           TPLFE_SUB_MODEM_FAX
                 Fax modem services

           TPLFE_SUB_VOICE
                 Voice services

           TPLFE_CAP_MODEM_DATA
                 Capabilities of the data modem interface

           TPLFE_CAP_MODEM_FAX
                 Capabilities of the fax modem interface

           TPLFE_CAP_MODEM_VOICE
                 Capabilities of the voice modem interface

           TPLFE_CAP_SERIAL_DATA
                 Serial port interface for data modem services

           TPLFE_CAP_SERIAL_FAX
                 Serial port interface for fax modem services

           TPLFE_CAP_SERIAL_VOICE
                 Serial port interface for voice modem services

     subfunction
           This is for identifying  a  sub-category  of  services
           provided  by a function in the CISTPL_FUNCE tuple. The
           numeric value of the code is in the range of 1 to 15.

     ua    This is the serial port  UART  identification  and  is
           defined as follows:

           TPLFE_UA_8250
                 Intel 8250

           TPLFE_UA_16450
                 NS 16450

           TPLFE_UA_16550
                 NS 16550

     uc    This identifies the serial port UART capabilities  and
           is defined as follows:

           TPLFE_UC_PARITY_SPACE
                 Space parity supported

           TPLFE_UC_PARITY_MARK
                 Mark parity supported

           TPLFE_UC_PARITY_ODD
                 Odd parity supported

           TPLFE_UC_PARITY_EVEN
                 Even parity supported

           TPLFE_UC_CS5
                 5 bit characters supported

           TPLFE_UC_CS6
                 6 bit characters supported

           TPLFE_UC_CS7
                 7 bit characters supported

           TPLFE_UC_CS8
                 8 bit characters supported

           TPLFE_UC_STOP_1
                 1 stop bit supported

           TPLFE_UC_STOP_15
                 1.5 stop bits supported

           TPLFE_UC_STOP_2
                 2 stop bits supported

     fc    This identifies the modem flow control methods and  is
           defined as follows:

           TPLFE_FC_TX_XONOFF
                 Transmit XON/XOFF

           TPLFE_FC_RX_XONOFF
                 Receiver XON/XOFF

           TPLFE_FC_TX_HW
                 Transmit hardware flow control (CTS)

           TPLFE_FC_RX_HW
                 Receiver hardware flow control (RTS)

           TPLFE_FC_TRANS
                 Transparent flow control

           ms    This identifies the modem  modulation  standards
                 and is defined as follows:

           TPLFE_MS_BELL103
                 300bps

           TPLFE_MS_V21
                 300bps (V.21)

           TPLFE_MS_V23
                 600/1200bps (V.23)

           TPLFE_MS_V22AB
                 1200bps (V.22A V.22B)

           TPLFE_MS_BELL212
                 2400bps (US Bell 212

           TPLFE_MS_V22BIS
                 2400bps (V.22bis)

           TPLFE_MS_V26
                 2400bps leased line (V.26)

           TPLFE_MS_V26BIS
                 2400bps (V.26bis)

           TPLFE_MS_V27BIS
                 4800/2400bps leased line (V.27bis)

           TPLFE_MS_V29
                 9600/7200/4800 leased line (V.29)

           TPLFE_MS_V32
                 Up to 9600bps (V.32)

           TPLFE_MS_V32BIS
                 Up to 14400bps (V.32bis)

           TPLFE_MS_VFAST
                 Up to 28800 V.FAST

     em    This identifies modem error correction/detection  pro-
           tocols and is defined as follows:

           TPLFE_EM_MNP
                 MNP levels 2-4

           TPLFE_EM_V42
                 CCITT LAPM (V.42)

     dc    This identifies modem data compression  protocols  and
           is defined as follows:
           TPLFE_DC_V42BI
                 CCITT compression V.42

           TPLFE_DC_MNP5
                 MNP compression (uses MNP 2, 3 or 4)

     cm    This identifies modem command protocols and is defined
           as follows:

           TPLFE_CM_AT1
                 ANSI/EIA/TIA 602 "Action" commands

           TPLFE_CM_AT2
                 ANSI/EIA/TIA 602 "ACE/DCE IF Params"

           TPLFE_CM_AT3
                 ANSI/EIA/TIA 602 "Ace Parameters"

           TPLFE_CM_MNP_AT
                 MNP specification AT commands

           TPLFE_CM_V25BIS
                 V.25bis calling commands

           TPLFE_CM_V25A
                 V.25bis test procedures

           TPLFE_CM_DMCL
                 DMCL command mode

     ex    This identifies the  modem  escape  mechanism  and  is
           defined as follows:

           TPLFE_EX_BREAK
                 BREAK support standardized

           TPLFE_EX_PLUS
                 +++ returns to command mode

           TPLFE_EX_UD
                 User defined escape character

     dy    This identifies modem standardized data encryption and
           is  a reserved field for future use and must be set to
           0.

     ef    This identifies modem miscellaneous  features  and  is
           defined as follows:

           TPLFE_EF_CALLERID
                 Caller ID is supported

     fm    This  identifies  fax  modulation  standards  and   is
           defined as follows:

           TPLFE_FM_V21C2
                 300bps (V.21-C2)

           TPLFE_FM_V27TER
                 4800/2400bps (V.27ter)

           TPLFE_FM_V29
                 9600/7200/4800 leased line (V.29)

           TPLFE_FM_V17
                 14.4K/12K/9600/7200bps (V.17)

           TPLFE_FM_V33
                 4.4K/12K/9600/7200 leased line (V.33)

     fs    This identifies  the  fax  feature  selection  and  is
           defined as follows:

           TPLFE_FS_T3
                 Group 2 (T.3) service class

           TPLFE_FS_T4
                 Group 3 (T.4) service class

           TPLFE_FS_T6
                 Group 4 (T.6) service class

           TPLFE_FS_ECM
                 Error Correction Mode

           TPLFE_FS_VOICEREQ
                 Voice requests allowed

           TPLFE_FS_POLLING
                 Polling support

           TPLFE_FS_FTP
                 File transfer support

           TPLFE_FS_PASSWORD
                 Password support

     tech  This identifies the LAN technology type and is defined
           as follows:

           TPLFE_LAN_TECH_ARCNET
                 Arcnet

           TPLFE_LAN_TECH_ETHERNET
                 Ethernet

           TPLFE_LAN_TECH_TOKENRING
                 Token Ring

           TPLFE_LAN_TECH_LOCALTALK
                 Local Talk

           TPLFE_LAN_TECH_FDDI
                 FDDI/CDDI

           TPLFE_LAN_TECH_ATM
                 ATM

           TPLFE_LAN_TECH_WIRELESS
                 Wireless

     media This identifies the LAN media type and is  defined  as
           follows:

           TPLFE_LAN_MEDIA_INHERENT
                 Generic interface

           TPLFE_LAN_MEDIA_UTP
                 Unshielded twisted pair

           TPLFE_LAN_MEDIA_STP
                 Shielded twisted pair

           TPLFE_LAN_MEDIA_THIN_COAX
                 Thin coax

           TPLFE_LAN_MEDIA_THICK_COAX
                 Thick coax

           TPLFE_LAN_MEDIA_FIBER
                 Fiber

           TPLFE_LAN_MEDIA_SSR_902
                 Spread spectrum radio 902-928 MHz

           TPLFE_LAN_MEDIA_SSR_2_4
                 Spread spectrum radio 2.4 GHz

           TPLFE_LAN_MEDIA_SSR_5_4
                 Spread spectrum radio 5.4 GHz

           TPLFE_LAN_MEDIA_DIFFUSE_IR
                 Diffuse infra red

           TPLFE_LAN_MEDIA_PTP_IR
                 Point to point infra red


RETURN VALUES

     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.


CONTEXT

     This function may be called from user or kernel context.


SEE ALSO

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

     PC Card 95 Standard, PCMCIA/JEIDA


Man(1) output converted with man2html