1csx_Parse_CISTPL_CONFIG(9FK)ernel Functions for Drivercssx_Parse_CISTPL_CONFIG(9F)
2
3
4

NAME

6       csx_Parse_CISTPL_CONFIG - parse Configuration tuple
7

SYNOPSIS

9       #include <sys/pccard.h>
10
11
12
13       int32_t csx_Parse_CISTPL_CONFIG(client_handle_t ch, tuple_t *tu,
14            cistpl_config_t *cc);
15
16

INTERFACE LEVEL

18       Solaris DDI Specific (Solaris DDI)
19

PARAMETERS

21       ch    Client handle returned from csx_RegisterClient(9F).
22
23
24       tu    Pointer to a tuple_t structure (see tuple(9S)) returned by a call
25             to csx_GetFirstTuple(9F) or csx_GetNextTuple(9F).
26
27
28       cc    Pointer to a cistpl_config_t structure which contains the  parsed
29             CISTPL_CONFIG tuple information upon return from this function.
30
31

DESCRIPTION

33       This  function  parses  the  Configuration tuple, CISTPL_CONFIG, into a
34       form usable by PC Card drivers. The  CISTPL_CONFIG  tuple  is  used  to
35       describe  the general characteristics of 16-bit PC Cards containing I/O
36       devices or using custom interfaces. It  may  also  describe  PC  Cards,
37       including Memory Only cards, which exceed nominal power supply specifi‐
38       cations, or which need descriptions  of  their  power  requirements  or
39       other information.
40

STRUCTURE MEMBERS

42       The structure members of cistpl_config_t are:
43
44         uint32_t     present;     /* register present flags */
45         uint32_t     nr;          /* number of config registers found */
46         uint32_t     hr;          /* highest config register index found */
47         uint32_t     regs[CISTPL_CONFIG_MAX_CONFIG_REGS];    /* reg offsets */
48         uint32_t     base;        /* base offset of config registers */
49         uint32_t     last;        /* last config index */
50
51
52
53       The fields are defined as follows:
54
55       present    This  field  indicates  which  configuration  registers  are
56                  present on the PC Card.
57
58                  CONFIG_OPTION_REG_PRESENT     Configuration Option  Register
59                                                present
60
61
62                  CONFIG_STATUS_REG_PRESENT     Configuration  Status Register
63                                                present
64
65
66                  CONFIG_PINREPL_REG_PRESENT    Pin    Replacement    Register
67                                                present
68
69
70                  CONFIG_COPY_REG_PRESENT       Copy Register present
71
72
73                  CONFIG_EXSTAT_REG_PRESENT     Extended    Status    Register
74                                                present
75
76
77                  CONFIG_IOBASE0_REG_PRESENT    IO Base 0 Register present
78
79
80                  CONFIG_IOBASE1_REG_PRESENT    IO Base 1 Register present
81
82
83                  CONFIG_IOBASE2_REG_PRESENT    IO Base2 Register present
84
85
86                  CONFIG_IOBASE3_REG_PRESENT    IO Base3 Register present
87
88
89                  CONFIG_IOLIMIT_REG_PRESENT    IO Limit Register present
90
91
92
93       nr         This field specifies the number of  configuration  registers
94                  that are present on the PC Card.
95
96
97       hr         This field specifies the highest configuration register num‐
98                  ber that is present on the PC Card.
99
100
101       regs       This array contains the offset from the start  of  Attribute
102                  Memory space for each configuration register that is present
103                  on the PC Card. If a configuration register is  not  present
104                  on  the PC Card, the value in the corresponding entry in the
105                  regs array is undefined.
106
107
108       base       This field contains the offset from the start  of  Attribute
109                  Memory space to the base of the PC Card configuration regis‐
110                  ter space.
111
112
113       last       This field contains the value of the last  valid  configura‐
114                  tion index for this PC Card.
115
116

RETURN VALUES

118       CS_SUCCESS                 Successful operation.
119
120
121       CS_BAD_HANDLE              Client handle is invalid.
122
123
124       CS_UNKNOWN_TUPLE           Parser does not know how to parse tuple.
125
126
127       CS_NO_CARD                 No PC Card in socket.
128
129
130       CS_NO_CIS                  No  Card  Information  Structure (CIS) on PC
131                                  Card.
132
133
134       CS_UNSUPPORTED_FUNCTION    No PCMCIA hardware installed.
135
136

CONTEXT

138       This function may be called from user or kernel context.
139

SEE ALSO

141       csx_GetFirstTuple(9F),                            csx_GetTupleData(9F),
142       csx_Parse_CISTPL_CFTABLE_ENTRY(9F),  csx_RegisterClient(9F),  csx_Vali‐
143       dateCIS(9F), tuple(9S)
144
145
146       PC Card 95 Standard, PCMCIA/JEIDA
147

NOTES

149       PC Card drivers should not attempt to  use  configurations  beyond  the
150       "last" member in the cistpl_config_t structure.
151
152
153
154SunOS 5.11                        20 Dec 1996      csx_Parse_CISTPL_CONFIG(9F)
Impressum