[DOCS] docs update
[mirror/winof/.git] / docs / iba / ib_types_h.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">\r
2 <html>\r
3 <head>\r
4 <link rel="stylesheet" href="../robodoc.css" type="text/css">\r
5 <title>./inc_doc/iba/ib_types_h.html</title>\r
6 <!-- Source: ./inc/iba/ib_types.h -->\r
7 <!-- Generated with ROBODoc Version 4.99.17 (Aug  2 2005) -->\r
8 </head>\r
9 <body bgcolor="#FFFFFF">\r
10 <a name="robo_top_of_doc">Generated from ./inc/iba/ib_types.h</a> with <a href="http://sourceforge.net/projects/robodoc/">ROBODoc</a> v4.99.17 on Sun Aug 27 2006 10:20:30\r
11 <br />\r
12 <hr />\r
13 \r
14 <h2><a name="robo40">[Modules]<a name="IBA20Base2fConstants">\r
15 IBA Base/Constants</a></h2>\r
16 \r
17 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_modules.html#top">index</a>]</p>\r
18 <p><strong>NAME</strong></p>\r
19 <span class="NAME"><pre>       <strong>Constants</strong>\r
20 </pre>\r
21 </span><p><strong>DESCRIPTION</strong></p>\r
22 <span class="DESCRIPTION"><pre>       The following constants are used throughout the IBA code base.\r
23 \r
24        Definitions are from the InfiniBand Architecture Specification v1.1\r
25 </pre>\r
26 </span>\r
27 <hr />\r
28 \r
29 <h2><a name="robo41">[Modules]<a name="IBA20Base2fType20Definitions">\r
30 IBA Base/Type Definitions</a></h2>\r
31 \r
32 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_modules.html#top">index</a>]</p>\r
33 <p><strong>NAME</strong></p>\r
34 <span class="NAME"><pre>       Type Definitions\r
35 </pre>\r
36 </span><p><strong>DESCRIPTION</strong></p>\r
37 <span class="DESCRIPTION"><pre>       Definitions are from the InfiniBand Architecture Specification v1.1\r
38 </pre>\r
39 </span>\r
40 <hr />\r
41 \r
42 <h2><a name="robo45">[Definitions]<a name="Access20Layer2fib5faccess5ft">\r
43 Access Layer/ib_access_t</a></h2>\r
44 \r
45 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
46 <p><strong>NAME</strong></p>\r
47 <span class="NAME"><pre>       <strong>ib_access_t</strong>\r
48 </pre>\r
49 </span><p><strong>DESCRIPTION</strong></p>\r
50 <span class="DESCRIPTION"><pre>       Indicates the type of access is permitted on resources such as QPs,\r
51        memory regions and memory windows.\r
52 </pre>\r
53 </span><p><strong>SYNOPSIS</strong></p>\r
54 <span class="SYNOPSIS"><pre>typedef uint32_t                                <strong>ib_access_t</strong>;\r
55 #define IB_AC_RDMA_READ                 0x00000001\r
56 #define IB_AC_RDMA_WRITE                0x00000002\r
57 #define IB_AC_ATOMIC                    0x00000004\r
58 #define IB_AC_LOCAL_WRITE               0x00000008\r
59 #define IB_AC_MW_BIND                   0x00000010\r
60 </pre>\r
61 </span><p><strong>NOTES</strong></p>\r
62 <span class="NOTES"><pre>       Users may combine access rights using a bit-wise or operation to specify\r
63        additional access.  For example: IB_AC_RDMA_READ | IB_AC_RDMA_WRITE grants\r
64        RDMA read and write access.\r
65 </pre>\r
66 </span>\r
67 <hr />\r
68 \r
69 <h2><a name="robo49">[Definitions]<a name="Access20Layer2fib5fapi5fstatus5ft">\r
70 Access Layer/ib_api_status_t</a></h2>\r
71 \r
72 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
73 <p><strong>NAME</strong></p>\r
74 <span class="NAME"><pre>       <strong>ib_api_status_t</strong>\r
75 </pre>\r
76 </span><p><strong>DESCRIPTION</strong></p>\r
77 <span class="DESCRIPTION"><pre>       Function return codes indicating the success or failure of an API call.\r
78        Note that success is indicated by the return value IB_SUCCESS, which\r
79        is always zero.\r
80 </pre>\r
81 </span><p><strong>NOTES</strong></p>\r
82 <span class="NOTES"><pre>       IB_VERBS_PROCESSING_DONE is used by UVP library to terminate a verbs call\r
83        in the pre-ioctl step itself.\r
84 </pre>\r
85 </span><p><strong>SYNOPSIS</strong></p>\r
86 <span class="SYNOPSIS"><pre>typedef enum _<strong>ib_api_status_t</strong>\r
87 {\r
88         IB_SUCCESS,\r
89         IB_INSUFFICIENT_RESOURCES,\r
90         IB_INSUFFICIENT_MEMORY,\r
91         IB_INVALID_PARAMETER,\r
92         IB_INVALID_SETTING,\r
93         IB_NOT_FOUND,\r
94         IB_TIMEOUT,\r
95         IB_CANCELED,\r
96         IB_INTERRUPTED,\r
97         IB_INVALID_PERMISSION,\r
98         IB_UNSUPPORTED,\r
99         IB_OVERFLOW,\r
100         IB_MAX_MCAST_QPS_REACHED,\r
101         IB_INVALID_QP_STATE,\r
102         IB_INVALID_APM_STATE,\r
103         IB_INVALID_PORT_STATE,\r
104         IB_INVALID_STATE,\r
105         IB_RESOURCE_BUSY,\r
106         IB_INVALID_PKEY,\r
107         IB_INVALID_LKEY,\r
108         IB_INVALID_RKEY,\r
109         IB_INVALID_MAX_WRS,\r
110         IB_INVALID_MAX_SGE,\r
111         IB_INVALID_CQ_SIZE,\r
112         IB_INVALID_SERVICE_TYPE,\r
113         IB_INVALID_GID,\r
114         IB_INVALID_LID,\r
115         IB_INVALID_GUID,\r
116         IB_INVALID_CA_HANDLE,\r
117         IB_INVALID_AV_HANDLE,\r
118         IB_INVALID_CQ_HANDLE,\r
119         IB_INVALID_QP_HANDLE,\r
120         IB_INVALID_PD_HANDLE,\r
121         IB_INVALID_MR_HANDLE,\r
122         IB_INVALID_FMR_HANDLE,\r
123         IB_INVALID_MW_HANDLE,\r
124         IB_INVALID_MCAST_HANDLE,\r
125         IB_INVALID_CALLBACK,\r
126         IB_INVALID_AL_HANDLE,                                   /* InfiniBand Access Layer */\r
127         IB_INVALID_HANDLE,                                              /* InfiniBand Access Layer */\r
128         IB_ERROR,                                                               /* InfiniBand Access Layer */\r
129         IB_REMOTE_ERROR,                                                /* Infiniband Access Layer */\r
130         IB_VERBS_PROCESSING_DONE,                               /* See Notes above                 */\r
131         IB_INVALID_WR_TYPE,\r
132         IB_QP_IN_TIMEWAIT,\r
133         IB_INVALID_PORT,\r
134         IB_NOT_DONE,\r
135         IB_INVALID_INDEX,\r
136         IB_NO_MATCH,\r
137         IB_PENDING,\r
138         IB_UNKNOWN_ERROR                                                /* ALWAYS LAST ENUM VALUE! */\r
139 \r
140 }       <strong>ib_api_status_t</strong>;\r
141 </pre>\r
142 </span>\r
143 <hr />\r
144 \r
145 <h2><a name="robo50">[Definitions]<a name="Access20Layer2fib5fapm5fstate5ft">\r
146 Access Layer/ib_apm_state_t</a></h2>\r
147 \r
148 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
149 <p><strong>NAME</strong></p>\r
150 <span class="NAME"><pre>       <strong>ib_apm_state_t</strong>\r
151 </pre>\r
152 </span><p><strong>DESCRIPTION</strong></p>\r
153 <span class="DESCRIPTION"><pre>       The current automatic path migration state of a queue pair\r
154 </pre>\r
155 </span><p><strong>SYNOPSIS</strong></p>\r
156 <span class="SYNOPSIS"><pre>typedef enum _ib_apm_state\r
157 {\r
158         IB_APM_MIGRATED = 1,\r
159         IB_APM_REARM,\r
160         IB_APM_ARMED\r
161 \r
162 }       <strong>ib_apm_state_t</strong>;\r
163 </pre>\r
164 </span>\r
165 <hr />\r
166 \r
167 <h2><a name="robo53">[Definitions]<a name="Access20Layer2fib5fapr5fstatus5ft">\r
168 Access Layer/ib_apr_status_t</a></h2>\r
169 \r
170 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
171 <p><strong>NAME</strong></p>\r
172 <span class="NAME"><pre>       <strong>ib_apr_status_t</strong>\r
173 </pre>\r
174 </span><p><strong>DESCRIPTION</strong></p>\r
175 <span class="DESCRIPTION"><pre>       Automatic path migration status information.\r
176 </pre>\r
177 </span><p><strong>SYNOPSIS</strong></p>\r
178 <span class="SYNOPSIS"><pre>typedef uint8_t                                                         <strong>ib_apr_status_t</strong>;\r
179 </pre>\r
180 </span><p><strong>SEE ALSO</strong></p>\r
181 <span class="SEE_ALSO"><pre>       <a href="./ib_al_h.html#robo69">ib_cm_apr</a>, <a href="./ib_al_h.html#robo70">ib_cm_apr_rec_t</a>\r
182 </pre>\r
183 </span><p><strong>SOURCE</strong></p>\r
184 <span class="SOURCE"><pre>#define IB_AP_SUCCESS                                           0\r
185 #define IB_AP_INVALID_COMM_ID                           1\r
186 #define IB_AP_UNSUPPORTED                                       2\r
187 #define IB_AP_REJECT                                            3\r
188 #define IB_AP_REDIRECT                                          4\r
189 #define IB_AP_IS_CURRENT                                        5\r
190 #define IB_AP_INVALID_QPN                                       6\r
191 #define IB_AP_INVALID_LID                                       7\r
192 #define IB_AP_INVALID_GID                                       8\r
193 #define IB_AP_INVALID_FLOW_LBL                          9\r
194 #define IB_AP_INVALID_TCLASS                            10\r
195 #define IB_AP_INVALID_HOP_LIMIT                         11\r
196 #define IB_AP_INVALID_PKT_RATE                          12\r
197 #define IB_AP_INVALID_SL                                        13\r
198 </pre>\r
199 </span>\r
200 <hr />\r
201 \r
202 <h2><a name="robo56">[Definitions]<a name="Access20Layer2fib5fatomic5ft">\r
203 Access Layer/ib_atomic_t</a></h2>\r
204 \r
205 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
206 <p><strong>NAME</strong></p>\r
207 <span class="NAME"><pre>       <strong>ib_atomic_t</strong>\r
208 </pre>\r
209 </span><p><strong>DESCRIPTION</strong></p>\r
210 <span class="DESCRIPTION"><pre>       Indicates atomicity levels supported by an adapter.\r
211 </pre>\r
212 </span><p><strong>SYNOPSIS</strong></p>\r
213 <span class="SYNOPSIS"><pre>typedef enum _<strong>ib_atomic_t</strong>\r
214 {\r
215         IB_ATOMIC_NONE,\r
216         IB_ATOMIC_LOCAL,\r
217         IB_ATOMIC_GLOBAL\r
218 \r
219 }       <strong>ib_atomic_t</strong>;\r
220 </pre>\r
221 </span><p><strong>VALUES</strong></p>\r
222 <span class="VALUES"><pre>       IB_ATOMIC_NONE\r
223                Atomic operations not supported.\r
224 \r
225        IB_ATOMIC_LOCAL\r
226                Atomic operations guaranteed between QPs of a single CA.\r
227 \r
228        IB_ATOMIC_GLOBAL\r
229                Atomic operations are guaranteed between CA and any other entity\r
230                in the system.\r
231 </pre>\r
232 </span>\r
233 <hr />\r
234 \r
235 <h2><a name="robo57">[Structures]<a name="Access20Layer2fib5fav5fattr5ft">\r
236 Access Layer/ib_av_attr_t</a></h2>\r
237 \r
238 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
239 <p><strong>NAME</strong></p>\r
240 <span class="NAME"><pre>       <strong>ib_av_attr_t</strong>\r
241 </pre>\r
242 </span><p><strong>DESCRIPTION</strong></p>\r
243 <span class="DESCRIPTION"><pre>       IBA address vector.\r
244 </pre>\r
245 </span><p><strong>SYNOPSIS</strong></p>\r
246 <span class="SYNOPSIS"><pre>typedef struct _ib_av_attr\r
247 {\r
248         uint8_t                                 port_num;\r
249 \r
250         uint8_t                                 sl;\r
251         <a href="#robo899">ib_net16_t</a>                              dlid;\r
252 \r
253         boolean_t                               grh_valid;\r
254         <a href="#robo865">ib_grh_t</a>                                grh;\r
255         uint8_t                                 static_rate;\r
256         uint8_t                                 path_bits;\r
257 \r
258         struct _av_conn\r
259         {\r
260                 uint8_t                         path_mtu;\r
261                 uint8_t                         local_ack_timeout;\r
262                 uint8_t                         seq_err_retry_cnt;\r
263                 uint8_t                         rnr_retry_cnt;\r
264 \r
265         }       conn;\r
266 \r
267 }       <strong>ib_av_attr_t</strong>;\r
268 </pre>\r
269 </span><p><strong>SEE ALSO</strong></p>\r
270 <span class="SEE_ALSO"><pre>       <a href="#robo861">ib_gid_t</a>\r
271 </pre>\r
272 </span>\r
273 <hr />\r
274 \r
275 <h2><a name="robo59">[Structures]<a name="Access20Layer2fib5fbind5fwr5ft">\r
276 Access Layer/ib_bind_wr_t</a></h2>\r
277 \r
278 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
279 <p><strong>NAME</strong></p>\r
280 <span class="NAME"><pre>       <strong>ib_bind_wr_t</strong>\r
281 </pre>\r
282 </span><p><strong>DESCRIPTION</strong></p>\r
283 <span class="DESCRIPTION"><pre>       Information used to submit a memory window bind work request to the send\r
284        queue of a queue pair.\r
285 </pre>\r
286 </span><p><strong>SYNOPSIS</strong></p>\r
287 <span class="SYNOPSIS"><pre>typedef struct _ib_bind_wr\r
288 {\r
289         uint64_t                                wr_id;\r
290         <a href="#robo248">ib_send_opt_t</a>                   send_opt;\r
291 \r
292         ib_mr_handle_t                  h_mr;\r
293         <a href="#robo45">ib_access_t</a>                             access_ctrl;\r
294         net32_t                                 current_rkey;\r
295 \r
296         <a href="#robo148">ib_local_ds_t</a>                   local_ds;\r
297 \r
298 }       <strong>ib_bind_wr_t</strong>;\r
299 </pre>\r
300 </span><p><strong>FIELDS</strong></p>\r
301 <span class="FIELDS"><pre>       wr_id\r
302                A 64-bit work request identifier that is returned to the consumer\r
303                as part of the work completion.\r
304 \r
305        send_opt\r
306                Optional send control parameters.\r
307 \r
308        h_mr\r
309                Handle to the memory region to which this window is being bound.\r
310 \r
311        access_ctrl\r
312                Access rights for this memory window.\r
313 \r
314        current_rkey\r
315                The current rkey assigned to this window for remote access.\r
316 \r
317        local_ds\r
318                A reference to a local data segment used by the bind operation.\r
319 </pre>\r
320 </span><p><strong>SEE ALSO</strong></p>\r
321 <span class="SEE_ALSO"><pre>       <a href="#robo248">ib_send_opt_t</a>, <a href="#robo45">ib_access_t</a>, <a href="#robo148">ib_local_ds_t</a>\r
322 </pre>\r
323 </span>\r
324 <hr />\r
325 \r
326 <h2><a name="robo60">[Structures]<a name="Access20Layer2fib5fca5fattr5ft">\r
327 Access Layer/ib_ca_attr_t</a></h2>\r
328 \r
329 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
330 <p><strong>NAME</strong></p>\r
331 <span class="NAME"><pre>       <strong>ib_ca_attr_t</strong>\r
332 </pre>\r
333 </span><p><strong>DESCRIPTION</strong></p>\r
334 <span class="DESCRIPTION"><pre>       Information about a channel adapter.\r
335 </pre>\r
336 </span><p><strong>SYNOPSIS</strong></p>\r
337 <span class="SYNOPSIS"><pre>typedef struct _ib_ca_attr\r
338 {\r
339         <a href="#robo901">ib_net64_t</a>                              ca_guid;\r
340 \r
341         uint32_t                                vend_id;\r
342         uint16_t                                dev_id;\r
343         uint16_t                                revision;\r
344         uint64_t                                fw_ver;\r
345 \r
346         /*\r
347          * Total size of the ca attributes in bytes\r
348          */\r
349         uint32_t                                size;\r
350         uint32_t                                max_qps;\r
351         uint32_t                                max_wrs;\r
352 \r
353         uint32_t                                max_sges;\r
354         uint32_t                                max_rd_sges;\r
355 \r
356         uint32_t                                max_cqs;\r
357         uint32_t                                max_cqes;\r
358 \r
359         uint32_t                                max_pds;\r
360 \r
361         uint32_t                                init_regions;\r
362         uint64_t                                init_region_size;\r
363 \r
364         uint32_t                                init_windows;\r
365         uint32_t                                max_addr_handles;\r
366 \r
367         uint32_t                                max_partitions;\r
368 \r
369         <a href="#robo56">ib_atomic_t</a>                             atomicity;\r
370 \r
371         uint8_t                                 max_qp_resp_res;\r
372         uint8_t                                 max_resp_res;\r
373 \r
374         uint8_t                                 max_qp_init_depth;\r
375 \r
376         uint32_t                                max_ipv6_qps;\r
377         uint32_t                                max_ether_qps;\r
378 \r
379         uint32_t                                max_mcast_grps;\r
380         uint32_t                                max_mcast_qps;\r
381         uint32_t                                max_qps_per_mcast_grp;\r
382         uint32_t                                max_fmr;\r
383         uint32_t                                max_map_per_fmr;\r
384 \r
385         /*\r
386          * local_ack_delay:\r
387          * Specifies the maximum time interval between the local CA receiving\r
388          * a message and the transmission of the associated ACK or NAK.\r
389          *\r
390          * timeout = 4.096 microseconds * 2^local_ack_delay\r
391          */\r
392         uint8_t                                 local_ack_delay;\r
393 \r
394         boolean_t                               bad_pkey_ctr_support;\r
395         boolean_t                               bad_qkey_ctr_support;\r
396         boolean_t                               raw_mcast_support;\r
397         boolean_t                               apm_support;\r
398         boolean_t                               av_port_check;\r
399         boolean_t                               change_primary_port;\r
400         boolean_t                               modify_wr_depth;\r
401         boolean_t                               current_qp_state_support;\r
402         boolean_t                               shutdown_port_capability;\r
403         boolean_t                               init_type_support;\r
404         boolean_t                               port_active_event_support;\r
405         boolean_t                               system_image_guid_support;\r
406         boolean_t                               hw_agents;\r
407 \r
408         <a href="#robo901">ib_net64_t</a>                              system_image_guid;\r
409 \r
410         uint32_t                                num_page_sizes;\r
411         uint8_t                                 num_ports;\r
412 \r
413         uint32_t* __ptr64               p_page_size;\r
414         <a href="#robo200">ib_port_attr_t</a>* __ptr64 p_port_attr;\r
415 \r
416 }       <strong>ib_ca_attr_t</strong>;\r
417 </pre>\r
418 </span><p><strong>FIELDS</strong></p>\r
419 <span class="FIELDS"><pre>       ca_guid\r
420                GUID for this adapter.\r
421 \r
422        vend_id\r
423                IEEE vendor ID for this adapter\r
424 \r
425        dev_id\r
426                Device ID of this adapter. (typically from PCI device ID)\r
427 \r
428        revision\r
429                Revision ID of this adapter\r
430 \r
431        fw_ver\r
432                Device Firmware version.\r
433 \r
434        size\r
435                Total size in bytes for the HCA attributes.  This size includes total\r
436                size required for all the variable members of the structure.  If a\r
437                vendor requires to pass vendor specific fields beyond this structure,\r
438                the HCA vendor can choose to report a larger size.  If a vendor is\r
439                reporting extended vendor specific features, they should also provide\r
440                appropriate access functions to aid with the required interpretation.\r
441 \r
442        max_qps\r
443                Maximum number of QP's supported by this HCA.\r
444 \r
445        max_wrs\r
446                Maximum number of work requests supported by this HCA.\r
447 \r
448        max_sges\r
449                Maximum number of scatter gather elements supported per work request.\r
450 \r
451        max_rd_sges\r
452                Maximum number of scatter gather elements supported for READ work\r
453                requests for a Reliable Datagram QP.  This value must be zero if RD\r
454                service is not supported.\r
455 \r
456        max_cqs\r
457                Maximum number of Completion Queues supported.\r
458 \r
459        max_cqes\r
460                Maximum number of CQ elements supported per CQ.\r
461 \r
462        max_pds\r
463                Maximum number of protection domains supported.\r
464 \r
465        init_regions\r
466                Initial number of memory regions supported.  These are only informative\r
467                values.  HCA vendors can extended and grow these limits on demand.\r
468 \r
469        init_region_size\r
470                Initial limit on the size of the registered memory region.\r
471 \r
472        init_windows\r
473                Initial number of window entries supported.\r
474 \r
475        max_addr_handles\r
476                Maximum number of address handles supported.\r
477 \r
478        max_partitions\r
479                Maximum number of partitions supported.\r
480 \r
481        atomicity\r
482                Indicates level of atomic operations supported by this HCA.\r
483 \r
484        max_qp_resp_res\r
485                Maximum limit on number of responder resources for incomming RDMA\r
486                operations on QPs.\r
487 \r
488        max_resp_res\r
489                Maximum number of responder resources per HCA, with this HCA used as\r
490                the target.\r
491 \r
492        max_qp_init_depth\r
493                Maximimum initiator depth per QP for initiating RDMA reads and\r
494                atomic operations.\r
495 \r
496        max_ipv6_qps\r
497        max_ether_qps\r
498                Maximum number of IPV6 and raw ether QP's supported by this HCA.\r
499 \r
500        max_mcast_grps\r
501                Maximum number of multicast groups supported.\r
502 \r
503        max_mcast_qps\r
504                Maximum number of QP's that can support multicast operations.\r
505 \r
506        max_qps_per_mcast_grp\r
507                Maximum number of multicast QP's per multicast group.\r
508 \r
509        local_ack_delay\r
510                Specifies the maximum time interval between the local CA receiving\r
511                a message and the transmission of the associated ACK or NAK.\r
512                timeout = 4.096 microseconds * 2^local_ack_delay\r
513 \r
514        bad_pkey_ctr_support\r
515        bad_qkey_ctr_support\r
516                Indicates support for the bad pkey and qkey counters.\r
517 \r
518        raw_mcast_support\r
519                Indicates support for raw packet multicast.\r
520 \r
521        apm_support\r
522                Indicates support for Automatic Path Migration.\r
523 \r
524        av_port_check\r
525                Indicates ability to check port number in address handles.\r
526 \r
527        change_primary_port\r
528                Indicates ability to change primary port for a QP during a\r
529                SQD-&gt;RTS transition.\r
530 \r
531        modify_wr_depth\r
532                Indicates ability to modify QP depth during a modify QP operation.\r
533                Check the verb specification for permitted states.\r
534 \r
535        current_qp_state_support\r
536                Indicates ability of the HCA to support the current QP state modifier\r
537                during a modify QP operation.\r
538 \r
539        shutdown_port_capability\r
540                Shutdown port capability support indicator.\r
541 \r
542        init_type_support\r
543                Indicates init_type_reply and ability to set init_type is supported.\r
544 \r
545        port_active_event_support\r
546                Port active event support indicator.\r
547 \r
548        system_image_guid_support\r
549                System image GUID support indicator.\r
550 \r
551        hw_agents\r
552                Indicates SMA is implemented in HW.\r
553 \r
554        system_image_guid\r
555                Optional system image GUID.  This field is valid only if the\r
556                system_image_guid_support flag is set.\r
557 \r
558        num_page_sizes\r
559                Indicates support for different page sizes supported by the HCA.\r
560                The variable size array can be obtained from p_page_size.\r
561 \r
562        num_ports\r
563                Number of physical ports supported on this HCA.\r
564 \r
565        p_page_size\r
566                Array holding different page size supported.\r
567 \r
568        p_port_attr\r
569                Array holding port attributes.\r
570 </pre>\r
571 </span><p><strong>NOTES</strong></p>\r
572 <span class="NOTES"><pre>       This structure contains the attributes of a channel adapter.  Users must\r
573        call <a href="#robo102">ib_copy_ca_attr</a> to copy the contents of this structure to a new\r
574        memory region.\r
575 </pre>\r
576 </span><p><strong>SEE ALSO</strong></p>\r
577 <span class="SEE_ALSO"><pre>       <a href="#robo200">ib_port_attr_t</a>, <a href="#robo56">ib_atomic_t</a>, <a href="#robo102">ib_copy_ca_attr</a>\r
578 </pre>\r
579 </span>\r
580 <hr />\r
581 \r
582 <h2><a name="robo61">[Definitions]<a name="Access20Layer2fib5fca5fmod5ft">\r
583 Access Layer/ib_ca_mod_t</a></h2>\r
584 \r
585 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
586 <p><strong>NAME</strong></p>\r
587 <span class="NAME"><pre>       <strong>ib_ca_mod_t</strong> -- Modify port attributes and error counters\r
588 </pre>\r
589 </span><p><strong>DESCRIPTION</strong></p>\r
590 <span class="DESCRIPTION"><pre>       Specifies modifications to the port attributes of a channel adapter.\r
591 </pre>\r
592 </span><p><strong>SYNOPSIS</strong></p>\r
593 <span class="SYNOPSIS"><pre>typedef uint32_t                                                        <strong>ib_ca_mod_t</strong>;\r
594 #define IB_CA_MOD_IS_CM_SUPPORTED                       0x00000001\r
595 #define IB_CA_MOD_IS_SNMP_SUPPORTED                     0x00000002\r
596 #define IB_CA_MOD_IS_DEV_MGMT_SUPPORTED         0x00000004\r
597 #define IB_CA_MOD_IS_VEND_SUPPORTED                     0x00000008\r
598 #define IB_CA_MOD_IS_SM                                         0x00000010\r
599 #define IB_CA_MOD_IS_SM_DISABLED                        0x00000020\r
600 #define IB_CA_MOD_QKEY_CTR                                      0x00000040\r
601 #define IB_CA_MOD_PKEY_CTR                                      0x00000080\r
602 #define IB_CA_MOD_IS_NOTICE_SUPPORTED           0x00000100\r
603 #define IB_CA_MOD_IS_TRAP_SUPPORTED                     0x00000200\r
604 #define IB_CA_MOD_IS_APM_SUPPORTED                      0x00000400\r
605 #define IB_CA_MOD_IS_SLMAP_SUPPORTED            0x00000800\r
606 #define IB_CA_MOD_IS_PKEY_NVRAM_SUPPORTED       0x00001000\r
607 #define IB_CA_MOD_IS_MKEY_NVRAM_SUPPORTED       0x00002000\r
608 #define IB_CA_MOD_IS_SYSGUID_SUPPORTED          0x00004000\r
609 #define IB_CA_MOD_IS_DR_NOTICE_SUPPORTED        0x00008000\r
610 #define IB_CA_MOD_IS_BOOT_MGMT_SUPPORTED        0x00010000\r
611 #define IB_CA_MOD_IS_CAPM_NOTICE_SUPPORTED      0x00020000\r
612 #define IB_CA_MOD_IS_REINIT_SUPORTED            0x00040000\r
613 #define IB_CA_MOD_IS_LEDINFO_SUPPORTED          0x00080000\r
614 #define IB_CA_MOD_SHUTDOWN_PORT                         0x00100000\r
615 #define IB_CA_MOD_INIT_TYPE_VALUE                       0x00200000\r
616 #define IB_CA_MOD_SYSTEM_IMAGE_GUID                     0x00400000\r
617 #define IB_CA_MOD_IS_CLIENT_REREGISTER_SUPPORTED        0x00800000\r
618 </pre>\r
619 </span><p><strong>VALUES</strong></p>\r
620 <span class="VALUES"><pre>       IB_CA_MOD_IS_CM_SUPPORTED\r
621                Indicates if there is a communication manager accessible through\r
622                the port.\r
623 \r
624        IB_CA_MOD_IS_SNMP_SUPPORTED\r
625                Indicates if there is an SNMP agent accessible through the port.\r
626 \r
627        IB_CA_MOD_IS_DEV_MGMT_SUPPORTED\r
628                Indicates if there is a device management agent accessible through\r
629                the port.\r
630 \r
631        IB_CA_MOD_IS_VEND_SUPPORTED\r
632                Indicates if there is a vendor supported agent accessible through\r
633                the port.\r
634 \r
635        IB_CA_MOD_IS_SM\r
636                Indicates if there is a subnet manager accessible through\r
637                the port.\r
638 \r
639        IB_CA_MOD_IS_SM_DISABLED\r
640                Indicates if the port has been disabled for configuration by the subnet\r
641                manager.\r
642 \r
643        IB_CA_MOD_QKEY_CTR\r
644                Used to reset the qkey violation counter associated with the port.\r
645 \r
646        IB_CA_MOD_PKEY_CTR\r
647                Used to reset the pkey violation counter associated with the port.\r
648 \r
649        IB_CA_MOD_IS_NOTICE_SUPPORTED\r
650                Indicates that this CA supports ability to generate Notices for\r
651                Port State changes. (only applicable to switches)\r
652 \r
653        IB_CA_MOD_IS_TRAP_SUPPORTED\r
654                Indicates that this management port supports ability to generate\r
655                trap messages. (only applicable to switches)\r
656 \r
657        IB_CA_MOD_IS_APM_SUPPORTED\r
658                Indicates that this port is capable of performing Automatic Migration.\r
659 \r
660        IB_CA_MOD_IS_SLMAP_SUPPORTED\r
661                Indicates this port supports SLMAP capability.\r
662 \r
663        IB_CA_MOD_IS_PKEY_NVRAM_SUPPORTED\r
664                Indicates that PKEY is supported in NVRAM\r
665 \r
666        IB_CA_MOD_IS_MKEY_NVRAM_SUPPORTED\r
667                Indicates that MKEY is supported in NVRAM\r
668 \r
669        IB_CA_MOD_IS_SYSGUID_SUPPORTED\r
670                Indicates System Image GUID support.\r
671 \r
672        IB_CA_MOD_IS_DR_NOTICE_SUPPORTED\r
673                Indicate support for generating Direct Routed Notices\r
674 \r
675        IB_CA_MOD_IS_BOOT_MGMT_SUPPORTED\r
676                Indicates support for Boot Management\r
677 \r
678        IB_CA_MOD_IS_CAPM_NOTICE_SUPPORTED\r
679                Indicates capability to generate notices for changes to CAPMASK\r
680 \r
681        IB_CA_MOD_IS_REINIT_SUPORTED\r
682                Indicates type of node init supported. Refer to Chapter 14 for\r
683                Initialization actions.\r
684 \r
685        IB_CA_MOD_IS_LEDINFO_SUPPORTED\r
686                Indicates support for LED info.\r
687 \r
688        IB_CA_MOD_SHUTDOWN_PORT\r
689                Used to modify the port active indicator.\r
690 \r
691        IB_CA_MOD_INIT_TYPE_VALUE\r
692                Used to modify the init_type value for the port.\r
693 \r
694        IB_CA_MOD_SYSTEM_IMAGE_GUID\r
695                Used to modify the system image GUID for the port.\r
696 \r
697        IB_CA_MOD_IS_CLIENT_REREGISTER_SUPPORTED\r
698                Used to modify the system image GUID for the port.\r
699 </pre>\r
700 </span>\r
701 <hr />\r
702 \r
703 <h2><a name="robo66">[Structures]<a name="Access20Layer2fib5fci5fop5ft">\r
704 Access Layer/ib_ci_op_t</a></h2>\r
705 \r
706 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
707 <p><strong>NAME</strong></p>\r
708 <span class="NAME"><pre>       <strong>ib_ci_op_t</strong>\r
709 </pre>\r
710 </span><p><strong>DESCRIPTION</strong></p>\r
711 <span class="DESCRIPTION"><pre>       A structure used for vendor specific CA interface communication.\r
712 </pre>\r
713 </span><p><strong>SYNOPSIS</strong></p>\r
714 <span class="SYNOPSIS"><pre>typedef struct _ib_ci_op\r
715 {\r
716         IN                              uint32_t                                        command;\r
717         IN                              uint32_t                                        buf_size;\r
718         IN                              uint32_t                                        buf_info;\r
719         IN      OUT                     int32_t                                         status;\r
720                 OUT                     uint32_t                                        num_bytes_ret;\r
721         IN      OUT                     void* __ptr64                           p_buf OPTIONAL;\r
722 \r
723 }       <strong>ib_ci_op_t</strong>;\r
724 </pre>\r
725 </span><p><strong>FIELDS</strong></p>\r
726 <span class="FIELDS"><pre>       command\r
727                A command code that is understood by the verbs provider.\r
728 \r
729        status\r
730                The completion status from the verbs provider.  This field should be\r
731                initialize to indicate an error to allow detection and cleanup in\r
732                case a communication error occurs between user-mode and kernel-mode.\r
733 \r
734        buf_size\r
735                The size of the buffer in bytes.\r
736 \r
737        buf_info\r
738                Additional buffer information\r
739 \r
740        p_buf\r
741                A reference to a buffer containing vendor specific data.  The verbs\r
742                provider must not access pointers in the p_buf between user-mode and\r
743                kernel-mode.  Any pointers embedded in the p_buf are invalidated by\r
744                the user-mode/kernel-mode transition.\r
745 \r
746        num_bytes_ret\r
747                The size in bytes of the vendor specific data returned in the buffer.\r
748                This field is set by the verbs provider.  The verbs provider should\r
749                verify that the buffer size is sufficient to hold the data being\r
750                returned.\r
751 </pre>\r
752 </span><p><strong>NOTES</strong></p>\r
753 <span class="NOTES"><pre>       This structure is provided to allow the exchange of vendor specific\r
754        data between the originator and the verbs provider.  Users of this\r
755        structure are expected to know the format of data in the p_buf based\r
756        on the structure command field or the usage context.\r
757 </pre>\r
758 </span>\r
759 <hr />\r
760 \r
761 <h2><a name="robo73">[Definitions]<a name="Access20Layer2fib5fcm5fcap5fmask5ft">\r
762 Access Layer/ib_cm_cap_mask_t</a></h2>\r
763 \r
764 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
765 <p><strong>NAME</strong></p>\r
766 <span class="NAME"><pre>       <strong>ib_cm_cap_mask_t</strong>\r
767 </pre>\r
768 </span><p><strong>DESCRIPTION</strong></p>\r
769 <span class="DESCRIPTION"><pre>       Capability mask values in ClassPortInfo.\r
770 </pre>\r
771 </span><p><strong>SYNOPSIS</strong></p>\r
772 <span class="SYNOPSIS"><pre>#define IB_CM_RELIABLE_CONN_CAPABLE                     <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(9)\r
773 #define IB_CM_RELIABLE_DGRM_CAPABLE                     <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(10)\r
774 #define IB_CM_RDGRM_CAPABLE                                     <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(11)\r
775 #define IB_CM_UNRELIABLE_CONN_CAPABLE           <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(12)\r
776 #define IB_CM_SIDR_CAPABLE                                      <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(13)\r
777 </pre>\r
778 </span><p><strong>SEE ALSO</strong></p>\r
779 <span class="SEE_ALSO"><pre>       <a href="./ib_al_h.html#robo93">ib_cm_rep</a>, <a href="#robo844">ib_class_port_info_t</a>\r
780 </pre>\r
781 </span><p><strong>SOURCE</strong></p>\r
782 <span class="SOURCE"><pre>*\r
783 </pre>\r
784 </span>\r
785 <hr />\r
786 \r
787 <h2><a name="robo102">[Functions]<a name="Access20layer2fib5fcopy5fca5fattr">\r
788 Access layer/ib_copy_ca_attr</a></h2>\r
789 \r
790 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_functions.html#top">index</a>]</p>\r
791 <p><strong>NAME</strong></p>\r
792 <span class="NAME"><pre>       <strong>ib_copy_ca_attr</strong>\r
793 </pre>\r
794 </span><p><strong>DESCRIPTION</strong></p>\r
795 <span class="DESCRIPTION"><pre>       Copies CA attributes.\r
796 </pre>\r
797 </span><p><strong>SYNOPSIS</strong></p>\r
798 <span class="SYNOPSIS"><pre>AL_EXPORT <a href="#robo60">ib_ca_attr_t</a>* AL_API\r
799 <strong>ib_copy_ca_attr</strong>(\r
800         IN                              <a href="#robo60">ib_ca_attr_t</a>* const             p_dest,\r
801         IN              const   <a href="#robo60">ib_ca_attr_t</a>* const             p_src );\r
802 </pre>\r
803 </span><p><strong>PARAMETERS</strong></p>\r
804 <span class="PARAMETERS"><pre>       p_dest\r
805                Pointer to the buffer that is the destination of the copy.\r
806 \r
807        p_src\r
808                Pointer to the CA attributes to copy.\r
809 </pre>\r
810 </span><p><strong>RETURN VALUE</strong></p>\r
811 <span class="RETURN_VALUE"><pre>       Pointer to the copied CA attributes.\r
812 </pre>\r
813 </span><p><strong>NOTES</strong></p>\r
814 <span class="NOTES"><pre>       The buffer pointed to by the p_dest parameter must be at least the size\r
815        specified in the size field of the buffer pointed to by p_src.\r
816 </pre>\r
817 </span><p><strong>SEE ALSO</strong></p>\r
818 <span class="SEE_ALSO"><pre>       <a href="#robo60">ib_ca_attr_t</a>, ib_dup_ca_attr, ib_free_ca_attr\r
819 </pre>\r
820 </span>\r
821 <hr />\r
822 \r
823 <h2><a name="robo141">[Definitions]<a name="Access20Layer2fib5finit5ftype5ft">\r
824 Access Layer/ib_init_type_t</a></h2>\r
825 \r
826 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
827 <p><strong>NAME</strong></p>\r
828 <span class="NAME"><pre>       <strong>ib_init_type_t</strong>\r
829 </pre>\r
830 </span><p><strong>DESCRIPTION</strong></p>\r
831 <span class="DESCRIPTION"><pre>       If supported by the HCA, the type of initialization requested by\r
832        this port before SM moves it to the active or armed state.  If the\r
833        SM implements reinitialization, it shall set these bits to indicate\r
834        the type of initialization performed prior to activating the port.\r
835        Otherwise, these bits shall be set to 0.\r
836 </pre>\r
837 </span><p><strong>SYNOPSIS</strong></p>\r
838 <span class="SYNOPSIS"><pre>typedef uint8_t                                 <strong>ib_init_type_t</strong>;\r
839 #define IB_INIT_TYPE_NO_LOAD                            0x01\r
840 #define IB_INIT_TYPE_PRESERVE_CONTENT           0x02\r
841 #define IB_INIT_TYPE_PRESERVE_PRESENCE          0x04\r
842 #define IB_INIT_TYPE_DO_NOT_RESUSCITATE         0x08\r
843 </pre>\r
844 </span>\r
845 <hr />\r
846 \r
847 <h2><a name="robo148">[Structures]<a name="Access20Layer2fib5flocal5fds5ft">\r
848 Access Layer/ib_local_ds_t</a></h2>\r
849 \r
850 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
851 <p><strong>NAME</strong></p>\r
852 <span class="NAME"><pre>       <strong>ib_local_ds_t</strong>\r
853 </pre>\r
854 </span><p><strong>DESCRIPTION</strong></p>\r
855 <span class="DESCRIPTION"><pre>       Local data segment information referenced by send and receive work\r
856        requests.  This is used to specify local data buffers used as part of a\r
857        work request.\r
858 </pre>\r
859 </span><p><strong>SYNOPSIS</strong></p>\r
860 <span class="SYNOPSIS"><pre>typedef struct _ib_local_ds\r
861 {\r
862         uint64_t                                vaddr;\r
863         uint32_t                                length;\r
864         uint32_t                                lkey;\r
865 \r
866 }       <strong>ib_local_ds_t</strong>;\r
867 </pre>\r
868 </span>\r
869 <hr />\r
870 \r
871 <h2><a name="robo159">[Structures]<a name="Access20Layer2fib5fmr5fattr5ft">\r
872 Access Layer/ib_mr_attr_t</a></h2>\r
873 \r
874 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
875 <p><strong>NAME</strong></p>\r
876 <span class="NAME"><pre>       <strong>ib_mr_attr_t</strong>\r
877 </pre>\r
878 </span><p><strong>DESCRIPTION</strong></p>\r
879 <span class="DESCRIPTION"><pre>       Attributes of a registered memory region.\r
880 </pre>\r
881 </span><p><strong>SYNOPSIS</strong></p>\r
882 <span class="SYNOPSIS"><pre>typedef struct _ib_mr_attr\r
883 {\r
884         ib_pd_handle_t                  h_pd;\r
885         uint64_t                                local_lb;\r
886         uint64_t                                local_ub;\r
887         uint64_t                                remote_lb;\r
888         uint64_t                                remote_ub;\r
889         <a href="#robo45">ib_access_t</a>                             access_ctrl;\r
890         net32_t                                 lkey;\r
891         net32_t                                 rkey;\r
892 \r
893 }       <strong>ib_mr_attr_t</strong>;\r
894 </pre>\r
895 </span><p><strong>DESCRIPTION</strong></p>\r
896 <span class="DESCRIPTION"><pre>       h_pd\r
897                Handle to the protection domain for this memory region.\r
898 \r
899        local_lb\r
900                The virtual address of the lower bound of protection for local\r
901                memory access.  This is always a 64-bit quantity to support registering\r
902                more than 4GB of memory on 32-bit systems with PAE.\r
903 \r
904        local_ub\r
905                The virtual address of the upper bound of protection for local\r
906                memory access.  This is always a 64-bit quantity to support registering\r
907                more than 4GB of memory on 32-bit systems with PAE.\r
908 \r
909        remote_lb\r
910                The virtual address of the lower bound of protection for remote\r
911                memory access.  This is always a 64-bit quantity to support registering\r
912                more than 4GB of memory on 32-bit systems with PAE.\r
913 \r
914        remote_ub\r
915                The virtual address of the upper bound of protection for remote\r
916                memory access.  This is always a 64-bit quantity to support registering\r
917                more than 4GB of memory on 32-bit systems with PAE.\r
918 \r
919        access_ctrl\r
920                Access rights for the specified memory region.\r
921 \r
922        lkey\r
923                The lkey associated with this memory region.\r
924 \r
925        rkey\r
926                The rkey associated with this memory region.\r
927 </pre>\r
928 </span><p><strong>NOTES</strong></p>\r
929 <span class="NOTES"><pre>       The remote_lb, remote_ub, and rkey are only valid if remote memory access\r
930        is enabled for this memory region.\r
931 </pre>\r
932 </span><p><strong>SEE ALSO</strong></p>\r
933 <span class="SEE_ALSO"><pre>       <a href="#robo45">ib_access_t</a>\r
934 </pre>\r
935 </span>\r
936 <hr />\r
937 \r
938 <h2><a name="robo160">[Structures]<a name="Access20Layer2fib5fmr5fcreate5ft">\r
939 Access Layer/ib_mr_create_t</a></h2>\r
940 \r
941 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
942 <p><strong>NAME</strong></p>\r
943 <span class="NAME"><pre>       <strong>ib_mr_create_t</strong>\r
944 </pre>\r
945 </span><p><strong>DESCRIPTION</strong></p>\r
946 <span class="DESCRIPTION"><pre>       Information required to create a registered memory region.\r
947 </pre>\r
948 </span><p><strong>SYNOPSIS</strong></p>\r
949 <span class="SYNOPSIS"><pre>typedef struct _ib_mr_create\r
950 {\r
951         void* __ptr64                   vaddr;\r
952         uint64_t                                length;\r
953         <a href="#robo45">ib_access_t</a>                             access_ctrl;\r
954 \r
955 }       <strong>ib_mr_create_t</strong>;\r
956 </pre>\r
957 </span><p><strong>FIELDS</strong></p>\r
958 <span class="FIELDS"><pre>       vaddr\r
959                Starting virtual address of the region being registered.\r
960 \r
961        length\r
962                Length of the buffer to register.\r
963 \r
964        access_ctrl\r
965                Access rights of the registered region.\r
966 </pre>\r
967 </span><p><strong>SEE ALSO</strong></p>\r
968 <span class="SEE_ALSO"><pre>       <a href="#robo45">ib_access_t</a>\r
969 </pre>\r
970 </span>\r
971 <hr />\r
972 \r
973 <h2><a name="robo161">[Definitions]<a name="Access20Layer2fib5fmr5fmod5ft">\r
974 Access Layer/ib_mr_mod_t</a></h2>\r
975 \r
976 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
977 <p><strong>NAME</strong></p>\r
978 <span class="NAME"><pre>       <strong>ib_mr_mod_t</strong>\r
979 </pre>\r
980 </span><p><strong>DESCRIPTION</strong></p>\r
981 <span class="DESCRIPTION"><pre>       Mask used to specify which attributes of a registered memory region are\r
982        being modified.\r
983 </pre>\r
984 </span><p><strong>SYNOPSIS</strong></p>\r
985 <span class="SYNOPSIS"><pre>typedef uint32_t                                                <strong>ib_mr_mod_t</strong>;\r
986 #define IB_MR_MOD_ADDR                                  0x00000001\r
987 #define IB_MR_MOD_PD                                    0x00000002\r
988 #define IB_MR_MOD_ACCESS                                0x00000004\r
989 </pre>\r
990 </span><p><strong>PARAMETERS</strong></p>\r
991 <span class="PARAMETERS"><pre>       IB_MEM_MOD_ADDR\r
992                The address of the memory region is being modified.\r
993 \r
994        IB_MEM_MOD_PD\r
995                The protection domain associated with the memory region is being\r
996                modified.\r
997 \r
998        IB_MEM_MOD_ACCESS\r
999                The access rights the memory region are being modified.\r
1000 </pre>\r
1001 </span>\r
1002 <hr />\r
1003 \r
1004 <h2><a name="robo165">[Definitions]<a name="Access20Layer2fib5fpd5ftype5ft">\r
1005 Access Layer/ib_pd_type_t</a></h2>\r
1006 \r
1007 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
1008 <p><strong>NAME</strong></p>\r
1009 <span class="NAME"><pre>       <strong>ib_pd_type_t</strong>\r
1010 </pre>\r
1011 </span><p><strong>DESCRIPTION</strong></p>\r
1012 <span class="DESCRIPTION"><pre>       Indicates the type of protection domain being allocated.\r
1013 </pre>\r
1014 </span><p><strong>SYNOPSIS</strong></p>\r
1015 <span class="SYNOPSIS"><pre>typedef enum _ib_pd_type\r
1016 {\r
1017         IB_PDT_NORMAL,\r
1018         IB_PDT_ALIAS,\r
1019         IB_PDT_SQP,\r
1020         IB_PDT_UD\r
1021 \r
1022 }       <strong>ib_pd_type_t</strong>;\r
1023 </pre>\r
1024 </span><p><strong>VALUES</strong></p>\r
1025 <span class="VALUES"><pre>       IB_PDT_NORMAL\r
1026                Protection domain for all non-aliased QPs.\r
1027 \r
1028        IB_PDT_ALIAS\r
1029                Protection domain for IB_QPT_QP0_ALIAS and IB_QPT_QP1_ALIAS QPs.\r
1030 \r
1031        IB_PDT_SQP\r
1032                Protection domain for special queue pair usage.\r
1033 \r
1034        IB_PDT_UD\r
1035                Protection domain for UD queue pair usage.\r
1036 </pre>\r
1037 </span>\r
1038 <hr />\r
1039 \r
1040 <h2><a name="robo187">[Structures]<a name="Access20Layer2fib5fphys5fcreate5ft">\r
1041 Access Layer/ib_phys_create_t</a></h2>\r
1042 \r
1043 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1044 <p><strong>NAME</strong></p>\r
1045 <span class="NAME"><pre>       <strong>ib_phys_create_t</strong>\r
1046 </pre>\r
1047 </span><p><strong>DESCRIPTION</strong></p>\r
1048 <span class="DESCRIPTION"><pre>       Information required to create a physical memory region.\r
1049 </pre>\r
1050 </span><p><strong>SYNOPSIS</strong></p>\r
1051 <span class="SYNOPSIS"><pre>typedef struct _ib_phys_create\r
1052 {\r
1053         uint64_t                                        length;\r
1054         uint32_t                                        num_ranges;\r
1055         <a href="#robo188">ib_phys_range_t</a>* __ptr64        range_array;\r
1056         uint32_t                                        buf_offset;\r
1057         uint32_t                                        hca_page_size;\r
1058         <a href="#robo45">ib_access_t</a>                                     access_ctrl;\r
1059 \r
1060 }       <strong>ib_phys_create_t</strong>;\r
1061 </pre>\r
1062 </span><p><strong>FIELDS</strong></p>\r
1063 <span class="FIELDS"><pre>       length\r
1064                The length of the memory region in bytes.\r
1065 \r
1066        num_ranges\r
1067                Number of ib_phys_range structures listed in the specified range array.\r
1068 \r
1069        range_array\r
1070                An array of ib_phys_range structures to be registered as a single memory\r
1071                region.\r
1072 \r
1073        buf_offset\r
1074                The offset into the first physical memory range of the specified memory\r
1075                region on which to start the virtual address.\r
1076 \r
1077        hca_page_size\r
1078                The HCA page size to use to register the memory.\r
1079 \r
1080        access_ctrl\r
1081                Access rights of the registered region.\r
1082 </pre>\r
1083 </span><p><strong>SEE ALSO</strong></p>\r
1084 <span class="SEE_ALSO"><pre>       <a href="#robo45">ib_access_t</a>\r
1085 </pre>\r
1086 </span>\r
1087 <hr />\r
1088 \r
1089 <h2><a name="robo188">[Structures]<a name="Access20Layer2fib5fphys5frange5ft">\r
1090 Access Layer/ib_phys_range_t</a></h2>\r
1091 \r
1092 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1093 <p><strong>NAME</strong></p>\r
1094 <span class="NAME"><pre>       <strong>ib_phys_range_t</strong>\r
1095 </pre>\r
1096 </span><p><strong>DESCRIPTION</strong></p>\r
1097 <span class="DESCRIPTION"><pre>       Information describing a physical memory range.\r
1098 </pre>\r
1099 </span><p><strong>SYNOPSIS</strong></p>\r
1100 <span class="SYNOPSIS"><pre>typedef struct _ib_phys_range\r
1101 {\r
1102         uint64_t                                base_addr;\r
1103         uint64_t                                size;\r
1104 \r
1105 }       <strong>ib_phys_range_t</strong>;\r
1106 </pre>\r
1107 </span><p><strong>FIELDS</strong></p>\r
1108 <span class="FIELDS"><pre>       base_addr\r
1109                Physical address of the base of the memory range.\r
1110 \r
1111        size\r
1112                size, in bytes, of the memory range.\r
1113 </pre>\r
1114 </span><p><strong>NOTES</strong></p>\r
1115 <span class="NOTES"><pre>       The base address must be start and end on an HCA-supported page boundary.\r
1116 </pre>\r
1117 </span><p><strong>SEE ALSO</strong></p>\r
1118 <span class="SEE_ALSO"><pre>       <a href="#robo187">ib_phys_create_t</a>\r
1119 </pre>\r
1120 </span>\r
1121 <hr />\r
1122 \r
1123 <h2><a name="robo199">[Structures]<a name="Access20Layer2fib5fport5fattr5fmod5ft">\r
1124 Access Layer/ib_port_attr_mod_t</a></h2>\r
1125 \r
1126 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1127 <p><strong>NAME</strong></p>\r
1128 <span class="NAME"><pre>       <strong>ib_port_attr_mod_t</strong>\r
1129 </pre>\r
1130 </span><p><strong>DESCRIPTION</strong></p>\r
1131 <span class="DESCRIPTION"><pre>       Port attributes that may be modified.\r
1132 </pre>\r
1133 </span><p><strong>SYNOPSIS</strong></p>\r
1134 <span class="SYNOPSIS"><pre>typedef struct _ib_port_attr_mod\r
1135 {\r
1136         <a href="#robo201">ib_port_cap_t</a>                   cap;\r
1137         uint16_t                                pkey_ctr;\r
1138         uint16_t                                qkey_ctr;\r
1139 \r
1140         <a href="#robo141">ib_init_type_t</a>                  init_type;\r
1141         <a href="#robo901">ib_net64_t</a>                              system_image_guid;\r
1142 \r
1143 }       <strong>ib_port_attr_mod_t</strong>;\r
1144 </pre>\r
1145 </span><p><strong>SEE ALSO</strong></p>\r
1146 <span class="SEE_ALSO"><pre>       <a href="#robo201">ib_port_cap_t</a>\r
1147 </pre>\r
1148 </span>\r
1149 <hr />\r
1150 \r
1151 <h2><a name="robo200">[Structures]<a name="Access20Layer2fib5fport5fattr5ft">\r
1152 Access Layer/ib_port_attr_t</a></h2>\r
1153 \r
1154 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1155 <p><strong>NAME</strong></p>\r
1156 <span class="NAME"><pre>       <strong>ib_port_attr_t</strong>\r
1157 </pre>\r
1158 </span><p><strong>DESCRIPTION</strong></p>\r
1159 <span class="DESCRIPTION"><pre>       Information about a port on a given channel adapter.\r
1160 </pre>\r
1161 </span><p><strong>SYNOPSIS</strong></p>\r
1162 <span class="SYNOPSIS"><pre>typedef struct _ib_port_attr\r
1163 {\r
1164         <a href="#robo901">ib_net64_t</a>                              port_guid;\r
1165         uint8_t                                 port_num;\r
1166         uint8_t                                 mtu;\r
1167         uint64_t                                max_msg_size;\r
1168         <a href="#robo899">ib_net16_t</a>                              lid;\r
1169         uint8_t                                 lmc;\r
1170 \r
1171         /*\r
1172          * LinkWidthSupported as defined in PortInfo.  Required to calculate\r
1173          * inter-packet delay (a.k.a. static rate).\r
1174          */\r
1175         uint8_t                                 link_width_supported;\r
1176 \r
1177         uint16_t                                max_vls;\r
1178 \r
1179         <a href="#robo899">ib_net16_t</a>                              sm_lid;\r
1180         uint8_t                                 sm_sl;\r
1181         uint8_t                                 link_state;\r
1182 \r
1183         <a href="#robo141">ib_init_type_t</a>                  init_type_reply;        /* Optional */\r
1184 \r
1185         /*\r
1186          * subnet_timeout:\r
1187          * The maximum expected subnet propagation delay to reach any port on\r
1188          * the subnet.  This value also determines the rate at which traps can\r
1189          * be generated from this node.\r
1190          *\r
1191          * timeout = 4.096 microseconds * 2^subnet_timeout\r
1192          */\r
1193         uint8_t                                 subnet_timeout;\r
1194 \r
1195         <a href="#robo201">ib_port_cap_t</a>                   cap;\r
1196         uint16_t                                pkey_ctr;\r
1197         uint16_t                                qkey_ctr;\r
1198 \r
1199         uint16_t                                num_gids;\r
1200         uint16_t                                num_pkeys;\r
1201         /*\r
1202          * Pointers at the end of the structure to allow doing a simple\r
1203          * memory comparison of contents up to the first pointer.\r
1204          */\r
1205         <a href="#robo861">ib_gid_t</a>* __ptr64               p_gid_table;\r
1206         <a href="#robo899">ib_net16_t</a>* __ptr64             p_pkey_table;\r
1207 \r
1208 }       <strong>ib_port_attr_t</strong>;\r
1209 </pre>\r
1210 </span><p><strong>SEE ALSO</strong></p>\r
1211 <span class="SEE_ALSO"><pre>       uint8_t, <a href="#robo201">ib_port_cap_t</a>, <a href="#robo725">ib_link_states_t</a>\r
1212 </pre>\r
1213 </span>\r
1214 <hr />\r
1215 \r
1216 <h2><a name="robo201">[Structures]<a name="Access20Layer2fib5fport5fcap5ft">\r
1217 Access Layer/ib_port_cap_t</a></h2>\r
1218 \r
1219 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1220 <p><strong>NAME</strong></p>\r
1221 <span class="NAME"><pre>       <strong>ib_port_cap_t</strong>\r
1222 </pre>\r
1223 </span><p><strong>DESCRIPTION</strong></p>\r
1224 <span class="DESCRIPTION"><pre>       Indicates which management agents are currently available on the specified\r
1225        port.\r
1226 </pre>\r
1227 </span><p><strong>SYNOPSIS</strong></p>\r
1228 <span class="SYNOPSIS"><pre>typedef struct _ib_port_cap\r
1229 {\r
1230         boolean_t               cm;\r
1231         boolean_t               snmp;\r
1232         boolean_t               dev_mgmt;\r
1233         boolean_t               vend;\r
1234         boolean_t               sm;\r
1235         boolean_t               sm_disable;\r
1236         boolean_t               qkey_ctr;\r
1237         boolean_t               pkey_ctr;\r
1238         boolean_t               notice;\r
1239         boolean_t               trap;\r
1240         boolean_t               apm;\r
1241         boolean_t               slmap;\r
1242         boolean_t               pkey_nvram;\r
1243         boolean_t               mkey_nvram;\r
1244         boolean_t               sysguid;\r
1245         boolean_t               dr_notice;\r
1246         boolean_t               boot_mgmt;\r
1247         boolean_t               capm_notice;\r
1248         boolean_t               reinit;\r
1249         boolean_t               ledinfo;\r
1250         boolean_t               port_active;\r
1251         boolean_t               ipd;\r
1252         boolean_t               pkey_switch_ext_port;\r
1253         boolean_t               bm;\r
1254         boolean_t               link_rtl;\r
1255         boolean_t               client_reregister;\r
1256 \r
1257 }       <strong>ib_port_cap_t</strong>;\r
1258 </pre>\r
1259 </span>\r
1260 <hr />\r
1261 \r
1262 <h2><a name="robo205">[Structures]<a name="Access20Layer2fib5fqp5fattr5ft">\r
1263 Access Layer/ib_qp_attr_t</a></h2>\r
1264 \r
1265 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1266 <p><strong>NAME</strong></p>\r
1267 <span class="NAME"><pre>       <strong>ib_qp_attr_t</strong>\r
1268 </pre>\r
1269 </span><p><strong>DESCRIPTION</strong></p>\r
1270 <span class="DESCRIPTION"><pre>       Queue pair attributes returned through <a href="./ib_al_h.html#robo218">ib_query_qp</a>.\r
1271 </pre>\r
1272 </span><p><strong>SYNOPSIS</strong></p>\r
1273 <span class="SYNOPSIS"><pre>typedef struct _ib_qp_attr\r
1274 {\r
1275         ib_pd_handle_t                  h_pd;\r
1276         <a href="#robo210">ib_qp_type_t</a>                    qp_type;\r
1277         <a href="#robo45">ib_access_t</a>                             access_ctrl;\r
1278         uint16_t                                pkey_index;\r
1279 \r
1280         uint32_t                                sq_max_inline;\r
1281         uint32_t                                sq_depth;\r
1282         uint32_t                                rq_depth;\r
1283         uint32_t                                sq_sge;\r
1284         uint32_t                                rq_sge;\r
1285         uint8_t                                 init_depth;\r
1286         uint8_t                                 resp_res;\r
1287 \r
1288         ib_cq_handle_t                  h_sq_cq;\r
1289         ib_cq_handle_t                  h_rq_cq;\r
1290 \r
1291         boolean_t                               sq_signaled;\r
1292 \r
1293         <a href="#robo209">ib_qp_state_t</a>                   state;\r
1294         <a href="#robo900">ib_net32_t</a>                              num;\r
1295         <a href="#robo900">ib_net32_t</a>                              dest_num;\r
1296         <a href="#robo900">ib_net32_t</a>                              qkey;\r
1297 \r
1298         <a href="#robo900">ib_net32_t</a>                              sq_psn;\r
1299         <a href="#robo900">ib_net32_t</a>                              rq_psn;\r
1300 \r
1301         uint8_t                                 primary_port;\r
1302         uint8_t                                 alternate_port;\r
1303         <a href="#robo57">ib_av_attr_t</a>                    primary_av;\r
1304         <a href="#robo57">ib_av_attr_t</a>                    alternate_av;\r
1305         <a href="#robo50">ib_apm_state_t</a>                  apm_state;\r
1306 \r
1307 }       <strong>ib_qp_attr_t</strong>;\r
1308 </pre>\r
1309 </span><p><strong>FIELDS</strong></p>\r
1310 <span class="FIELDS"><pre>       h_pd\r
1311                This is a handle to a protection domain associated with the QP.\r
1312 \r
1313        sq_max_inline\r
1314                Maximum payload that can be inlined directly in a WQE, eliminating\r
1315                protection checks and additional DMA operations.\r
1316 </pre>\r
1317 </span><p><strong>NOTES</strong></p>\r
1318 <span class="NOTES"><pre>       Other fields are defined by the Infiniband specification.\r
1319 </pre>\r
1320 </span><p><strong>SEE ALSO</strong></p>\r
1321 <span class="SEE_ALSO"><pre>       <a href="#robo210">ib_qp_type_t</a>, <a href="#robo45">ib_access_t</a>, <a href="#robo209">ib_qp_state_t</a>, <a href="#robo57">ib_av_attr_t</a>, <a href="#robo50">ib_apm_state_t</a>\r
1322 </pre>\r
1323 </span>\r
1324 <hr />\r
1325 \r
1326 <h2><a name="robo206">[Structures]<a name="Access20Layer2fib5fqp5fcreate5ft">\r
1327 Access Layer/ib_qp_create_t</a></h2>\r
1328 \r
1329 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1330 <p><strong>NAME</strong></p>\r
1331 <span class="NAME"><pre>       <strong>ib_qp_create_t</strong>\r
1332 </pre>\r
1333 </span><p><strong>DESCRIPTION</strong></p>\r
1334 <span class="DESCRIPTION"><pre>       Attributes used to initialize a queue pair at creation time.\r
1335 </pre>\r
1336 </span><p><strong>SYNOPSIS</strong></p>\r
1337 <span class="SYNOPSIS"><pre>typedef struct _ib_qp_create\r
1338 {\r
1339         <a href="#robo210">ib_qp_type_t</a>                    qp_type;\r
1340 \r
1341         uint32_t                                sq_depth;\r
1342         uint32_t                                rq_depth;\r
1343         uint32_t                                sq_sge;\r
1344         uint32_t                                rq_sge;\r
1345 \r
1346         ib_cq_handle_t                  h_sq_cq;\r
1347         ib_cq_handle_t                  h_rq_cq;\r
1348 \r
1349         boolean_t                               sq_signaled;\r
1350 \r
1351 }       <strong>ib_qp_create_t</strong>;\r
1352 </pre>\r
1353 </span><p><strong>FIELDS</strong></p>\r
1354 <span class="FIELDS"><pre>       type\r
1355                Specifies the type of queue pair to create.\r
1356 \r
1357        sq_depth\r
1358                Indicates the requested maximum number of work requests that may be\r
1359                outstanding on the queue pair's send queue.  This value must be less\r
1360                than or equal to the maximum reported by the channel adapter associated\r
1361                with the queue pair.\r
1362 \r
1363        rq_depth\r
1364                Indicates the requested maximum number of work requests that may be\r
1365                outstanding on the queue pair's receive queue.  This value must be less\r
1366                than or equal to the maximum reported by the channel adapter associated\r
1367                with the queue pair.\r
1368 \r
1369        sq_sge\r
1370                Indicates the maximum number scatter-gather elements that may be\r
1371                given in a send work request.  This value must be less\r
1372                than or equal to the maximum reported by the channel adapter associated\r
1373                with the queue pair.\r
1374 \r
1375        rq_sge\r
1376                Indicates the maximum number scatter-gather elements that may be\r
1377                given in a receive work request.  This value must be less\r
1378                than or equal to the maximum reported by the channel adapter associated\r
1379                with the queue pair.\r
1380 \r
1381        h_sq_cq\r
1382                A handle to the completion queue that will be used to report send work\r
1383                request completions.  This handle must be NULL if the type is\r
1384                IB_QPT_MAD, IB_QPT_QP0_ALIAS, or IB_QPT_QP1_ALIAS.\r
1385 \r
1386        h_rq_cq\r
1387                A handle to the completion queue that will be used to report receive\r
1388                work request completions.  This handle must be NULL if the type is\r
1389                IB_QPT_MAD, IB_QPT_QP0_ALIAS, or IB_QPT_QP1_ALIAS.\r
1390 \r
1391        sq_signaled\r
1392                A flag that is used to indicate whether the queue pair will signal\r
1393                an event upon completion of a send work request.  If set to\r
1394                TRUE, send work requests will always generate a completion\r
1395                event.  If set to FALSE, a completion event will only be\r
1396                generated if the send_opt field of the send work request has the\r
1397                IB_SEND_OPT_SIGNALED flag set.\r
1398 </pre>\r
1399 </span><p><strong>SEE ALSO</strong></p>\r
1400 <span class="SEE_ALSO"><pre>       <a href="#robo210">ib_qp_type_t</a>, <a href="#robo205">ib_qp_attr_t</a>\r
1401 </pre>\r
1402 </span>\r
1403 <hr />\r
1404 \r
1405 <h2><a name="robo207">[Structures]<a name="Access20Layer2fib5fqp5fmod5ft">\r
1406 Access Layer/ib_qp_mod_t</a></h2>\r
1407 \r
1408 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1409 <p><strong>NAME</strong></p>\r
1410 <span class="NAME"><pre>       <strong>ib_qp_mod_t</strong>\r
1411 </pre>\r
1412 </span><p><strong>DESCRIPTION</strong></p>\r
1413 <span class="DESCRIPTION"><pre>       Information needed to change the state of a queue pair through the\r
1414        <a href="./ib_al_h.html#robo158">ib_modify_qp</a> call.\r
1415 </pre>\r
1416 </span><p><strong>SYNOPSIS</strong></p>\r
1417 <span class="SYNOPSIS"><pre>typedef struct _ib_qp_mod\r
1418 {\r
1419         <a href="#robo209">ib_qp_state_t</a>                           req_state;\r
1420 \r
1421         union _qp_state\r
1422         {\r
1423                 struct _qp_init\r
1424                 {\r
1425                         uint8_t                         primary_port;\r
1426                         <a href="#robo900">ib_net32_t</a>                      qkey;\r
1427                         uint16_t                        pkey_index;\r
1428                         <a href="#robo45">ib_access_t</a>                     access_ctrl;\r
1429 \r
1430                 }       init;\r
1431 \r
1432                 struct _qp_rtr\r
1433                 {\r
1434                         <a href="#robo900">ib_net32_t</a>                      rq_psn;\r
1435                         <a href="#robo900">ib_net32_t</a>                      dest_qp;\r
1436                         <a href="#robo57">ib_av_attr_t</a>            primary_av;\r
1437                         uint8_t                         resp_res;\r
1438                         uint8_t                         rnr_nak_timeout;\r
1439 \r
1440                         <a href="#robo208">ib_qp_opts_t</a>            opts;\r
1441                         <a href="#robo57">ib_av_attr_t</a>            alternate_av;\r
1442                         <a href="#robo900">ib_net32_t</a>                      qkey;\r
1443                         uint16_t                        pkey_index;\r
1444                         <a href="#robo45">ib_access_t</a>                     access_ctrl;\r
1445                         uint32_t                        sq_depth;\r
1446                         uint32_t                        rq_depth;\r
1447 \r
1448                 }       rtr;\r
1449 \r
1450                 struct _qp_rts\r
1451                 {\r
1452                         <a href="#robo900">ib_net32_t</a>                      sq_psn;\r
1453                         uint8_t                         retry_cnt;\r
1454                         uint8_t                         rnr_retry_cnt;\r
1455                         uint8_t                         local_ack_timeout;\r
1456                         uint8_t                         init_depth;\r
1457 \r
1458                         <a href="#robo208">ib_qp_opts_t</a>            opts;\r
1459                         uint8_t                         rnr_nak_timeout;\r
1460                         <a href="#robo209">ib_qp_state_t</a>           current_state;\r
1461                         <a href="#robo900">ib_net32_t</a>                      qkey;\r
1462                         <a href="#robo45">ib_access_t</a>                     access_ctrl;\r
1463                         uint8_t                         resp_res;\r
1464 \r
1465                         <a href="#robo57">ib_av_attr_t</a>            primary_av;\r
1466                         <a href="#robo57">ib_av_attr_t</a>            alternate_av;\r
1467 \r
1468                         uint32_t                        sq_depth;\r
1469                         uint32_t                        rq_depth;\r
1470 \r
1471                         <a href="#robo50">ib_apm_state_t</a>          apm_state;\r
1472                         uint8_t                         primary_port;\r
1473                         uint16_t                        pkey_index;\r
1474 \r
1475                 }       rts;\r
1476 \r
1477                 struct _qp_sqd\r
1478                 {\r
1479                         boolean_t                       sqd_event;\r
1480 \r
1481                 }       sqd;\r
1482 \r
1483         }       state;\r
1484 \r
1485 }       <strong>ib_qp_mod_t</strong>;\r
1486 </pre>\r
1487 </span><p><strong>SEE ALSO</strong></p>\r
1488 <span class="SEE_ALSO"><pre>       <a href="#robo209">ib_qp_state_t</a>, <a href="#robo45">ib_access_t</a>, <a href="#robo57">ib_av_attr_t</a>, <a href="#robo50">ib_apm_state_t</a>\r
1489 </pre>\r
1490 </span>\r
1491 <hr />\r
1492 \r
1493 <h2><a name="robo208">[Definitions]<a name="Access20Layer2fib5fqp5fopts5ft">\r
1494 Access Layer/ib_qp_opts_t</a></h2>\r
1495 \r
1496 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
1497 <p><strong>NAME</strong></p>\r
1498 <span class="NAME"><pre>       <strong>ib_qp_opts_t</strong>\r
1499 </pre>\r
1500 </span><p><strong>DESCRIPTION</strong></p>\r
1501 <span class="DESCRIPTION"><pre>       Optional fields supplied in the modify QP operation.\r
1502 </pre>\r
1503 </span><p><strong>SYNOPSIS</strong></p>\r
1504 <span class="SYNOPSIS"><pre>typedef uint32_t                                <strong>ib_qp_opts_t</strong>;\r
1505 #define IB_MOD_QP_ALTERNATE_AV          0x00000001\r
1506 #define IB_MOD_QP_PKEY                          0x00000002\r
1507 #define IB_MOD_QP_APM_STATE                     0x00000004\r
1508 #define IB_MOD_QP_PRIMARY_AV            0x00000008\r
1509 #define IB_MOD_QP_RNR_NAK_TIMEOUT       0x00000010\r
1510 #define IB_MOD_QP_RESP_RES                      0x00000020\r
1511 #define IB_MOD_QP_INIT_DEPTH            0x00000040\r
1512 #define IB_MOD_QP_PRIMARY_PORT          0x00000080\r
1513 #define IB_MOD_QP_ACCESS_CTRL           0x00000100\r
1514 #define IB_MOD_QP_QKEY                          0x00000200\r
1515 #define IB_MOD_QP_SQ_DEPTH                      0x00000400\r
1516 #define IB_MOD_QP_RQ_DEPTH                      0x00000800\r
1517 #define IB_MOD_QP_CURRENT_STATE         0x00001000\r
1518 #define IB_MOD_QP_RETRY_CNT                     0x00002000\r
1519 #define IB_MOD_QP_LOCAL_ACK_TIMEOUT     0x00004000\r
1520 #define IB_MOD_QP_RNR_RETRY_CNT         0x00008000\r
1521 </pre>\r
1522 </span><p><strong>SEE ALSO</strong></p>\r
1523 <span class="SEE_ALSO"><pre>       <a href="#robo207">ib_qp_mod_t</a>\r
1524 </pre>\r
1525 </span>\r
1526 <hr />\r
1527 \r
1528 <h2><a name="robo209">[Definitions]<a name="Access20Layer2fib5fqp5fstate5ft">\r
1529 Access Layer/ib_qp_state_t</a></h2>\r
1530 \r
1531 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
1532 <p><strong>NAME</strong></p>\r
1533 <span class="NAME"><pre>       <strong>ib_qp_state_t</strong>\r
1534 </pre>\r
1535 </span><p><strong>DESCRIPTION</strong></p>\r
1536 <span class="DESCRIPTION"><pre>       Indicates or sets the state of a queue pair.  The current state of a queue\r
1537        pair is returned through the ib_qp_query call and set via the\r
1538        ib_qp_modify call.\r
1539 </pre>\r
1540 </span><p><strong>SYNOPSIS</strong></p>\r
1541 <span class="SYNOPSIS"><pre>typedef uint32_t                                <strong>ib_qp_state_t</strong>;\r
1542 #define IB_QPS_RESET                    0x00000001\r
1543 #define IB_QPS_INIT                             0x00000002\r
1544 #define IB_QPS_RTR                              0x00000004\r
1545 #define IB_QPS_RTS                              0x00000008\r
1546 #define IB_QPS_SQD                              0x00000010\r
1547 #define IB_QPS_SQD_DRAINING             0x00000030\r
1548 #define IB_QPS_SQD_DRAINED              0x00000050\r
1549 #define IB_QPS_SQERR                    0x00000080\r
1550 #define IB_QPS_ERROR                    0x00000100\r
1551 #define IB_QPS_TIME_WAIT                0xDEAD0000      /* InfiniBand Access Layer */\r
1552 </pre>\r
1553 </span>\r
1554 <hr />\r
1555 \r
1556 <h2><a name="robo210">[Definitions]<a name="Access20Layer2fib5fqp5ftype5ft">\r
1557 Access Layer/ib_qp_type_t</a></h2>\r
1558 \r
1559 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
1560 <p><strong>NAME</strong></p>\r
1561 <span class="NAME"><pre>       <strong>ib_qp_type_t</strong>\r
1562 </pre>\r
1563 </span><p><strong>DESCRIPTION</strong></p>\r
1564 <span class="DESCRIPTION"><pre>       Indicates the type of queue pair being created.\r
1565 </pre>\r
1566 </span><p><strong>SYNOPSIS</strong></p>\r
1567 <span class="SYNOPSIS"><pre>typedef enum _ib_qp_type\r
1568 {\r
1569         IB_QPT_RELIABLE_CONN    = 0,            /* Matches CM REQ transport type */\r
1570         IB_QPT_UNRELIABLE_CONN  = 1,            /* Matches CM REQ transport type */\r
1571         IB_QPT_UNRELIABLE_DGRM  = 3,            /* Purposefully skip RDD type. */\r
1572         IB_QPT_QP0,\r
1573         IB_QPT_QP1,\r
1574         IB_QPT_RAW_IPV6,\r
1575         IB_QPT_RAW_ETHER,\r
1576         IB_QPT_MAD,                                                             /* InfiniBand Access Layer */\r
1577         IB_QPT_QP0_ALIAS,                                               /* InfiniBand Access Layer */\r
1578         IB_QPT_QP1_ALIAS                                                /* InfiniBand Access Layer */\r
1579 \r
1580 }       <strong>ib_qp_type_t</strong>;\r
1581 </pre>\r
1582 </span><p><strong>VALUES</strong></p>\r
1583 <span class="VALUES"><pre>       IB_QPT_RELIABLE_CONN\r
1584                Reliable, connected queue pair.\r
1585 \r
1586        IB_QPT_UNRELIABLE_CONN\r
1587                Unreliable, connected queue pair.\r
1588 \r
1589        IB_QPT_UNRELIABLE_DGRM\r
1590                Unreliable, datagram queue pair.\r
1591 \r
1592        IB_QPT_QP0\r
1593                Queue pair 0.\r
1594 \r
1595        IB_QPT_QP1\r
1596                Queue pair 1.\r
1597 \r
1598        IB_QPT_RAW_DGRM\r
1599                Raw datagram queue pair.\r
1600 \r
1601        IB_QPT_RAW_IPV6\r
1602                Raw IP version 6 queue pair.\r
1603 \r
1604        IB_QPT_RAW_ETHER\r
1605                Raw Ethernet queue pair.\r
1606 \r
1607        IB_QPT_MAD\r
1608                Unreliable, datagram queue pair that will send and receive management\r
1609                datagrams with assistance from the access layer.\r
1610 \r
1611        IB_QPT_QP0_ALIAS\r
1612                Alias to queue pair 0.  Aliased QPs can only be created on an aliased\r
1613                protection domain.\r
1614 \r
1615        IB_QPT_QP1_ALIAS\r
1616                Alias to queue pair 1.  Aliased QPs can only be created on an aliased\r
1617                protection domain.\r
1618 </pre>\r
1619 </span>\r
1620 <hr />\r
1621 \r
1622 <h2><a name="robo224">[Definitions]<a name="Access20Layer2fib5frecv5fopt5ft">\r
1623 Access Layer/ib_recv_opt_t</a></h2>\r
1624 \r
1625 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
1626 <p><strong>NAME</strong></p>\r
1627 <span class="NAME"><pre>       <strong>ib_recv_opt_t</strong>\r
1628 </pre>\r
1629 </span><p><strong>DESCRIPTION</strong></p>\r
1630 <span class="DESCRIPTION"><pre>       Indicates optional fields valid in a receive work completion.\r
1631 </pre>\r
1632 </span><p><strong>SYNOPSIS</strong></p>\r
1633 <span class="SYNOPSIS"><pre>typedef uint32_t                                        <strong>ib_recv_opt_t</strong>;\r
1634 #define IB_RECV_OPT_IMMEDIATE           0x00000001\r
1635 #define IB_RECV_OPT_FORWARD                     0x00000002\r
1636 #define IB_RECV_OPT_GRH_VALID           0x00000004\r
1637 #define IB_RECV_OPT_VEND_MASK           0xFFFF0000\r
1638 </pre>\r
1639 </span><p><strong>VALUES</strong></p>\r
1640 <span class="VALUES"><pre>       IB_RECV_OPT_IMMEDIATE\r
1641                Indicates that immediate data is valid for this work completion.\r
1642 \r
1643        IB_RECV_OPT_FORWARD\r
1644                Indicates that the received trap should be forwarded to the SM.\r
1645 \r
1646        IB_RECV_OPT_GRH_VALID\r
1647                Indicates presence of the global route header. When set, the first\r
1648                40 bytes received are the GRH.\r
1649 \r
1650        IB_RECV_OPT_VEND_MASK\r
1651                This mask indicates bits reserved in the receive options that may be\r
1652                used by the verbs provider to indicate vendor specific options.  Bits\r
1653                set in this area of the receive options are ignored by the Access Layer,\r
1654                but may have specific meaning to the underlying VPD.\r
1655 </pre>\r
1656 </span>\r
1657 <hr />\r
1658 \r
1659 <h2><a name="robo225">[Structures]<a name="Access20Layer2fib5frecv5fwr5ft">\r
1660 Access Layer/ib_recv_wr_t</a></h2>\r
1661 \r
1662 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1663 <p><strong>NAME</strong></p>\r
1664 <span class="NAME"><pre>       <strong>ib_recv_wr_t</strong>\r
1665 </pre>\r
1666 </span><p><strong>DESCRIPTION</strong></p>\r
1667 <span class="DESCRIPTION"><pre>       Information used to submit a work request to the receive queue of a queue\r
1668        pair.\r
1669 </pre>\r
1670 </span><p><strong>SYNOPSIS</strong></p>\r
1671 <span class="SYNOPSIS"><pre>typedef struct _ib_recv_wr\r
1672 {\r
1673         struct _ib_recv_wr* __ptr64     p_next;\r
1674         uint64_t                                        wr_id;\r
1675         uint32_t                                        num_ds;\r
1676         <a href="#robo148">ib_local_ds_t</a>* __ptr64          ds_array;\r
1677 \r
1678 }       <strong>ib_recv_wr_t</strong>;\r
1679 </pre>\r
1680 </span><p><strong>FIELDS</strong></p>\r
1681 <span class="FIELDS"><pre>       p_next\r
1682                A pointer used to chain work requests together.  This permits multiple\r
1683                work requests to be posted to a queue pair through a single function\r
1684                call.  This value is set to NULL to mark the end of the chain.\r
1685 \r
1686        wr_id\r
1687                A 64-bit work request identifier that is returned to the consumer\r
1688                as part of the work completion.\r
1689 \r
1690        num_ds\r
1691                Number of local data segments specified by this work request.\r
1692 \r
1693        ds_array\r
1694                A reference to an array of local data segments used by the send\r
1695                operation.\r
1696 </pre>\r
1697 </span><p><strong>SEE ALSO</strong></p>\r
1698 <span class="SEE_ALSO"><pre>       <a href="#robo148">ib_local_ds_t</a>\r
1699 </pre>\r
1700 </span>\r
1701 <hr />\r
1702 \r
1703 <h2><a name="robo238">[Definitions]<a name="Access20Layer2fib5frej5fstatus5ft">\r
1704 Access Layer/ib_rej_status_t</a></h2>\r
1705 \r
1706 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
1707 <p><strong>NAME</strong></p>\r
1708 <span class="NAME"><pre>       <strong>ib_rej_status_t</strong>\r
1709 </pre>\r
1710 </span><p><strong>DESCRIPTION</strong></p>\r
1711 <span class="DESCRIPTION"><pre>       Rejection reasons.\r
1712 </pre>\r
1713 </span><p><strong>SYNOPSIS</strong></p>\r
1714 <span class="SYNOPSIS"><pre>typedef <a href="#robo899">ib_net16_t</a>                                                      <strong>ib_rej_status_t</strong>;\r
1715 </pre>\r
1716 </span><p><strong>SEE ALSO</strong></p>\r
1717 <span class="SEE_ALSO"><pre>       <a href="./ib_al_h.html#robo90">ib_cm_rej</a>, <a href="./ib_al_h.html#robo91">ib_cm_rej_rec_t</a>\r
1718 </pre>\r
1719 </span><p><strong>SOURCE</strong></p>\r
1720 <span class="SOURCE"><pre>#define IB_REJ_INSUF_QP                                         <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(1)\r
1721 #define IB_REJ_INSUF_EEC                                        <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(2)\r
1722 #define IB_REJ_INSUF_RESOURCES                          <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(3)\r
1723 #define IB_REJ_TIMEOUT                                          <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(4)\r
1724 #define IB_REJ_UNSUPPORTED                                      <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(5)\r
1725 #define IB_REJ_INVALID_COMM_ID                          <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(6)\r
1726 #define IB_REJ_INVALID_COMM_INSTANCE            <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(7)\r
1727 #define IB_REJ_INVALID_SID                                      <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(8)\r
1728 #define IB_REJ_INVALID_XPORT                            <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(9)\r
1729 #define IB_REJ_STALE_CONN                                       <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(10)\r
1730 #define IB_REJ_RDC_NOT_EXIST                            <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(11)\r
1731 #define IB_REJ_INVALID_GID                                      <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(12)\r
1732 #define IB_REJ_INVALID_LID                                      <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(13)\r
1733 #define IB_REJ_INVALID_SL                                       <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(14)\r
1734 #define IB_REJ_INVALID_TRAFFIC_CLASS            <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(15)\r
1735 #define IB_REJ_INVALID_HOP_LIMIT                        <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(16)\r
1736 #define IB_REJ_INVALID_PKT_RATE                         <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(17)\r
1737 #define IB_REJ_INVALID_ALT_GID                          <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(18)\r
1738 #define IB_REJ_INVALID_ALT_LID                          <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(19)\r
1739 #define IB_REJ_INVALID_ALT_SL                           <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(20)\r
1740 #define IB_REJ_INVALID_ALT_TRAFFIC_CLASS        <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(21)\r
1741 #define IB_REJ_INVALID_ALT_HOP_LIMIT            <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(22)\r
1742 #define IB_REJ_INVALID_ALT_PKT_RATE                     <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(23)\r
1743 #define IB_REJ_PORT_REDIRECT                            <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(24)\r
1744 #define IB_REJ_INVALID_MTU                                      <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(26)\r
1745 #define IB_REJ_INSUFFICIENT_RESP_RES            <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(27)\r
1746 #define IB_REJ_USER_DEFINED                                     <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(28)\r
1747 #define IB_REJ_INVALID_RNR_RETRY                        <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(29)\r
1748 #define IB_REJ_DUPLICATE_LOCAL_COMM_ID          <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(30)\r
1749 #define IB_REJ_INVALID_CLASS_VER                        <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(31)\r
1750 #define IB_REJ_INVALID_FLOW_LBL                         <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(32)\r
1751 #define IB_REJ_INVALID_ALT_FLOW_LBL                     <a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(33)\r
1752 </pre>\r
1753 </span>\r
1754 <hr />\r
1755 \r
1756 <h2><a name="robo248">[Definitions]<a name="Access20Layer2fib5fsend5fopt5ft">\r
1757 Access Layer/ib_send_opt_t</a></h2>\r
1758 \r
1759 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
1760 <p><strong>NAME</strong></p>\r
1761 <span class="NAME"><pre>       <strong>ib_send_opt_t</strong>\r
1762 </pre>\r
1763 </span><p><strong>DESCRIPTION</strong></p>\r
1764 <span class="DESCRIPTION"><pre>       Optional flags used when posting send work requests.  These flags\r
1765        indicate specific processing for the send operation.\r
1766 </pre>\r
1767 </span><p><strong>SYNOPSIS</strong></p>\r
1768 <span class="SYNOPSIS"><pre>typedef uint32_t                                        <strong>ib_send_opt_t</strong>;\r
1769 #define IB_SEND_OPT_IMMEDIATE           0x00000001\r
1770 #define IB_SEND_OPT_FENCE                       0x00000002\r
1771 #define IB_SEND_OPT_SIGNALED            0x00000004\r
1772 #define IB_SEND_OPT_SOLICITED           0x00000008\r
1773 #define IB_SEND_OPT_INLINE                      0x00000010\r
1774 #define IB_SEND_OPT_LOCAL                       0x00000020\r
1775 #define IB_SEND_OPT_VEND_MASK           0xFFFF0000\r
1776 </pre>\r
1777 </span><p><strong>VALUES</strong></p>\r
1778 <span class="VALUES"><pre>       The following flags determine the behavior of a work request when\r
1779        posted to the send side.\r
1780 \r
1781        IB_SEND_OPT_IMMEDIATE\r
1782                Send immediate data with the given request.\r
1783 \r
1784        IB_SEND_OPT_FENCE\r
1785                The operation is fenced.  Complete all pending send operations before\r
1786                processing this request.\r
1787 \r
1788        IB_SEND_OPT_SIGNALED\r
1789                If the queue pair is configured for signaled completion, then\r
1790                generate a completion queue entry when this request completes.\r
1791 \r
1792        IB_SEND_OPT_SOLICITED\r
1793                Set the solicited bit on the last packet of this request.\r
1794 \r
1795        IB_SEND_OPT_INLINE\r
1796                Indicates that the requested send data should be copied into a VPD\r
1797                owned data buffer.  This flag permits the user to issue send operations\r
1798                without first needing to register the buffer(s) associated with the\r
1799                send operation.  Verb providers that support this operation may place\r
1800                vendor specific restrictions on the size of send operation that may\r
1801                be performed as inline.\r
1802 \r
1803        IB_SEND_OPT_LOCAL\r
1804                Indicates that a sent MAD request should be given to the local VPD for\r
1805                processing.  MADs sent using this option are not placed on the wire.\r
1806                This send option is only valid for MAD send operations.\r
1807 \r
1808        IB_SEND_OPT_VEND_MASK\r
1809                This mask indicates bits reserved in the send options that may be used\r
1810                by the verbs provider to indicate vendor specific options.  Bits set\r
1811                in this area of the send options are ignored by the Access Layer, but\r
1812                may have specific meaning to the underlying VPD.\r
1813 </pre>\r
1814 </span>\r
1815 <hr />\r
1816 \r
1817 <h2><a name="robo249">[Structures]<a name="Access20Layer2fib5fsend5fwr5ft">\r
1818 Access Layer/ib_send_wr_t</a></h2>\r
1819 \r
1820 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
1821 <p><strong>NAME</strong></p>\r
1822 <span class="NAME"><pre>       <strong>ib_send_wr_t</strong>\r
1823 </pre>\r
1824 </span><p><strong>DESCRIPTION</strong></p>\r
1825 <span class="DESCRIPTION"><pre>       Information used to submit a work request to the send queue of a queue\r
1826        pair.\r
1827 </pre>\r
1828 </span><p><strong>SYNOPSIS</strong></p>\r
1829 <span class="SYNOPSIS"><pre>typedef struct _ib_send_wr\r
1830 {\r
1831         struct _ib_send_wr* __ptr64     p_next;\r
1832         uint64_t                                        wr_id;\r
1833         <a href="#robo262">ib_wr_type_t</a>                            wr_type;\r
1834         <a href="#robo248">ib_send_opt_t</a>                           send_opt;\r
1835         uint32_t                                        num_ds;\r
1836         <a href="#robo148">ib_local_ds_t</a>* __ptr64          ds_array;\r
1837         <a href="#robo900">ib_net32_t</a>                                      immediate_data;\r
1838 \r
1839         union _send_dgrm\r
1840         {\r
1841                 struct _send_ud\r
1842                 {\r
1843                         <a href="#robo900">ib_net32_t</a>              remote_qp;\r
1844                         <a href="#robo900">ib_net32_t</a>              remote_qkey;\r
1845                         ib_av_handle_t  h_av;\r
1846                         uint16_t                pkey_index;\r
1847                         void* __ptr64   rsvd;\r
1848 \r
1849                 }       ud;\r
1850 \r
1851                 struct _send_raw_ether\r
1852                 {\r
1853                         <a href="#robo899">ib_net16_t</a>              dest_lid;\r
1854                         uint8_t                 path_bits;\r
1855                         uint8_t                 sl;\r
1856                         uint8_t                 max_static_rate;\r
1857                         <a href="#robo899">ib_net16_t</a>              ether_type;\r
1858 \r
1859                 }       raw_ether;\r
1860 \r
1861                 struct _send_raw_ipv6\r
1862                 {\r
1863                         <a href="#robo899">ib_net16_t</a>              dest_lid;\r
1864                         uint8_t                 path_bits;\r
1865                         uint8_t                 sl;\r
1866                         uint8_t                 max_static_rate;\r
1867 \r
1868                 }       raw_ipv6;\r
1869 \r
1870         }       dgrm;\r
1871 \r
1872         struct _send_remote_ops\r
1873         {\r
1874                 uint64_t                        vaddr;\r
1875                 net32_t                         rkey;\r
1876 \r
1877                 <a href="#robo901">ib_net64_t</a>                      atomic1;\r
1878                 <a href="#robo901">ib_net64_t</a>                      atomic2;\r
1879 \r
1880         }       remote_ops;\r
1881 \r
1882 }       <strong>ib_send_wr_t</strong>;\r
1883 </pre>\r
1884 </span><p><strong>FIELDS</strong></p>\r
1885 <span class="FIELDS"><pre>       p_next\r
1886                A pointer used to chain work requests together.  This permits multiple\r
1887                work requests to be posted to a queue pair through a single function\r
1888                call.  This value is set to NULL to mark the end of the chain.\r
1889 \r
1890        wr_id\r
1891                A 64-bit work request identifier that is returned to the consumer\r
1892                as part of the work completion.\r
1893 \r
1894        wr_type\r
1895                The type of work request being submitted to the send queue.\r
1896 \r
1897        send_opt\r
1898                Optional send control parameters.\r
1899 \r
1900        num_ds\r
1901                Number of local data segments specified by this work request.\r
1902 \r
1903        ds_array\r
1904                A reference to an array of local data segments used by the send\r
1905                operation.\r
1906 \r
1907        immediate_data\r
1908                32-bit field sent as part of a message send or RDMA write operation.\r
1909                This field is only valid if the send_opt flag IB_SEND_OPT_IMMEDIATE\r
1910                has been set.\r
1911 \r
1912        dgrm.ud.remote_qp\r
1913                Identifies the destination queue pair of an unreliable datagram send\r
1914                operation.\r
1915 \r
1916        dgrm.ud.remote_qkey\r
1917                The qkey for the destination queue pair.\r
1918 \r
1919        dgrm.ud.h_av\r
1920                An address vector that specifies the path information used to route\r
1921                the outbound datagram to the destination queue pair.\r
1922 \r
1923        dgrm.ud.pkey_index\r
1924                The pkey index for this send work request.  This is valid only\r
1925                for IB_QPT_QP1 and IB_QPT_QP1_ALIAS QP types.  The work request\r
1926                is posted to using this pkey index build the GMP's BTH instead\r
1927                of the QP's pkey.\r
1928 \r
1929        dgrm.ud.rsvd\r
1930                Reserved for use by the Access Layer.\r
1931 \r
1932        dgrm.raw_ether.dest_lid\r
1933                The destination LID that will receive this raw ether send.\r
1934 \r
1935        dgrm.raw_ether.path_bits\r
1936                path bits...\r
1937 \r
1938        dgrm.raw_ether.sl\r
1939                service level...\r
1940 \r
1941        dgrm.raw_ether.max_static_rate\r
1942                static rate...\r
1943 \r
1944        dgrm.raw_ether.ether_type\r
1945                ether type...\r
1946 \r
1947        dgrm.raw_ipv6.dest_lid\r
1948                The destination LID that will receive this raw ether send.\r
1949 \r
1950        dgrm.raw_ipv6.path_bits\r
1951                path bits...\r
1952 \r
1953        dgrm.raw_ipv6.sl\r
1954                service level...\r
1955 \r
1956        dgrm.raw_ipv6.max_static_rate\r
1957                static rate...\r
1958 \r
1959        remote_ops.vaddr\r
1960                The registered virtual memory address of the remote memory to access\r
1961                with an RDMA or atomic operation.\r
1962 \r
1963        remote_ops.rkey\r
1964                The rkey associated with the specified remote vaddr. This data must\r
1965                be presented exactly as obtained from the remote node. No swapping\r
1966                of data must be performed.\r
1967 \r
1968        atomic1\r
1969                The first operand for an atomic operation.\r
1970 \r
1971        atomic2\r
1972                The second operand for an atomic operation.\r
1973 </pre>\r
1974 </span><p><strong>NOTES</strong></p>\r
1975 <span class="NOTES"><pre>       The format of data sent over the fabric is user-defined and is considered\r
1976        opaque to the access layer.  The sole exception to this are MADs posted\r
1977        to a MAD QP service.  MADs are expected to match the format defined by\r
1978        the Infiniband specification and must be in network-byte order when posted\r
1979        to the MAD QP service.\r
1980 </pre>\r
1981 </span><p><strong>SEE ALSO</strong></p>\r
1982 <span class="SEE_ALSO"><pre>       <a href="#robo262">ib_wr_type_t</a>, <a href="#robo148">ib_local_ds_t</a>, <a href="#robo248">ib_send_opt_t</a>\r
1983 </pre>\r
1984 </span>\r
1985 <hr />\r
1986 \r
1987 <h2><a name="robo259">[Definitions]<a name="Access20Layer2fib5fwc5fstatus5ft">\r
1988 Access Layer/ib_wc_status_t</a></h2>\r
1989 \r
1990 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
1991 <p><strong>NAME</strong></p>\r
1992 <span class="NAME"><pre>       <strong>ib_wc_status_t</strong>\r
1993 </pre>\r
1994 </span><p><strong>DESCRIPTION</strong></p>\r
1995 <span class="DESCRIPTION"><pre>       Indicates the status of a completed work request.  These VALUES are\r
1996        returned to the user when retrieving completions.  Note that success is\r
1997        identified as IB_WCS_SUCCESS, which is always zero.\r
1998 </pre>\r
1999 </span><p><strong>SYNOPSIS</strong></p>\r
2000 <span class="SYNOPSIS"><pre>typedef enum _<strong>ib_wc_status_t</strong>\r
2001 {\r
2002         IB_WCS_SUCCESS,\r
2003         IB_WCS_LOCAL_LEN_ERR,\r
2004         IB_WCS_LOCAL_OP_ERR,\r
2005         IB_WCS_LOCAL_PROTECTION_ERR,\r
2006         IB_WCS_WR_FLUSHED_ERR,\r
2007         IB_WCS_MEM_WINDOW_BIND_ERR,\r
2008         IB_WCS_REM_ACCESS_ERR,\r
2009         IB_WCS_REM_OP_ERR,\r
2010         IB_WCS_RNR_RETRY_ERR,\r
2011         IB_WCS_TIMEOUT_RETRY_ERR,\r
2012         IB_WCS_REM_INVALID_REQ_ERR,\r
2013         IB_WCS_BAD_RESP_ERR,\r
2014         IB_WCS_LOCAL_ACCESS_ERR,\r
2015         IB_WCS_GENERAL_ERR,\r
2016         IB_WCS_UNMATCHED_RESPONSE,                      /* InfiniBand Access Layer */\r
2017         IB_WCS_CANCELED,                                        /* InfiniBand Access Layer */\r
2018         IB_WCS_UNKNOWN                                          /* Must be last. */\r
2019 \r
2020 }       <strong>ib_wc_status_t</strong>;\r
2021 </pre>\r
2022 </span><p><strong>VALUES</strong></p>\r
2023 <span class="VALUES"><pre>       IB_WCS_SUCCESS\r
2024                Work request completed successfully.\r
2025 \r
2026        IB_WCS_MAD\r
2027                The completed work request was associated with a managmenet datagram\r
2028                that requires post processing.  The MAD will be returned to the user\r
2029                through a callback once all post processing has completed.\r
2030 \r
2031        IB_WCS_LOCAL_LEN_ERR\r
2032                Generated for a work request posted to the send queue when the\r
2033                total of the data segment lengths exceeds the message length of the\r
2034                channel.  Generated for a work request posted to the receive queue when\r
2035                the total of the data segment lengths is too small for a\r
2036                valid incoming message.\r
2037 \r
2038        IB_WCS_LOCAL_OP_ERR\r
2039                An internal QP consistency error was generated while processing this\r
2040                work request.  This may indicate that the QP was in an incorrect state\r
2041                for the requested operation.\r
2042 \r
2043        IB_WCS_LOCAL_PROTECTION_ERR\r
2044                The data segments of the locally posted work request did not refer to\r
2045                a valid memory region.  The memory may not have been properly\r
2046                registered for the requested operation.\r
2047 \r
2048        IB_WCS_WR_FLUSHED_ERR\r
2049                The work request was flushed from the QP before being completed.\r
2050 \r
2051        IB_WCS_MEM_WINDOW_BIND_ERR\r
2052                A memory window bind operation failed due to insufficient access\r
2053                rights.\r
2054 \r
2055        IB_WCS_REM_ACCESS_ERR,\r
2056                A protection error was detected at the remote node for a RDMA or atomic\r
2057                operation.\r
2058 \r
2059        IB_WCS_REM_OP_ERR,\r
2060                The operation could not be successfully completed at the remote node.\r
2061                This may indicate that the remote QP was in an invalid state or\r
2062                contained an invalid work request.\r
2063 \r
2064        IB_WCS_RNR_RETRY_ERR,\r
2065                The RNR retry count was exceeded while trying to send this message.\r
2066 \r
2067        IB_WCS_TIMEOUT_RETRY_ERR\r
2068                The local transport timeout counter expired while trying to send this\r
2069                message.\r
2070 \r
2071        IB_WCS_REM_INVALID_REQ_ERR,\r
2072                The remote node detected an invalid message on the channel.  This error\r
2073                is usually a result of one of the following:\r
2074                        - The operation was not supported on receive queue.\r
2075                        - There was insufficient buffers to receive a new RDMA request.\r
2076                        - There was insufficient buffers to receive a new atomic operation.\r
2077                        - An RDMA request was larger than 2^31 bytes.\r
2078 \r
2079       IB_WCS_BAD_RESP_ERR,\r
2080               An unexpected transport layer opcode was returned\r
2081               by the responder.\r
2082 \r
2083       IB_WCS_LOCAL_ACCESS_ERR,\r
2084               A protection error occurred on a local data buffer\r
2085               during the processing of a RDMA Write with Immediate Data \r
2086               operation sent from the remote node.\r
2087 \r
2088        IB_WCS_UNMATCHED_RESPONSE\r
2089                A response MAD was received for which there was no matching send.  The\r
2090                send operation may have been canceled by the user or may have timed\r
2091                out.\r
2092 \r
2093        IB_WCS_CANCELED\r
2094                The completed work request was canceled by the user.\r
2095 \r
2096       IB_WCS_GENERAL_ERR,\r
2097               Any other error\r
2098 </pre>\r
2099 </span>\r
2100 <hr />\r
2101 \r
2102 <h2><a name="robo260">[Structures]<a name="Access20Layer2fib5fwc5ft">\r
2103 Access Layer/ib_wc_t</a></h2>\r
2104 \r
2105 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
2106 <p><strong>NAME</strong></p>\r
2107 <span class="NAME"><pre>       <strong>ib_wc_t</strong>\r
2108 </pre>\r
2109 </span><p><strong>DESCRIPTION</strong></p>\r
2110 <span class="DESCRIPTION"><pre>       Work completion information.\r
2111 </pre>\r
2112 </span><p><strong>SYNOPSIS</strong></p>\r
2113 <span class="SYNOPSIS"><pre>typedef struct _ib_wc\r
2114 {\r
2115         struct _ib_wc* __ptr64  p_next;\r
2116         uint64_t                                wr_id;\r
2117         <a href="#robo261">ib_wc_type_t</a>                    wc_type;\r
2118 \r
2119         uint32_t                                length;\r
2120         <a href="#robo259">ib_wc_status_t</a>                  status;\r
2121         uint64_t                                vendor_specific;\r
2122 \r
2123         union _wc_recv\r
2124         {\r
2125                 struct _wc_conn\r
2126                 {\r
2127                         <a href="#robo224">ib_recv_opt_t</a>   recv_opt;\r
2128                         <a href="#robo900">ib_net32_t</a>              immediate_data;\r
2129 \r
2130                 }       conn;\r
2131 \r
2132                 struct _wc_ud\r
2133                 {\r
2134                         <a href="#robo224">ib_recv_opt_t</a>   recv_opt;\r
2135                         <a href="#robo900">ib_net32_t</a>              immediate_data;\r
2136                         <a href="#robo900">ib_net32_t</a>              remote_qp;\r
2137                         uint16_t                pkey_index;\r
2138                         <a href="#robo899">ib_net16_t</a>              remote_lid;\r
2139                         uint8_t                 remote_sl;\r
2140                         uint8_t                 path_bits;\r
2141 \r
2142                 }       ud;\r
2143 \r
2144                 struct _wc_raw_ipv6\r
2145                 {\r
2146                         <a href="#robo899">ib_net16_t</a>              remote_lid;\r
2147                         uint8_t                 remote_sl;\r
2148                         uint8_t                 path_bits;\r
2149 \r
2150                 }       raw_ipv6;\r
2151 \r
2152                 struct _wc_raw_ether\r
2153                 {\r
2154                         <a href="#robo899">ib_net16_t</a>              remote_lid;\r
2155                         uint8_t                 remote_sl;\r
2156                         uint8_t                 path_bits;\r
2157                         <a href="#robo899">ib_net16_t</a>              ether_type;\r
2158 \r
2159                 }       raw_ether;\r
2160 \r
2161         }       recv;\r
2162 \r
2163 }       <strong>ib_wc_t</strong>;\r
2164 </pre>\r
2165 </span><p><strong>FIELDS</strong></p>\r
2166 <span class="FIELDS"><pre>       p_next\r
2167                A pointer used to chain work completions.  This permits multiple\r
2168                work completions to be retrieved from a completion queue through a\r
2169                single function call.  This value is set to NULL to mark the end of\r
2170                the chain.\r
2171 \r
2172        wr_id\r
2173                The 64-bit work request identifier that was specified when posting the\r
2174                work request.\r
2175 \r
2176        wc_type\r
2177                Indicates the type of work completion.\r
2178 \r
2179        length\r
2180                The total length of the data sent or received with the work request.\r
2181 \r
2182        status\r
2183                The result of the work request.\r
2184 \r
2185        vendor_specific\r
2186                HCA vendor specific information returned as part of the completion.\r
2187 \r
2188        recv.conn.recv_opt\r
2189                Indicates optional fields valid as part of a work request that\r
2190                completed on a connected (reliable or unreliable) queue pair.\r
2191 \r
2192        recv.conn.immediate_data\r
2193                32-bit field received as part of an inbound message on a connected\r
2194                queue pair.  This field is only valid if the recv_opt flag\r
2195                IB_RECV_OPT_IMMEDIATE has been set.\r
2196 \r
2197        recv.ud.recv_opt\r
2198                Indicates optional fields valid as part of a work request that\r
2199                completed on an unreliable datagram queue pair.\r
2200 \r
2201        recv.ud.immediate_data\r
2202                32-bit field received as part of an inbound message on a unreliable\r
2203                datagram queue pair.  This field is only valid if the recv_opt flag\r
2204                IB_RECV_OPT_IMMEDIATE has been set.\r
2205 \r
2206        recv.ud.remote_qp\r
2207                Identifies the source queue pair of a received datagram.\r
2208 \r
2209        recv.ud.pkey_index\r
2210                The pkey index of the source queue pair. This is valid only for\r
2211                IB_QPT_QP1 and IB_QPT_QP1_ALIAS QP types.\r
2212 \r
2213        recv.ud.remote_lid\r
2214                The source LID of the received datagram.\r
2215 \r
2216        recv.ud.remote_sl\r
2217                The service level used by the source of the received datagram.\r
2218 \r
2219        recv.ud.path_bits\r
2220                path bits...\r
2221 \r
2222        recv.raw_ipv6.remote_lid\r
2223                The source LID of the received message.\r
2224 \r
2225        recv.raw_ipv6.remote_sl\r
2226                The service level used by the source of the received message.\r
2227 \r
2228        recv.raw_ipv6.path_bits\r
2229                path bits...\r
2230 \r
2231        recv.raw_ether.remote_lid\r
2232                The source LID of the received message.\r
2233 \r
2234        recv.raw_ether.remote_sl\r
2235                The service level used by the source of the received message.\r
2236 \r
2237        recv.raw_ether.path_bits\r
2238                path bits...\r
2239 \r
2240        recv.raw_ether.ether_type\r
2241                ether type...\r
2242 </pre>\r
2243 </span><p><strong>NOTES</strong></p>\r
2244 <span class="NOTES"><pre>       When the work request completes with error, the only values that the\r
2245        consumer can depend on are the wr_id field, and the status of the\r
2246        operation.\r
2247 \r
2248        If the consumer is using the same CQ for completions from more than\r
2249        one type of QP (i.e Reliable Connected, Datagram etc), then the consumer\r
2250        must have additional information to decide what fields of the union are\r
2251        valid.\r
2252 </pre>\r
2253 </span><p><strong>SEE ALSO</strong></p>\r
2254 <span class="SEE_ALSO"><pre>       <a href="#robo261">ib_wc_type_t</a>, <a href="#robo210">ib_qp_type_t</a>, <a href="#robo259">ib_wc_status_t</a>, <a href="#robo224">ib_recv_opt_t</a>\r
2255 </pre>\r
2256 </span>\r
2257 <hr />\r
2258 \r
2259 <h2><a name="robo261">[Definitions]<a name="Access20Layer2fib5fwc5ftype5ft">\r
2260 Access Layer/ib_wc_type_t</a></h2>\r
2261 \r
2262 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2263 <p><strong>NAME</strong></p>\r
2264 <span class="NAME"><pre>       <strong>ib_wc_type_t</strong>\r
2265 </pre>\r
2266 </span><p><strong>DESCRIPTION</strong></p>\r
2267 <span class="DESCRIPTION"><pre>       Indicates the type of work completion.\r
2268 </pre>\r
2269 </span><p><strong>SYNOPSIS</strong></p>\r
2270 <span class="SYNOPSIS"><pre>typedef enum _<strong>ib_wc_type_t</strong>\r
2271 {\r
2272         IB_WC_SEND,\r
2273         IB_WC_RDMA_WRITE,\r
2274         IB_WC_RECV,\r
2275         IB_WC_RDMA_READ,\r
2276         IB_WC_MW_BIND,\r
2277         IB_WC_FETCH_ADD,\r
2278         IB_WC_COMPARE_SWAP,\r
2279         IB_WC_RECV_RDMA_WRITE,\r
2280         IB_WC_UNKNOWN\r
2281 \r
2282 }       <strong>ib_wc_type_t</strong>;\r
2283 </pre>\r
2284 </span>\r
2285 <hr />\r
2286 \r
2287 <h2><a name="robo262">[Definitions]<a name="Access20Layer2fib5fwr5ftype5ft">\r
2288 Access Layer/ib_wr_type_t</a></h2>\r
2289 \r
2290 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2291 <p><strong>NAME</strong></p>\r
2292 <span class="NAME"><pre>       <strong>ib_wr_type_t</strong>\r
2293 </pre>\r
2294 </span><p><strong>DESCRIPTION</strong></p>\r
2295 <span class="DESCRIPTION"><pre>       Identifies the type of work request posted to a queue pair.\r
2296 </pre>\r
2297 </span><p><strong>SYNOPSIS</strong></p>\r
2298 <span class="SYNOPSIS"><pre>typedef enum _<strong>ib_wr_type_t</strong>\r
2299 {\r
2300         WR_SEND = 1,\r
2301         WR_RDMA_WRITE,\r
2302         WR_RDMA_READ,\r
2303         WR_COMPARE_SWAP,\r
2304         WR_FETCH_ADD,\r
2305         WR_UNKNOWN\r
2306 \r
2307 }       <strong>ib_wr_type_t</strong>;\r
2308 </pre>\r
2309 </span>\r
2310 <hr />\r
2311 \r
2312 <h2><a name="robo265">[Structures]<a name="Access20Layer2fmlnx5ffmr5fcreate5ft">\r
2313 Access Layer/mlnx_fmr_create_t</a></h2>\r
2314 \r
2315 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
2316 <p><strong>NAME</strong></p>\r
2317 <span class="NAME"><pre>       <strong>mlnx_fmr_create_t</strong>\r
2318 </pre>\r
2319 </span><p><strong>DESCRIPTION</strong></p>\r
2320 <span class="DESCRIPTION"><pre>       Information required to create a Mellanox fast memory region.\r
2321 </pre>\r
2322 </span><p><strong>SYNOPSIS</strong></p>\r
2323 <span class="SYNOPSIS"><pre>typedef struct _mlnx_fmr_create\r
2324 {\r
2325         int                                     max_pages;\r
2326         int                                     max_maps;\r
2327         uint8_t                         page_size;\r
2328         <a href="#robo45">ib_access_t</a>                     access_ctrl;\r
2329 \r
2330 }       <strong>mlnx_fmr_create_t</strong>;\r
2331 </pre>\r
2332 </span><p><strong>FIELDS</strong></p>\r
2333 <span class="FIELDS"><pre>       max_pages\r
2334                max pages in the region.\r
2335 \r
2336        max_maps\r
2337                max times, the region can be mapped before remapping.\r
2338 \r
2339        page_size\r
2340                log2 of the page size (e.g. 12 for 4KB).\r
2341 \r
2342        access_ctrl\r
2343                Access rights of the registered region.\r
2344 </pre>\r
2345 </span><p><strong>NOTES</strong></p>\r
2346 <span class="NOTES"><pre>       This is a Mellanox specific extension to verbs.\r
2347 </pre>\r
2348 </span><p><strong>SEE ALSO</strong></p>\r
2349 <span class="SEE_ALSO"><pre>       <a href="#robo45">ib_access_t</a>\r
2350 </pre>\r
2351 </span>\r
2352 <hr />\r
2353 \r
2354 <h2><a name="robo714">[Structures]<a name="IBA20Base3a20Constants2fIB5fCLASS5fCAP5fGETSET">\r
2355 IBA Base: Constants/IB_CLASS_CAP_GETSET</a></h2>\r
2356 \r
2357 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
2358 <p><strong>NAME</strong></p>\r
2359 <span class="NAME"><pre>       <strong>IB_CLASS_CAP_GETSET</strong>\r
2360 </pre>\r
2361 </span><p><strong>DESCRIPTION</strong></p>\r
2362 <span class="DESCRIPTION"><pre>       ClassPortInfo CapabilityMask bits.  This bit will be set\r
2363        if the class supports Get(Notice) and Set(Notice) MADs (13.4.8.1).\r
2364 </pre>\r
2365 </span><p><strong>SEE ALSO</strong></p>\r
2366 <span class="SEE_ALSO"><pre>       <a href="#robo844">ib_class_port_info_t</a>, <a href="#robo715">IB_CLASS_CAP_TRAP</a>\r
2367 </pre>\r
2368 </span><p><strong>SOURCE</strong></p>\r
2369 <span class="SOURCE"><pre>#define <strong>IB_CLASS_CAP_GETSET</strong>                                     0x0002\r
2370 </pre>\r
2371 </span>\r
2372 <hr />\r
2373 \r
2374 <h2><a name="robo715">[Structures]<a name="IBA20Base3a20Constants2fIB5fCLASS5fCAP5fTRAP">\r
2375 IBA Base: Constants/IB_CLASS_CAP_TRAP</a></h2>\r
2376 \r
2377 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
2378 <p><strong>NAME</strong></p>\r
2379 <span class="NAME"><pre>       <strong>IB_CLASS_CAP_TRAP</strong>\r
2380 </pre>\r
2381 </span><p><strong>DESCRIPTION</strong></p>\r
2382 <span class="DESCRIPTION"><pre>       ClassPortInfo CapabilityMask bits.  This bit will be set\r
2383        if the class supports Trap() MADs (13.4.8.1).\r
2384 </pre>\r
2385 </span><p><strong>SEE ALSO</strong></p>\r
2386 <span class="SEE_ALSO"><pre>       <a href="#robo844">ib_class_port_info_t</a>, <a href="#robo714">IB_CLASS_CAP_GETSET</a>\r
2387 </pre>\r
2388 </span><p><strong>SOURCE</strong></p>\r
2389 <span class="SOURCE"><pre>#define <strong>IB_CLASS_CAP_TRAP</strong>                                       0x0001\r
2390 </pre>\r
2391 </span>\r
2392 <hr />\r
2393 \r
2394 <h2><a name="robo716">[Structures]<a name="IBA20Base3a20Constants2fIB5fCLASS5fRESP5fTIME5fMASK">\r
2395 IBA Base: Constants/IB_CLASS_RESP_TIME_MASK</a></h2>\r
2396 \r
2397 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_strutures.html#top">index</a>]</p>\r
2398 <p><strong>NAME</strong></p>\r
2399 <span class="NAME"><pre>       <strong>IB_CLASS_RESP_TIME_MASK</strong>\r
2400 </pre>\r
2401 </span><p><strong>DESCRIPTION</strong></p>\r
2402 <span class="DESCRIPTION"><pre>       Mask bits to extract the reponse time value from the\r
2403        resp_time_val field of <a href="#robo844">ib_class_port_info_t</a>.\r
2404 </pre>\r
2405 </span><p><strong>SEE ALSO</strong></p>\r
2406 <span class="SEE_ALSO"><pre>       <a href="#robo844">ib_class_port_info_t</a>\r
2407 </pre>\r
2408 </span><p><strong>SOURCE</strong></p>\r
2409 <span class="SOURCE"><pre>#define <strong>IB_CLASS_RESP_TIME_MASK</strong>                         0x1F\r
2410 </pre>\r
2411 </span>\r
2412 <hr />\r
2413 \r
2414 <h2><a name="robo717">[Definitions]<a name="IBA20Base3a20Constants2fIB5fDEFAULT5fPKEY">\r
2415 IBA Base: Constants/IB_DEFAULT_PKEY</a></h2>\r
2416 \r
2417 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2418 <p><strong>NAME</strong></p>\r
2419 <span class="NAME"><pre>       <strong>IB_DEFAULT_PKEY</strong>\r
2420 </pre>\r
2421 </span><p><strong>DESCRIPTION</strong></p>\r
2422 <span class="DESCRIPTION"><pre>       P_Key value for the default partition.\r
2423 </pre>\r
2424 </span><p><strong>SOURCE</strong></p>\r
2425 <span class="SOURCE"><pre>#define <strong>IB_DEFAULT_PKEY</strong>                                         0xFFFF\r
2426 </pre>\r
2427 </span>\r
2428 <hr />\r
2429 \r
2430 <h2><a name="robo718">[Definitions]<a name="IBA20Base3a20Constants2fIB5fDEFAULT5fSUBNET5fPREFIX">\r
2431 IBA Base: Constants/IB_DEFAULT_SUBNET_PREFIX</a></h2>\r
2432 \r
2433 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2434 <p><strong>NAME</strong></p>\r
2435 <span class="NAME"><pre>       <strong>IB_DEFAULT_SUBNET_PREFIX</strong>\r
2436 </pre>\r
2437 </span><p><strong>DESCRIPTION</strong></p>\r
2438 <span class="DESCRIPTION"><pre>       Default subnet GID prefix.\r
2439 </pre>\r
2440 </span><p><strong>SOURCE</strong></p>\r
2441 <span class="SOURCE"><pre>#define <strong>IB_DEFAULT_SUBNET_PREFIX</strong>                        (<a href="../complib/cl_byteswap_h.html#robo288">CL_HTON64</a>(CL_CONST64(0xFE80000000000000)))\r
2442 </pre>\r
2443 </span>\r
2444 <hr />\r
2445 \r
2446 <h2><a name="robo719">[Definitions]<a name="IBA20Base3a20Constants2fIB5fINVALID5fPORT5fNUM">\r
2447 IBA Base: Constants/IB_INVALID_PORT_NUM</a></h2>\r
2448 \r
2449 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2450 <p><strong>NAME</strong></p>\r
2451 <span class="NAME"><pre>       <strong>IB_INVALID_PORT_NUM</strong>\r
2452 </pre>\r
2453 </span><p><strong>DESCRIPTION</strong></p>\r
2454 <span class="DESCRIPTION"><pre>       Value used to indicate an invalid port number (14.2.5.10).\r
2455 </pre>\r
2456 </span><p><strong>SOURCE</strong></p>\r
2457 <span class="SOURCE"><pre>#define <strong>IB_INVALID_PORT_NUM</strong>                                     0xFF\r
2458 </pre>\r
2459 </span>\r
2460 <hr />\r
2461 \r
2462 <h2><a name="robo720">[Definitions]<a name="IBA20Base3a20Constants2fIB5fLID5fMCAST5fEND">\r
2463 IBA Base: Constants/IB_LID_MCAST_END</a></h2>\r
2464 \r
2465 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2466 <p><strong>NAME</strong></p>\r
2467 <span class="NAME"><pre>       <strong>IB_LID_MCAST_END</strong>\r
2468 </pre>\r
2469 </span><p><strong>DESCRIPTION</strong></p>\r
2470 <span class="DESCRIPTION"><pre>       Highest valid multicast LID value.\r
2471 </pre>\r
2472 </span><p><strong>SOURCE</strong></p>\r
2473 <span class="SOURCE"><pre>#define IB_LID_MCAST_END_HO                                     0xFFFE\r
2474 #define <strong>IB_LID_MCAST_END</strong>                                        (<a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(IB_LID_MCAST_END_HO))\r
2475 </pre>\r
2476 </span>\r
2477 <hr />\r
2478 \r
2479 <h2><a name="robo721">[Definitions]<a name="IBA20Base3a20Constants2fIB5fLID5fMCAST5fSTART">\r
2480 IBA Base: Constants/IB_LID_MCAST_START</a></h2>\r
2481 \r
2482 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2483 <p><strong>NAME</strong></p>\r
2484 <span class="NAME"><pre>       <strong>IB_LID_MCAST_START</strong>\r
2485 </pre>\r
2486 </span><p><strong>DESCRIPTION</strong></p>\r
2487 <span class="DESCRIPTION"><pre>       Lowest valid multicast LID value.\r
2488 </pre>\r
2489 </span><p><strong>SOURCE</strong></p>\r
2490 <span class="SOURCE"><pre>#define IB_LID_MCAST_START_HO                           0xC000\r
2491 #define <strong>IB_LID_MCAST_START</strong>                                      (<a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(IB_LID_MCAST_START_HO))\r
2492 </pre>\r
2493 </span>\r
2494 <hr />\r
2495 \r
2496 <h2><a name="robo722">[Definitions]<a name="IBA20Base3a20Constants2fIB5fLID5fPERMISSIVE">\r
2497 IBA Base: Constants/IB_LID_PERMISSIVE</a></h2>\r
2498 \r
2499 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2500 <p><strong>NAME</strong></p>\r
2501 <span class="NAME"><pre>       <strong>IB_LID_PERMISSIVE</strong>\r
2502 </pre>\r
2503 </span><p><strong>DESCRIPTION</strong></p>\r
2504 <span class="DESCRIPTION"><pre>       Permissive LID\r
2505 </pre>\r
2506 </span><p><strong>SOURCE</strong></p>\r
2507 <span class="SOURCE"><pre>#define <strong>IB_LID_PERMISSIVE</strong>                                       0xFFFF\r
2508 </pre>\r
2509 </span>\r
2510 <hr />\r
2511 \r
2512 <h2><a name="robo723">[Definitions]<a name="IBA20Base3a20Constants2fIB5fLID5fUCAST5fEND">\r
2513 IBA Base: Constants/IB_LID_UCAST_END</a></h2>\r
2514 \r
2515 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2516 <p><strong>NAME</strong></p>\r
2517 <span class="NAME"><pre>       <strong>IB_LID_UCAST_END</strong>\r
2518 </pre>\r
2519 </span><p><strong>DESCRIPTION</strong></p>\r
2520 <span class="DESCRIPTION"><pre>       Highest valid unicast LID value.\r
2521 </pre>\r
2522 </span><p><strong>SOURCE</strong></p>\r
2523 <span class="SOURCE"><pre>#define IB_LID_UCAST_END_HO                                     0xBFFF\r
2524 #define <strong>IB_LID_UCAST_END</strong>                                        (<a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(IB_LID_UCAST_END_HO))\r
2525 </pre>\r
2526 </span>\r
2527 <hr />\r
2528 \r
2529 <h2><a name="robo724">[Definitions]<a name="IBA20Base3a20Constants2fIB5fLID5fUCAST5fSTART">\r
2530 IBA Base: Constants/IB_LID_UCAST_START</a></h2>\r
2531 \r
2532 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2533 <p><strong>NAME</strong></p>\r
2534 <span class="NAME"><pre>       <strong>IB_LID_UCAST_START</strong>\r
2535 </pre>\r
2536 </span><p><strong>DESCRIPTION</strong></p>\r
2537 <span class="DESCRIPTION"><pre>       Lowest valid unicast LID value.\r
2538 </pre>\r
2539 </span><p><strong>SOURCE</strong></p>\r
2540 <span class="SOURCE"><pre>#define IB_LID_UCAST_START_HO                           0x0001\r
2541 #define <strong>IB_LID_UCAST_START</strong>                                      (<a href="../complib/cl_byteswap_h.html#robo285">CL_HTON16</a>(IB_LID_UCAST_START_HO))\r
2542 </pre>\r
2543 </span>\r
2544 <hr />\r
2545 \r
2546 <h2><a name="robo725">[Definitions]<a name="IBA20Base3a20Constants2fib5flink5fstates5ft">\r
2547 IBA Base: Constants/ib_link_states_t</a></h2>\r
2548 \r
2549 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2550 <p><strong>NAME</strong></p>\r
2551 <span class="NAME"><pre>       <strong>ib_link_states_t</strong>\r
2552 </pre>\r
2553 </span><p><strong>DESCRIPTION</strong></p>\r
2554 <span class="DESCRIPTION"><pre>       Defines the link states of a port.\r
2555 </pre>\r
2556 </span><p><strong>SOURCE</strong></p>\r
2557 <span class="SOURCE"><pre>#define IB_LINK_NO_CHANGE 0\r
2558 #define IB_LINK_DOWN      1\r
2559 #define IB_LINK_INIT      2\r
2560 #define IB_LINK_ARMED     3\r
2561 #define IB_LINK_ACTIVE    4\r
2562 #define IB_LINK_ACT_DEFER 5\r
2563 </pre>\r
2564 </span>\r
2565 <hr />\r
2566 \r
2567 <h2><a name="robo726">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fCLASS5fPORT5fINFO">\r
2568 IBA Base: Constants/IB_MAD_ATTR_CLASS_PORT_INFO</a></h2>\r
2569 \r
2570 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2571 <p><strong>NAME</strong></p>\r
2572 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_CLASS_PORT_INFO</strong>\r
2573 </pre>\r
2574 </span><p><strong>DESCRIPTION</strong></p>\r
2575 <span class="DESCRIPTION"><pre>       ClassPortInfo attribute (13.4.8)\r
2576 </pre>\r
2577 </span><p><strong>SOURCE</strong></p>\r
2578 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_CLASS_PORT_INFO</strong>                     (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0001))\r
2579 </pre>\r
2580 </span>\r
2581 <hr />\r
2582 \r
2583 <h2><a name="robo727">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fDIAG5fCODE">\r
2584 IBA Base: Constants/IB_MAD_ATTR_DIAG_CODE</a></h2>\r
2585 \r
2586 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2587 <p><strong>NAME</strong></p>\r
2588 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_DIAG_CODE</strong>\r
2589 </pre>\r
2590 </span><p><strong>DESCRIPTION</strong></p>\r
2591 <span class="DESCRIPTION"><pre>       DiagCode attribute (16.3.3)\r
2592 </pre>\r
2593 </span><p><strong>SOURCE</strong></p>\r
2594 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_DIAG_CODE</strong>                           (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0024))\r
2595 </pre>\r
2596 </span>\r
2597 <hr />\r
2598 \r
2599 <h2><a name="robo728">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fDIAGNOSTIC5fTIMEOUT">\r
2600 IBA Base: Constants/IB_MAD_ATTR_DIAGNOSTIC_TIMEOUT</a></h2>\r
2601 \r
2602 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2603 <p><strong>NAME</strong></p>\r
2604 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_DIAGNOSTIC_TIMEOUT</strong>\r
2605 </pre>\r
2606 </span><p><strong>DESCRIPTION</strong></p>\r
2607 <span class="DESCRIPTION"><pre>       DiagnosticTimeout attribute (16.3.3)\r
2608 </pre>\r
2609 </span><p><strong>SOURCE</strong></p>\r
2610 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_DIAGNOSTIC_TIMEOUT</strong>          (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0020))\r
2611 </pre>\r
2612 </span>\r
2613 <hr />\r
2614 \r
2615 <h2><a name="robo729">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fGUID5fINFO">\r
2616 IBA Base: Constants/IB_MAD_ATTR_GUID_INFO</a></h2>\r
2617 \r
2618 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2619 <p><strong>NAME</strong></p>\r
2620 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_GUID_INFO</strong>\r
2621 </pre>\r
2622 </span><p><strong>DESCRIPTION</strong></p>\r
2623 <span class="DESCRIPTION"><pre>       GUIDInfo attribute (14.2.5)\r
2624 </pre>\r
2625 </span><p><strong>SOURCE</strong></p>\r
2626 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_GUID_INFO</strong>                           (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0014))\r
2627 </pre>\r
2628 </span>\r
2629 <hr />\r
2630 \r
2631 <h2><a name="robo730">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fINFORM5fINFO">\r
2632 IBA Base: Constants/IB_MAD_ATTR_INFORM_INFO</a></h2>\r
2633 \r
2634 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2635 <p><strong>NAME</strong></p>\r
2636 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_INFORM_INFO</strong>\r
2637 </pre>\r
2638 </span><p><strong>DESCRIPTION</strong></p>\r
2639 <span class="DESCRIPTION"><pre>       InformInfo attribute (13.4.8)\r
2640 </pre>\r
2641 </span><p><strong>SOURCE</strong></p>\r
2642 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_INFORM_INFO</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0003))\r
2643 </pre>\r
2644 </span>\r
2645 <hr />\r
2646 \r
2647 <h2><a name="robo731">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fIO5fUNIT5fINFO">\r
2648 IBA Base: Constants/IB_MAD_ATTR_IO_UNIT_INFO</a></h2>\r
2649 \r
2650 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2651 <p><strong>NAME</strong></p>\r
2652 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_IO_UNIT_INFO</strong>\r
2653 </pre>\r
2654 </span><p><strong>DESCRIPTION</strong></p>\r
2655 <span class="DESCRIPTION"><pre>       IOUnitInfo attribute (16.3.3)\r
2656 </pre>\r
2657 </span><p><strong>SOURCE</strong></p>\r
2658 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_IO_UNIT_INFO</strong>                        (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0010))\r
2659 </pre>\r
2660 </span>\r
2661 <hr />\r
2662 \r
2663 <h2><a name="robo732">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fIOC5fPROFILE">\r
2664 IBA Base: Constants/IB_MAD_ATTR_IOC_PROFILE</a></h2>\r
2665 \r
2666 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2667 <p><strong>NAME</strong></p>\r
2668 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_IOC_PROFILE</strong>\r
2669 </pre>\r
2670 </span><p><strong>DESCRIPTION</strong></p>\r
2671 <span class="DESCRIPTION"><pre>       IOControllerProfile attribute (16.3.3)\r
2672 </pre>\r
2673 </span><p><strong>SOURCE</strong></p>\r
2674 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_IOC_PROFILE</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0011))\r
2675 </pre>\r
2676 </span>\r
2677 <hr />\r
2678 \r
2679 <h2><a name="robo733">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fLED5fINFO">\r
2680 IBA Base: Constants/IB_MAD_ATTR_LED_INFO</a></h2>\r
2681 \r
2682 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2683 <p><strong>NAME</strong></p>\r
2684 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_LED_INFO</strong>\r
2685 </pre>\r
2686 </span><p><strong>DESCRIPTION</strong></p>\r
2687 <span class="DESCRIPTION"><pre>       LedInfo attribute (14.2.5)\r
2688 </pre>\r
2689 </span><p><strong>SOURCE</strong></p>\r
2690 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_LED_INFO</strong>                            (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0031))\r
2691 </pre>\r
2692 </span>\r
2693 <hr />\r
2694 \r
2695 <h2><a name="robo734">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fLFT5fRECORD">\r
2696 IBA Base: Constants/IB_MAD_ATTR_LFT_RECORD</a></h2>\r
2697 \r
2698 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2699 <p><strong>NAME</strong></p>\r
2700 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_LFT_RECORD</strong>\r
2701 </pre>\r
2702 </span><p><strong>DESCRIPTION</strong></p>\r
2703 <span class="DESCRIPTION"><pre>       LinearForwardingRecord attribute (15.2.5.6)\r
2704 </pre>\r
2705 </span><p><strong>SOURCE</strong></p>\r
2706 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_LFT_RECORD</strong>                  (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0015))\r
2707 </pre>\r
2708 </span>\r
2709 <hr />\r
2710 \r
2711 <h2><a name="robo735">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fLIN5fFWD5fTBL">\r
2712 IBA Base: Constants/IB_MAD_ATTR_LIN_FWD_TBL</a></h2>\r
2713 \r
2714 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2715 <p><strong>NAME</strong></p>\r
2716 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_LIN_FWD_TBL</strong>\r
2717 </pre>\r
2718 </span><p><strong>DESCRIPTION</strong></p>\r
2719 <span class="DESCRIPTION"><pre>       Switch linear forwarding table\r
2720 </pre>\r
2721 </span><p><strong>SOURCE</strong></p>\r
2722 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_LIN_FWD_TBL</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0019))\r
2723 </pre>\r
2724 </span>\r
2725 <hr />\r
2726 \r
2727 <h2><a name="robo736">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fLINK5fRECORD">\r
2728 IBA Base: Constants/IB_MAD_ATTR_LINK_RECORD</a></h2>\r
2729 \r
2730 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2731 <p><strong>NAME</strong></p>\r
2732 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_LINK_RECORD</strong>\r
2733 </pre>\r
2734 </span><p><strong>DESCRIPTION</strong></p>\r
2735 <span class="DESCRIPTION"><pre>       LinkRecord attribute (15.2.5)\r
2736 </pre>\r
2737 </span><p><strong>SOURCE</strong></p>\r
2738 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_LINK_RECORD</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0020))\r
2739 </pre>\r
2740 </span>\r
2741 <hr />\r
2742 \r
2743 <h2><a name="robo737">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fMCAST5fFWD5fTBL">\r
2744 IBA Base: Constants/IB_MAD_ATTR_MCAST_FWD_TBL</a></h2>\r
2745 \r
2746 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2747 <p><strong>NAME</strong></p>\r
2748 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_MCAST_FWD_TBL</strong>\r
2749 </pre>\r
2750 </span><p><strong>DESCRIPTION</strong></p>\r
2751 <span class="DESCRIPTION"><pre>       Switch multicast forwarding table\r
2752 </pre>\r
2753 </span><p><strong>SOURCE</strong></p>\r
2754 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_MCAST_FWD_TBL</strong>                       (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x001B))\r
2755 </pre>\r
2756 </span>\r
2757 <hr />\r
2758 \r
2759 <h2><a name="robo738">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fMCMEMBER5fRECORD">\r
2760 IBA Base: Constants/IB_MAD_ATTR_MCMEMBER_RECORD</a></h2>\r
2761 \r
2762 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2763 <p><strong>NAME</strong></p>\r
2764 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_MCMEMBER_RECORD</strong>\r
2765 </pre>\r
2766 </span><p><strong>DESCRIPTION</strong></p>\r
2767 <span class="DESCRIPTION"><pre>       MCMemberRecord attribute (15.2.5)\r
2768 </pre>\r
2769 </span><p><strong>SOURCE</strong></p>\r
2770 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_MCMEMBER_RECORD</strong>                     (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0038))\r
2771 </pre>\r
2772 </span>\r
2773 <hr />\r
2774 \r
2775 <h2><a name="robo739">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fMULTIPATH5fRECORD">\r
2776 IBA Base: Constants/IB_MAD_ATTR_MULTIPATH_RECORD</a></h2>\r
2777 \r
2778 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2779 <p><strong>NAME</strong></p>\r
2780 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_MULTIPATH_RECORD</strong>\r
2781 </pre>\r
2782 </span><p><strong>DESCRIPTION</strong></p>\r
2783 <span class="DESCRIPTION"><pre>       MultiPath attribute (15.2.5)\r
2784 </pre>\r
2785 </span><p><strong>SOURCE</strong></p>\r
2786 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_MULTIPATH_RECORD</strong>                    (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x003A))\r
2787 </pre>\r
2788 </span>\r
2789 <hr />\r
2790 \r
2791 <h2><a name="robo740">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fNODE5fDESC">\r
2792 IBA Base: Constants/IB_MAD_ATTR_NODE_DESC</a></h2>\r
2793 \r
2794 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2795 <p><strong>NAME</strong></p>\r
2796 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_NODE_DESC</strong>\r
2797 </pre>\r
2798 </span><p><strong>DESCRIPTION</strong></p>\r
2799 <span class="DESCRIPTION"><pre>       NodeDescription attribute (14.2.5)\r
2800 </pre>\r
2801 </span><p><strong>SOURCE</strong></p>\r
2802 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_NODE_DESC</strong>                           (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0010))\r
2803 </pre>\r
2804 </span>\r
2805 <hr />\r
2806 \r
2807 <h2><a name="robo741">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fNODE5fINFO">\r
2808 IBA Base: Constants/IB_MAD_ATTR_NODE_INFO</a></h2>\r
2809 \r
2810 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2811 <p><strong>NAME</strong></p>\r
2812 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_NODE_INFO</strong>\r
2813 </pre>\r
2814 </span><p><strong>DESCRIPTION</strong></p>\r
2815 <span class="DESCRIPTION"><pre>       NodeInfo attribute (14.2.5)\r
2816 </pre>\r
2817 </span><p><strong>SOURCE</strong></p>\r
2818 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_NODE_INFO</strong>                           (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0011))\r
2819 </pre>\r
2820 </span>\r
2821 <hr />\r
2822 \r
2823 <h2><a name="robo742">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fNODE5fRECORD">\r
2824 IBA Base: Constants/IB_MAD_ATTR_NODE_RECORD</a></h2>\r
2825 \r
2826 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2827 <p><strong>NAME</strong></p>\r
2828 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_NODE_RECORD</strong>\r
2829 </pre>\r
2830 </span><p><strong>DESCRIPTION</strong></p>\r
2831 <span class="DESCRIPTION"><pre>       NodeRecord attribute (15.2.5)\r
2832 </pre>\r
2833 </span><p><strong>SOURCE</strong></p>\r
2834 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_NODE_RECORD</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0011))\r
2835 </pre>\r
2836 </span>\r
2837 <hr />\r
2838 \r
2839 <h2><a name="robo743">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fNOTICE">\r
2840 IBA Base: Constants/IB_MAD_ATTR_NOTICE</a></h2>\r
2841 \r
2842 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2843 <p><strong>NAME</strong></p>\r
2844 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_NOTICE</strong>\r
2845 </pre>\r
2846 </span><p><strong>DESCRIPTION</strong></p>\r
2847 <span class="DESCRIPTION"><pre>       Notice attribute (13.4.8)\r
2848 </pre>\r
2849 </span><p><strong>SOURCE</strong></p>\r
2850 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_NOTICE</strong>                                      (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0002))\r
2851 </pre>\r
2852 </span>\r
2853 <hr />\r
2854 \r
2855 <h2><a name="robo744">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fP5fKEY5fTABLE">\r
2856 IBA Base: Constants/IB_MAD_ATTR_P_KEY_TABLE</a></h2>\r
2857 \r
2858 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2859 <p><strong>NAME</strong></p>\r
2860 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_P_KEY_TABLE</strong>\r
2861 </pre>\r
2862 </span><p><strong>DESCRIPTION</strong></p>\r
2863 <span class="DESCRIPTION"><pre>       PartitionTable attribute (14.2.5)\r
2864 </pre>\r
2865 </span><p><strong>SOURCE</strong></p>\r
2866 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_P_KEY_TABLE</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0016))\r
2867 </pre>\r
2868 </span>\r
2869 <hr />\r
2870 \r
2871 <h2><a name="robo745">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fPATH5fRECORD">\r
2872 IBA Base: Constants/IB_MAD_ATTR_PATH_RECORD</a></h2>\r
2873 \r
2874 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2875 <p><strong>NAME</strong></p>\r
2876 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_PATH_RECORD</strong>\r
2877 </pre>\r
2878 </span><p><strong>DESCRIPTION</strong></p>\r
2879 <span class="DESCRIPTION"><pre>       PathRecord attribute (15.2.5)\r
2880 </pre>\r
2881 </span><p><strong>SOURCE</strong></p>\r
2882 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_PATH_RECORD</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0035))\r
2883 </pre>\r
2884 </span>\r
2885 <hr />\r
2886 \r
2887 <h2><a name="robo746">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fPKEYTBL5fRECORD">\r
2888 IBA Base: Constants/IB_MAD_ATTR_PKEYTBL_RECORD</a></h2>\r
2889 \r
2890 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2891 <p><strong>NAME</strong></p>\r
2892 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_PKEYTBL_RECORD</strong>\r
2893 </pre>\r
2894 </span><p><strong>DESCRIPTION</strong></p>\r
2895 <span class="DESCRIPTION"><pre>       P-KEY table attribute (15.2.5)\r
2896 </pre>\r
2897 </span><p><strong>SOURCE</strong></p>\r
2898 <span class="SOURCE"><pre>#define IB_MAD_ATTR_PKEY_TBL_RECORD                     (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0033))\r
2899 </pre>\r
2900 </span>\r
2901 <hr />\r
2902 \r
2903 <h2><a name="robo747">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fPORT5fCNTRS">\r
2904 IBA Base: Constants/IB_MAD_ATTR_PORT_CNTRS</a></h2>\r
2905 \r
2906 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2907 <p><strong>NAME</strong></p>\r
2908 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_PORT_CNTRS</strong>\r
2909 </pre>\r
2910 </span><p><strong>DESCRIPTION</strong></p>\r
2911 <span class="DESCRIPTION"><pre>       SwitchInfo attribute (16.1.2)\r
2912 </pre>\r
2913 </span><p><strong>SOURCE</strong></p>\r
2914 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_PORT_CNTRS</strong>                          (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0012))\r
2915 </pre>\r
2916 </span>\r
2917 <hr />\r
2918 \r
2919 <h2><a name="robo748">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fPORT5fINFO">\r
2920 IBA Base: Constants/IB_MAD_ATTR_PORT_INFO</a></h2>\r
2921 \r
2922 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2923 <p><strong>NAME</strong></p>\r
2924 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_PORT_INFO</strong>\r
2925 </pre>\r
2926 </span><p><strong>DESCRIPTION</strong></p>\r
2927 <span class="DESCRIPTION"><pre>       PortInfo attribute (14.2.5)\r
2928 </pre>\r
2929 </span><p><strong>SOURCE</strong></p>\r
2930 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_PORT_INFO</strong>                           (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0015))\r
2931 </pre>\r
2932 </span>\r
2933 <hr />\r
2934 \r
2935 <h2><a name="robo749">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fPORT5fSMPL5fCTRL">\r
2936 IBA Base: Constants/IB_MAD_ATTR_PORT_SMPL_CTRL</a></h2>\r
2937 \r
2938 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2939 <p><strong>NAME</strong></p>\r
2940 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_PORT_SMPL_CTRL</strong>\r
2941 </pre>\r
2942 </span><p><strong>DESCRIPTION</strong></p>\r
2943 <span class="DESCRIPTION"><pre>       NodeDescription attribute (16.1.2)\r
2944 </pre>\r
2945 </span><p><strong>SOURCE</strong></p>\r
2946 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_PORT_SMPL_CTRL</strong>                      (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0010))\r
2947 </pre>\r
2948 </span>\r
2949 <hr />\r
2950 \r
2951 <h2><a name="robo750">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fPORT5fSMPL5fRSLT">\r
2952 IBA Base: Constants/IB_MAD_ATTR_PORT_SMPL_RSLT</a></h2>\r
2953 \r
2954 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2955 <p><strong>NAME</strong></p>\r
2956 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_PORT_SMPL_RSLT</strong>\r
2957 </pre>\r
2958 </span><p><strong>DESCRIPTION</strong></p>\r
2959 <span class="DESCRIPTION"><pre>       NodeInfo attribute (16.1.2)\r
2960 </pre>\r
2961 </span><p><strong>SOURCE</strong></p>\r
2962 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_PORT_SMPL_RSLT</strong>                      (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0011))\r
2963 </pre>\r
2964 </span>\r
2965 <hr />\r
2966 \r
2967 <h2><a name="robo751">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fPORTINFO5fRECORD">\r
2968 IBA Base: Constants/IB_MAD_ATTR_PORTINFO_RECORD</a></h2>\r
2969 \r
2970 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2971 <p><strong>NAME</strong></p>\r
2972 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_PORTINFO_RECORD</strong>\r
2973 </pre>\r
2974 </span><p><strong>DESCRIPTION</strong></p>\r
2975 <span class="DESCRIPTION"><pre>       PortInfoRecord attribute (15.2.5)\r
2976 </pre>\r
2977 </span><p><strong>SOURCE</strong></p>\r
2978 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_PORTINFO_RECORD</strong>                     (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0012))\r
2979 </pre>\r
2980 </span>\r
2981 <hr />\r
2982 \r
2983 <h2><a name="robo752">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fPREPARE5fTO5fTEST">\r
2984 IBA Base: Constants/IB_MAD_ATTR_PREPARE_TO_TEST</a></h2>\r
2985 \r
2986 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
2987 <p><strong>NAME</strong></p>\r
2988 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_PREPARE_TO_TEST</strong>\r
2989 </pre>\r
2990 </span><p><strong>DESCRIPTION</strong></p>\r
2991 <span class="DESCRIPTION"><pre>       PrepareToTest attribute (16.3.3)\r
2992 </pre>\r
2993 </span><p><strong>SOURCE</strong></p>\r
2994 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_PREPARE_TO_TEST</strong>                     (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0021))\r
2995 </pre>\r
2996 </span>\r
2997 <hr />\r
2998 \r
2999 <h2><a name="robo753">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fRND5fFWD5fTBL">\r
3000 IBA Base: Constants/IB_MAD_ATTR_RND_FWD_TBL</a></h2>\r
3001 \r
3002 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3003 <p><strong>NAME</strong></p>\r
3004 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_RND_FWD_TBL</strong>\r
3005 </pre>\r
3006 </span><p><strong>DESCRIPTION</strong></p>\r
3007 <span class="DESCRIPTION"><pre>       Switch random forwarding table\r
3008 </pre>\r
3009 </span><p><strong>SOURCE</strong></p>\r
3010 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_RND_FWD_TBL</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x001A))\r
3011 </pre>\r
3012 </span>\r
3013 <hr />\r
3014 \r
3015 <h2><a name="robo754">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fSERVICE5fENTRIES">\r
3016 IBA Base: Constants/IB_MAD_ATTR_SERVICE_ENTRIES</a></h2>\r
3017 \r
3018 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3019 <p><strong>NAME</strong></p>\r
3020 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_SERVICE_ENTRIES</strong>\r
3021 </pre>\r
3022 </span><p><strong>DESCRIPTION</strong></p>\r
3023 <span class="DESCRIPTION"><pre>       ServiceEntries attribute (16.3.3)\r
3024 </pre>\r
3025 </span><p><strong>SOURCE</strong></p>\r
3026 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_SERVICE_ENTRIES</strong>                     (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0012))\r
3027 </pre>\r
3028 </span>\r
3029 <hr />\r
3030 \r
3031 <h2><a name="robo755">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fSERVICE5fRECORD">\r
3032 IBA Base: Constants/IB_MAD_ATTR_SERVICE_RECORD</a></h2>\r
3033 \r
3034 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3035 <p><strong>NAME</strong></p>\r
3036 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_SERVICE_RECORD</strong>\r
3037 </pre>\r
3038 </span><p><strong>DESCRIPTION</strong></p>\r
3039 <span class="DESCRIPTION"><pre>       ServiceRecord attribute (15.2.5)\r
3040 </pre>\r
3041 </span><p><strong>SOURCE</strong></p>\r
3042 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_SERVICE_RECORD</strong>                      (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0031))\r
3043 </pre>\r
3044 </span>\r
3045 <hr />\r
3046 \r
3047 <h2><a name="robo756">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fSLVL5fRECORD">\r
3048 IBA Base: Constants/IB_MAD_ATTR_SLVL_RECORD</a></h2>\r
3049 \r
3050 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3051 <p><strong>NAME</strong></p>\r
3052 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_SLVL_RECORD</strong>\r
3053 </pre>\r
3054 </span><p><strong>DESCRIPTION</strong></p>\r
3055 <span class="DESCRIPTION"><pre>       VSLtoL <a href="../complib/cl_map_h.html#robo17">Map</a> Table attribute (15.2.5)\r
3056 </pre>\r
3057 </span><p><strong>SOURCE</strong></p>\r
3058 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_SLVL_RECORD</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0013))\r
3059 </pre>\r
3060 </span>\r
3061 <hr />\r
3062 \r
3063 <h2><a name="robo757">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fSLVL5fTABLE">\r
3064 IBA Base: Constants/IB_MAD_ATTR_SLVL_TABLE</a></h2>\r
3065 \r
3066 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3067 <p><strong>NAME</strong></p>\r
3068 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_SLVL_TABLE</strong>\r
3069 </pre>\r
3070 </span><p><strong>DESCRIPTION</strong></p>\r
3071 <span class="DESCRIPTION"><pre>       SL VL Mapping Table attribute (14.2.5)\r
3072 </pre>\r
3073 </span><p><strong>SOURCE</strong></p>\r
3074 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_SLVL_TABLE</strong>                          (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0017))\r
3075 </pre>\r
3076 </span>\r
3077 <hr />\r
3078 \r
3079 <h2><a name="robo758">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fSM5fINFO">\r
3080 IBA Base: Constants/IB_MAD_ATTR_SM_INFO</a></h2>\r
3081 \r
3082 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3083 <p><strong>NAME</strong></p>\r
3084 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_SM_INFO</strong>\r
3085 </pre>\r
3086 </span><p><strong>DESCRIPTION</strong></p>\r
3087 <span class="DESCRIPTION"><pre>       SMInfo attribute (14.2.5)\r
3088 </pre>\r
3089 </span><p><strong>SOURCE</strong></p>\r
3090 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_SM_INFO</strong>                                     (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0020))\r
3091 </pre>\r
3092 </span>\r
3093 <hr />\r
3094 \r
3095 <h2><a name="robo759">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fSMINFO5fRECORD">\r
3096 IBA Base: Constants/IB_MAD_ATTR_SMINFO_RECORD</a></h2>\r
3097 \r
3098 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3099 <p><strong>NAME</strong></p>\r
3100 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_SMINFO_RECORD</strong>\r
3101 </pre>\r
3102 </span><p><strong>DESCRIPTION</strong></p>\r
3103 <span class="DESCRIPTION"><pre>       SmInfoRecord attribute (15.2.5)\r
3104 </pre>\r
3105 </span><p><strong>SOURCE</strong></p>\r
3106 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_SMINFO_RECORD</strong>                       (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0018))\r
3107 </pre>\r
3108 </span>\r
3109 <hr />\r
3110 \r
3111 <h2><a name="robo760">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fSVC5fASSOCIATION5fRECORD">\r
3112 IBA Base: Constants/IB_MAD_ATTR_SVC_ASSOCIATION_RECORD</a></h2>\r
3113 \r
3114 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3115 <p><strong>NAME</strong></p>\r
3116 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_SVC_ASSOCIATION_RECORD</strong>\r
3117 </pre>\r
3118 </span><p><strong>DESCRIPTION</strong></p>\r
3119 <span class="DESCRIPTION"><pre>       Service Association attribute (15.2.5)\r
3120 </pre>\r
3121 </span><p><strong>SOURCE</strong></p>\r
3122 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_SVC_ASSOCIATION_RECORD</strong>              (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x003B))\r
3123 </pre>\r
3124 </span>\r
3125 <hr />\r
3126 \r
3127 <h2><a name="robo761">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fSWITCH5fINFO">\r
3128 IBA Base: Constants/IB_MAD_ATTR_SWITCH_INFO</a></h2>\r
3129 \r
3130 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3131 <p><strong>NAME</strong></p>\r
3132 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_SWITCH_INFO</strong>\r
3133 </pre>\r
3134 </span><p><strong>DESCRIPTION</strong></p>\r
3135 <span class="DESCRIPTION"><pre>       SwitchInfo attribute (14.2.5)\r
3136 </pre>\r
3137 </span><p><strong>SOURCE</strong></p>\r
3138 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_SWITCH_INFO</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0012))\r
3139 </pre>\r
3140 </span>\r
3141 <hr />\r
3142 \r
3143 <h2><a name="robo762">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fTEST5fDEVICE5fLOOP">\r
3144 IBA Base: Constants/IB_MAD_ATTR_TEST_DEVICE_LOOP</a></h2>\r
3145 \r
3146 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3147 <p><strong>NAME</strong></p>\r
3148 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_TEST_DEVICE_LOOP</strong>\r
3149 </pre>\r
3150 </span><p><strong>DESCRIPTION</strong></p>\r
3151 <span class="DESCRIPTION"><pre>       TestDeviceLoop attribute (16.3.3)\r
3152 </pre>\r
3153 </span><p><strong>SOURCE</strong></p>\r
3154 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_TEST_DEVICE_LOOP</strong>            (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0023))\r
3155 </pre>\r
3156 </span>\r
3157 <hr />\r
3158 \r
3159 <h2><a name="robo763">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fTEST5fDEVICE5fONCE">\r
3160 IBA Base: Constants/IB_MAD_ATTR_TEST_DEVICE_ONCE</a></h2>\r
3161 \r
3162 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3163 <p><strong>NAME</strong></p>\r
3164 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_TEST_DEVICE_ONCE</strong>\r
3165 </pre>\r
3166 </span><p><strong>DESCRIPTION</strong></p>\r
3167 <span class="DESCRIPTION"><pre>       TestDeviceOnce attribute (16.3.3)\r
3168 </pre>\r
3169 </span><p><strong>SOURCE</strong></p>\r
3170 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_TEST_DEVICE_ONCE</strong>            (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0022))\r
3171 </pre>\r
3172 </span>\r
3173 <hr />\r
3174 \r
3175 <h2><a name="robo764">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fTRACE5fRECORD">\r
3176 IBA Base: Constants/IB_MAD_ATTR_TRACE_RECORD</a></h2>\r
3177 \r
3178 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3179 <p><strong>NAME</strong></p>\r
3180 <span class="NAME"><pre>       IB_MAD_ATTR_MTRACE_RECORD\r
3181 </pre>\r
3182 </span><p><strong>DESCRIPTION</strong></p>\r
3183 <span class="DESCRIPTION"><pre>       TraceRecord attribute (15.2.5)\r
3184 </pre>\r
3185 </span><p><strong>SOURCE</strong></p>\r
3186 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_TRACE_RECORD</strong>                        (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0039))\r
3187 </pre>\r
3188 </span>\r
3189 <hr />\r
3190 \r
3191 <h2><a name="robo765">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fVENDOR5fDIAG">\r
3192 IBA Base: Constants/IB_MAD_ATTR_VENDOR_DIAG</a></h2>\r
3193 \r
3194 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3195 <p><strong>NAME</strong></p>\r
3196 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_VENDOR_DIAG</strong>\r
3197 </pre>\r
3198 </span><p><strong>DESCRIPTION</strong></p>\r
3199 <span class="DESCRIPTION"><pre>       VendorDiag attribute (14.2.5)\r
3200 </pre>\r
3201 </span><p><strong>SOURCE</strong></p>\r
3202 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_VENDOR_DIAG</strong>                         (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0030))\r
3203 </pre>\r
3204 </span>\r
3205 <hr />\r
3206 \r
3207 <h2><a name="robo766">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fVL5fARBITRATION">\r
3208 IBA Base: Constants/IB_MAD_ATTR_VL_ARBITRATION</a></h2>\r
3209 \r
3210 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3211 <p><strong>NAME</strong></p>\r
3212 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_VL_ARBITRATION</strong>\r
3213 </pre>\r
3214 </span><p><strong>DESCRIPTION</strong></p>\r
3215 <span class="DESCRIPTION"><pre>       VL Arbitration Table attribute (14.2.5)\r
3216 </pre>\r
3217 </span><p><strong>SOURCE</strong></p>\r
3218 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_VL_ARBITRATION</strong>                      (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0018))\r
3219 </pre>\r
3220 </span>\r
3221 <hr />\r
3222 \r
3223 <h2><a name="robo767">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fATTR5fVLARB5fRECORD">\r
3224 IBA Base: Constants/IB_MAD_ATTR_VLARB_RECORD</a></h2>\r
3225 \r
3226 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3227 <p><strong>NAME</strong></p>\r
3228 <span class="NAME"><pre>       <strong>IB_MAD_ATTR_VLARB_RECORD</strong>\r
3229 </pre>\r
3230 </span><p><strong>DESCRIPTION</strong></p>\r
3231 <span class="DESCRIPTION"><pre>       VL Arbitration Table attribute (15.2.5)\r
3232 </pre>\r
3233 </span><p><strong>SOURCE</strong></p>\r
3234 <span class="SOURCE"><pre>#define <strong>IB_MAD_ATTR_VLARB_RECORD</strong>                        (<a href="../complib/cl_byteswap_h.html#robo292">CL_NTOH16</a>(0x0036))\r
3235 </pre>\r
3236 </span>\r
3237 <hr />\r
3238 \r
3239 <h2><a name="robo768">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fMETHOD5fGET">\r
3240 IBA Base: Constants/IB_MAD_METHOD_GET</a></h2>\r
3241 \r
3242 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3243 <p><strong>NAME</strong></p>\r
3244 <span class="NAME"><pre>       <strong>IB_MAD_METHOD_GET</strong>\r
3245 </pre>\r
3246 </span><p><strong>DESCRIPTION</strong></p>\r
3247 <span class="DESCRIPTION"><pre>       Get() Method (13.4.5)\r
3248 </pre>\r
3249 </span><p><strong>SOURCE</strong></p>\r
3250 <span class="SOURCE"><pre>#define <strong>IB_MAD_METHOD_GET</strong>                                       0x01\r
3251 </pre>\r
3252 </span>\r
3253 <hr />\r
3254 \r
3255 <h2><a name="robo769">[Definitions]<a name="IBA20Base3a20Constants2fIB5fMAD5fMETHOD5fGET5fRESP">\r
3256 IBA Base: Constants/IB_MAD_METHOD_GET_RESP</a></h2>\r
3257 \r
3258 <p>[<a href="#robo_top_of_doc">top</a>][<a href="../robo_definitions.html#top">index</a>]</p>\r
3259 <p><strong>NAME</strong></p>\r
3260 <span class="NAME"><pre>       <strong>IB_MAD_METHOD_GET_RESP</strong>\r
3261 </pre>\r
3262 </span><p><strong>DESCRIPTION</strong></p>\r
3263 <span class="DESCRIPTION"><pre>       GetResp() Method (13.4.5)\r
3264 </pre>\r
3265 </span><p><strong>SOURCE</strong></p>\r
3266 <span class="SOURCE"><pre>#define <strong>IB_MAD_METHOD_G