1csx_Parse_CISTPL_FUNCE(9F)Kernel Functions for Driverscsx_Parse_CISTPL_FUNCE(9F)
2
3
4
6 csx_Parse_CISTPL_FUNCE - parse Function Extension tuple
7
9 #include <sys/pccard.h>
10
11
12
13 int32_t csx_Parse_CISTPL_FUNCE(client_handle_t ch, tuple_t *tu,
14 cistpl_funce_t *cf,
15 uint32_t fid);
16
17
19 Solaris DDI Specific (Solaris DDI)
20
22 ch Client handle returned from csx_RegisterClient(9F).
23
24
25 tu Pointer to a tuple_t structure (see tuple(9S)) returned by a
26 call to csx_GetFirstTuple(9F) or csx_GetNextTuple(9F).
27
28
29 cf Pointer to a cistpl_funce_t structure which contains the parsed
30 CISTPL_FUNCE tuple information upon return from this function.
31
32
33 fid The function ID code to which this CISTPL_FUNCE tuple refers.
34 See csx_Parse_CISTPL_FUNCID(9F).
35
36
38 This function parses the Function Extension tuple, CISTPL_FUNCE, into a
39 form usable by PC Card drivers.
40
41
42 The CISTPL_FUNCE tuple is used to describe information about a specific
43 PCCard function. The information provided is determined by the Function
44 Identification tuple, CISTPL_FUNCID, that is being extended. Each func‐
45 tion has a defined set of extension tuples.
46
48 The structure members of cistpl_funce_t are:
49
50 uint32_t function; /* type of extended data */
51 uint32_t subfunction;
52 union {
53 struct serial {
54 uint32_t ua; /* UART in use */
55 uint32_t uc; /* UART capabilities */
56 } serial;
57 struct modem {
58 uint32_t fc; /* supported flow control methods */
59 uint32_t cb; /* size of DCE command buffer */
60 uint32_t eb; /* size of DCE to DCE buffer */
61 uint32_t tb; /* size of DTE to DCE buffer */
62 } modem;
63 struct data_modem {
64 uint32_t ud; /* highest data rate */
65 uint32_t ms; /* modulation standards */
66 uint32_t em; /* err correct proto and
67 /* non-CCITT modulation */
68 uint32_t dc; /* data compression protocols */
69 uint32_t cm; /* command protocols */
70 uint32_t ex; /* escape mechanisms */
71 uint32_t dy; /* standardized data encryption */
72 uint32_t ef; /* miscellaneous end user features */
73 uint32_t ncd; /* number of country codes */
74 uchar_t cd[16]; /* CCITT country code */
75 } data_modem;
76 struct fax {
77 uint32_t uf; /* highest data rate in DTE/UART */
78 uint32_t fm; /* CCITT modulation standards */
79 uint32_t fy; /* standardized data encryption */
80 uint32_t fs; /* feature selection */
81 uint32_t ncf; /* number of country codes */
82 uchar_t cf[16]; /* CCITT country codes */
83 } fax;
84 struct voice {
85 uint32_t uv; /* highest data rate */
86 uint32_t nsr;
87 uint32_t sr[16]; /* voice sampling rates (*100) */
88 uint32_t nss;
89 uint32_t ss[16]; /* voice sample sizes (*10) */
90 uint32_t nsc;
91 uint32_t sc[16]; /* voice compression methods */
92 } voice;
93 struct lan {
94 uint32_t tech; /* network technology */
95 uint32_t speed; /* media bit or baud rate */
96 uint32_t media; /* network media supported */
97 uint32_t con; /* open/closed connector standard */
98 uint32_t id_sz; /* length of lan station id */
99 uchar_t id[16]; /* station ID */
100 } lan;
101 } data;
102
103
104
105 The fields are defined as follows:
106
107 function This field identifies the type of extended information
108 provided about a function by the CISTPL_FUNCE tuple.
109 This field is defined as follows:
110
111 TPLFE_SUB_SERIAL Serial port interface
112
113
114 TPLFE_SUB_MODEM_COMMON Common modem interface
115
116
117 TPLFE_SUB_MODEM_DATA Data modem services
118
119
120 TPLFE_SUB_MODEM_FAX Fax modem services
121
122
123 TPLFE_SUB_VOICE Voice services
124
125
126 TPLFE_CAP_MODEM_DATA Capabilities of the data modem
127 interface
128
129
130 TPLFE_CAP_MODEM_FAX Capabilities of the fax modem
131 interface
132
133
134 TPLFE_CAP_MODEM_VOICE Capabilities of the voice
135 modem interface
136
137
138 TPLFE_CAP_SERIAL_DATA Serial port interface for data
139 modem services
140
141
142 TPLFE_CAP_SERIAL_FAX Serial port interface for fax
143 modem services
144
145
146 TPLFE_CAP_SERIAL_VOICE Serial port interface for
147 voice modem services
148
149
150
151 subfunction This is for identifying a sub-category of services pro‐
152 vided by a function in the CISTPL_FUNCE tuple. The
153 numeric value of the code is in the range of 1 to 15.
154
155
156 ua This is the serial port UART identification and is
157 defined as follows:
158
159 TPLFE_UA_8250 Intel 8250
160
161
162 TPLFE_UA_16450 NS 16450
163
164
165 TPLFE_UA_16550 NS 16550
166
167
168
169 uc This identifies the serial port UART capabilities and is
170 defined as follows:
171
172 TPLFE_UC_PARITY_SPACE Space parity supported
173
174
175 TPLFE_UC_PARITY_MARK Mark parity supported
176
177
178 TPLFE_UC_PARITY_ODD Odd parity supported
179
180
181 TPLFE_UC_PARITY_EVEN Even parity supported
182
183
184 TPLFE_UC_CS5 5 bit characters supported
185
186
187 TPLFE_UC_CS6 6 bit characters supported
188
189
190 TPLFE_UC_CS7 7 bit characters supported
191
192
193 TPLFE_UC_CS8 8 bit characters supported
194
195
196 TPLFE_UC_STOP_1 1 stop bit supported
197
198
199 TPLFE_UC_STOP_15 1.5 stop bits supported
200
201
202 TPLFE_UC_STOP_2 2 stop bits supported
203
204
205
206 fc This identifies the modem flow control methods and is
207 defined as follows:
208
209 TPLFE_FC_TX_XONOFF Transmit XON/XOFF
210
211
212 TPLFE_FC_RX_XONOFF Receiver XON/XOFF
213
214
215 TPLFE_FC_TX_HW Transmit hardware flow control
216 (CTS)
217
218
219 TPLFE_FC_RX_HW Receiver hardware flow control
220 (RTS)
221
222
223 TPLFE_FC_TRANS Transparent flow control
224
225
226 ms This identifies the modem modulation standards and
227 is defined as follows:
228
229
230 TPLFE_MS_BELL103 300bps
231
232
233 TPLFE_MS_V21 300bps (V.21)
234
235
236 TPLFE_MS_V23 600/1200bps (V.23)
237
238
239 TPLFE_MS_V22AB 1200bps (V.22A V.22B)
240
241
242 TPLFE_MS_BELL212 2400bps (US Bell 212
243
244
245 TPLFE_MS_V22BIS 2400bps (V.22bis)
246
247
248 TPLFE_MS_V26 2400bps leased line (V.26)
249
250
251 TPLFE_MS_V26BIS 2400bps (V.26bis)
252
253
254 TPLFE_MS_V27BIS 4800/2400bps leased line (V.27bis)
255
256
257 TPLFE_MS_V29 9600/7200/4800 leased line (V.29)
258
259
260 TPLFE_MS_V32 Up to 9600bps (V.32)
261
262
263 TPLFE_MS_V32BIS Up to 14400bps (V.32bis)
264
265
266 TPLFE_MS_VFAST Up to 28800 V.FAST
267
268
269
270 em This identifies modem error correction/detection proto‐
271 cols and is defined as follows:
272
273 TPLFE_EM_MNP MNP levels 2-4
274
275
276 TPLFE_EM_V42 CCITT LAPM (V.42)
277
278
279
280 dc This identifies modem data compression protocols and is
281 defined as follows:
282
283 TPLFE_DC_V42BI CCITT compression V.42
284
285
286 TPLFE_DC_MNP5 MNP compression (uses MNP 2, 3 or 4)
287
288
289
290 cm This identifies modem command protocols and is defined
291 as follows:
292
293 TPLFE_CM_AT1 ANSI/EIA/TIA 602 "Action" commands
294
295
296 TPLFE_CM_AT2 ANSI/EIA/TIA 602 "ACE/DCE IF Params"
297
298
299 TPLFE_CM_AT3 ANSI/EIA/TIA 602 "Ace Parameters"
300
301
302 TPLFE_CM_MNP_AT MNP specification AT commands
303
304
305 TPLFE_CM_V25BIS V.25bis calling commands
306
307
308 TPLFE_CM_V25A V.25bis test procedures
309
310
311 TPLFE_CM_DMCL DMCL command mode
312
313
314
315 ex This identifies the modem escape mechanism and is
316 defined as follows:
317
318 TPLFE_EX_BREAK BREAK support standardized
319
320
321 TPLFE_EX_PLUS +++ returns to command mode
322
323
324 TPLFE_EX_UD User defined escape character
325
326
327
328 dy This identifies modem standardized data encryption and
329 is a reserved field for future use and must be set to 0.
330
331
332 ef This identifies modem miscellaneous features and is
333 defined as follows:
334
335 TPLFE_EF_CALLERID Caller ID is supported
336
337
338
339 fm This identifies fax modulation standards and is defined
340 as follows:
341
342 TPLFE_FM_V21C2 300bps (V.21-C2)
343
344
345 TPLFE_FM_V27TER 4800/2400bps (V.27ter)
346
347
348 TPLFE_FM_V29 9600/7200/4800 leased line (V.29)
349
350
351 TPLFE_FM_V17 14.4K/12K/9600/7200bps (V.17)
352
353
354 TPLFE_FM_V33 4.4K/12K/9600/7200 leased line (V.33)
355
356
357
358 fs This identifies the fax feature selection and is defined
359 as follows:
360
361 TPLFE_FS_T3 Group 2 (T.3) service class
362
363
364 TPLFE_FS_T4 Group 3 (T.4) service class
365
366
367 TPLFE_FS_T6 Group 4 (T.6) service class
368
369
370 TPLFE_FS_ECM Error Correction Mode
371
372
373 TPLFE_FS_VOICEREQ Voice requests allowed
374
375
376 TPLFE_FS_POLLING Polling support
377
378
379 TPLFE_FS_FTP File transfer support
380
381
382 TPLFE_FS_PASSWORD Password support
383
384
385
386 tech This identifies the LAN technology type and is defined
387 as follows:
388
389 TPLFE_LAN_TECH_ARCNET Arcnet
390
391
392 TPLFE_LAN_TECH_ETHERNET Ethernet
393
394
395 TPLFE_LAN_TECH_TOKENRING Token Ring
396
397
398 TPLFE_LAN_TECH_LOCALTALK Local Talk
399
400
401 TPLFE_LAN_TECH_FDDI FDDI/CDDI
402
403
404 TPLFE_LAN_TECH_ATM ATM
405
406
407 TPLFE_LAN_TECH_WIRELESS Wireless
408
409
410
411 media This identifies the LAN media type and is defined as
412 follows:
413
414 TPLFE_LAN_MEDIA_INHERENT Generic interface
415
416
417 TPLFE_LAN_MEDIA_UTP Unshielded twisted pair
418
419
420 TPLFE_LAN_MEDIA_STP Shielded twisted pair
421
422
423 TPLFE_LAN_MEDIA_THIN_COAX Thin coax
424
425
426 TPLFE_LAN_MEDIA_THICK_COAX Thick coax
427
428
429 TPLFE_LAN_MEDIA_FIBER Fiber
430
431
432 TPLFE_LAN_MEDIA_SSR_902 Spread spectrum radio
433 902-928 MHz
434
435
436 TPLFE_LAN_MEDIA_SSR_2_4 Spread spectrum radio 2.4
437 GHz
438
439
440 TPLFE_LAN_MEDIA_SSR_5_4 Spread spectrum radio 5.4
441 GHz
442
443
444 TPLFE_LAN_MEDIA_DIFFUSE_IR Diffuse infra red
445
446
447 TPLFE_LAN_MEDIA_PTP_IR Point to point infra red
448
449
450
452 CS_SUCCESS Successful operation.
453
454
455 CS_BAD_HANDLE Client handle is invalid.
456
457
458 CS_UNKNOWN_TUPLE Parser does not know how to parse tuple.
459
460
461 CS_NO_CARD No PC Card in socket.
462
463
464 CS_NO_CIS No Card Information Structure (CIS) on PC
465 Card.
466
467
468 CS_UNSUPPORTED_FUNCTION No PCMCIA hardware installed.
469
470
472 This function may be called from user or kernel context.
473
475 csx_GetFirstTuple(9F), csx_GetTupleData(9F), csx_Parse_CISTPL_FUN‐
476 CID(9F), csx_RegisterClient(9F), csx_ValidateCIS(9F), tuple(9S)
477
478
479 PC Card 95 Standard, PCMCIA/JEIDA
480
481
482
483SunOS 5.11 20 Dec 1996 csx_Parse_CISTPL_FUNCE(9F)