1csx_Parse_CISTPL_DEVICE(9FK)ernel Functions for Drivercssx_Parse_CISTPL_DEVICE(9F)
2
3
4
6 csx_Parse_CISTPL_DEVICE, csx_Parse_CISTPL_DEVICE_A,
7 csx_Parse_CISTPL_DEVICE_OC, csx_Parse_CISTPL_DEVICE_OA - parse Device
8 Information tuples
9
11 #include <sys/pccard.h>
12
13
14
15 int32_t csx_Parse_CISTPL_DEVICE(client_handle_t ch, tuple_t *tu,
16 cistpl_device_t *cd);
17
18
19 int32_t csx_Parse_CISTPL_DEVICE_A(client_handle_t ch, tuple_t *tu,
20 cistpl_device_t *cd);
21
22
23 int32_t csx_Parse_CISTPL_DEVICE_OC(client_handle_t ch, tuple_t *tu,
24 cistpl_device_t *cd);
25
26
27 int32_t csx_Parse_CISTPL_DEVICE_OA(client_handle_t ch, tuple_t *tu,
28 cistpl_device_t *cd);
29
30
32 Solaris DDI Specific (Solaris DDI)
33
35 ch Client handle returned from csx_RegisterClient(9F).
36
37
38 tu Pointer to a tuple_t structure (see tuple(9S)) returned by a call
39 to csx_GetFirstTuple(9F) or csx_GetNextTuple(9F).
40
41
42 cd Pointer to a cistpl_device_t structure which contains the parsed
43 CISTPL_DEVICE, CISTPL_DEVICE_A, CISTPL_DEVICE_OC, or
44 CISTPL_DEVICE_OA tuple information upon return from these func‐
45 tions, respectively.
46
47
49 csx_Parse_CISTPL_DEVICE() and csx_Parse_CISTPL_DEVICE_A() parse the 5
50 volt Device Information tuples, CISTPL_DEVICE and CISTPL_DEVICE_A,
51 respectively, into a form usable by PC Card drivers.
52
53
54 csx_Parse_CISTPL_DEVICE_OC() and csx_Parse_CISTPL_DEVICE_OA() parse the
55 Other Condition Device Information tuples, CISTPL_DEVICE_OC and
56 CISTPL_DEVICE_OA, respectively, into a form usable by PC Card drivers.
57
58
59 The CISTPL_DEVICE and CISTPL_DEVICE_A tuples are used to describe the
60 card's device information, such as device speed, device size, device
61 type, and address space layout information for Common Memory or
62 Attribute Memory space, respectively.
63
64
65 The CISTPL_DEVICE_OC and CISTPL_DEVICE_OA tuples are used to describe
66 the information about the card's device under a set of operating condi‐
67 tions for Common Memory or Attribute Memory space, respectively.
68
70 The structure members of cistpl_device_t are:
71
72 uint32_t num_devices; /* number of devices found */
73 cistpl_device_node_t devnode[CISTPL_DEVICE_MAX_DEVICES];
74
75
76
77 The structure members of cistpl_device_node_t are:
78
79 uint32_t flags; /* flags specific to this device */
80 uint32_t speed; /* device speed in device
81 /* speed code format */
82 uint32_t nS_speed; /* device speed in nS */
83 uint32_t type; /* device type */
84 uint32_t size; /* device size */
85 uint32_t size_in_bytes; /* device size in bytes */
86
87
88
89 The fields are defined as follows:
90
91 flags This field indicates whether or not the device is writable,
92 and describes a Vcc voltage at which the PC Card can be oper‐
93 ated.
94
95 CISTPL_DEVICE_WPS Write Protect Switch bit is set
96
97 Bits which are applicable only for CISTPL_DEVICE_OC and
98 CISTPL_DEVICE_OA are:
99
100 CISTPL_DEVICE_OC_MWAIT Use MWAIT
101
102
103 CISTPL_DEVICE_OC_Vcc_MASK Mask for Vcc value
104
105
106 CISTPL_DEVICE_OC_Vcc5 5.0 volt operation
107
108
109 CISTPL_DEVICE_OC_Vcc33 3.3 volt operation
110
111
112 CISTPL_DEVICE_OC_VccXX X.X volt operation
113
114
115 CISTPL_DEVICE_OC_VccYY Y.Y volt operation
116
117
118
119 speed The device speed value described in the device speed
120 code unit. If this field is set to
121 CISTPL_DEVICE_SPEED_SIZE_IGNORE, then the speed infor‐
122 mation will be ignored.
123
124
125 nS_speed The device speed value described in nanosecond units.
126
127
128 size The device size value described in the device size
129 code unit. If this field is set to
130 CISTPL_DEVICE_SPEED_SIZE_IGNORE, then the size infor‐
131 mation will be ignored.
132
133
134 size_in_bytes The device size value described in byte units.
135
136
137 type This is the device type code field which is defined as
138 follows:
139
140 CISTPL_DEVICE_DTYPE_NULL
141
142 No device
143
144
145 CISTPL_DEVICE_DTYPE_ROM
146
147 Masked ROM
148
149
150 CISTPL_DEVICE_DTYPE_OTPROM
151
152 One Time Programmable ROM
153
154
155 CISTPL_DEVICE_DTYPE_EPROM
156
157 UV EPROM
158
159
160 CISTPL_DEVICE_DTYPE_EEPROM
161
162 EEPROM
163
164
165 CISTPL_DEVICE_DTYPE_FLASH
166
167 FLASH
168
169
170 CISTPL_DEVICE_DTYPE_SRAM
171
172 Static RAM
173
174
175 CISTPL_DEVICE_DTYPE_DRAM
176
177 Dynamic RAM
178
179
180 CISTPL_DEVICE_DTYPE_FUNCSPEC
181
182 Function-specific memory address range
183
184
185 CISTPL_DEVICE_DTYPE_EXTEND
186
187 Extended type follows
188
189
190
192 CS_SUCCESS Successful operation.
193
194
195 CS_BAD_HANDLE Client handle is invalid.
196
197
198 CS_UNKNOWN_TUPLE Parser does not know how to parse tuple.
199
200
201 CS_NO_CARD No PC Card in socket.
202
203
204 CS_NO_CIS No Card Information Structure (CIS) on PC
205 Card.
206
207
208 CS_UNSUPPORTED_FUNCTION No PCMCIA hardware installed.
209
210
212 These functions may be called from user or kernel context.
213
215 csx_GetFirstTuple(9F), csx_GetTupleData(9F),
216 csx_Parse_CISTPL_JEDEC_C(9F), csx_RegisterClient(9F), csx_Validate‐
217 CIS(9F), tuple(9S)
218
219
220 PC Card 95 Standard, PCMCIA/JEIDA
221
222
223
224SunOS 5.11 20 Dec 1996 csx_Parse_CISTPL_DEVICE(9F)