|
Kernel Functions for Drivers | csx_Parse_CISTPL_FUNCE(9F) |
| 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); |
|
Solaris DDI Specific (Solaris DDI)
|
|
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.
|
|
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
- Tranparent 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
- 2400bsp (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 protocols 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
|
|
-
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.
|
| |