Emulex Logo
OneCore™ Storage SDK Release 11.2
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
main.doxygen
Go to the documentation of this file.
1 /**
2  * @file main.doxygen
3  * @brief Overview page for the elxsdkutil
4  *
5 /
6 
7 /** @mainpage Overview
8  *
9  * The Emulex SDK Utility (elxsdkutil)
10  * provides a working example of a management utility, including reference code.
11  * This utility can be used to incorporate similar functionality into an existing product or
12  * to develop a custom utility.
13  * The elxsdkutil is applicable to the Emulex Service Level Interface - 4
14  * (SLI-4) family of products (for example, Emulex LightPulse® LPe16000/LPe16002 16GFC host bus adapters).
15  *
16  * The following figure shows the high-level relationship between the elxsdkutil, a OneCore Storage driver
17  * (kernel space or user space), and an SLI-4 product.
18  *
19  * @image html elxsdkutil_basic.jpg "Relationship of the elxsdkutil with a OneCore Storage Driver"
20  *
21  * For detailed information about the elxsdkutil commands and design, also see
22  * the <i><a href="../../../../../doc/ocs_utilities_manual.pdf" target="_blank">OneCore Storage Utilities Manual</a></i>.
23  *
24  * <h2><a href="elxsdkutil_commands.html">Commands and Their Usage</a></h2>
25  *
26  * <h2><a href="elxsdkutil_structure.html">Main Components of the elxsdkutil Structure</a></h2>
27  * \li <a href="cmd_line_parsing.html">Command Line Parsing and Execution</a>
28  * <ul><li>@ref cmd_handler</li></ul>
29  * \li <a href="dev_enum.html">Device Enumeration</a>
30  * \li <a href="flash_parsing.html">Flash File Parsing (Using “file-info”)</a>
31  * \li <a href="flash_access.html">Flash Access</a>
32  * \li <a href="mbox_cmd.html">Mailbox Command Construction</a>
33  * \li <a href="dev_mgmt.html">Device Management API</a>
34  * <ul><li>@ref mgmt_status</li>
35  * <li>@ref mgmt_config</li>
36  * <li>@ref mgmt_actions</li>
37  * <li>@ref data_formats</li>
38  * <li>@ref list_properties</li>
39  * <li>@ref ident_indiv_prop</li>
40  * <li>@ref data_structures</li></ul>
41  *
42  *
43  * <h2><a href="elxsdkutil_oce11102.html">OCe14000-series Adapters</a></h2>
44  * \li \ref oce11102_fw_download
45  * \li \ref oce11102_fat
46  * \li \ref oce11102_efd
47  * \li \ref oce11102_flash
48  *
49  *
50  * <h2><a href="elxsdkutil_lpe1600x.html">LPe16000-series Adapters</a></h2>
51  * \li \ref lpe1600x_obj_mgmt
52  * \li \ref lpe1600x_obj_groups
53  *
54  */
55 
56 /**
57 * @page elxsdkutil_structure.html Main Components of the elxsdkutil Structure
58 *
59 * \li <a href="cmd_line_parsing.html">Command Line Parsing and Execution</a>
60 * <ul><li>@ref cmd_handler</li></ul>
61 * \li <a href="dev_enum.html">Device Enumeration</a>
62 * \li <a href="flash_parsing.html">Flash File Parsing (Using “file-info”)</a>
63 * \li <a href="flash_access.html">Flash Access</a>
64 * \li <a href="mbox_cmd.html">Mailbox Command Construction</a>
65 * \li <a href="dev_mgmt.html">Device Management API</a>
66 * <ul><li>@ref mgmt_status</li>
67 * <li>@ref mgmt_config</li>
68 * <li>@ref mgmt_actions</li>
69 * <li>@ref data_formats</li>
70 * <li>@ref list_properties</li>
71 * <li>@ref ident_indiv_prop</li>
72 * <li>@ref data_structures</li></ul>
73 *
74 * The following figure shows the structure of the elxsdkutil.
75 *
76 * @image html elxsdkutil_structure.jpg "Structure of the elxsdkutil"
77 *
78 */
79 
80 /**
81 * @page elxsdkutil_commands.html CLI Commands and Their Usage
82 * This section describes the elxsdkutil’s command usage and details.
83 * The elxsdkutil provides a simple command line interface (CLI) to perform
84 * various functions, such as downloading firmware to the flash and retrieving dump files
85 * for debugging purposes.
86 *
87 * @section commands_usage_list List of Commands
88 *
89 * <table class="dashboard">
90 * <tr><th>Command</th><th>Name</th><th>Restrictions</th></tr>
91 * <tr><td>@ref cmd_add_ip "add-ip"</td><td>Add IP</td><td>iSCSI only</td></tr>
92 * <tr><td>@ref cmd_compare "cmp"</td><td>Compare</td><td>&nbsp;</td></tr>
93 * <tr><td>@ref cmd_connection_info "connection-info"</td><td>Connection Information</td><td>Linux and iSCSI only</td></tr>
94 * <tr><td>@ref cmd_create_vport "create-vport"</td><td>Create VPort</td><td>LPe1600x HBAs only</td></tr>
95 * <tr><td>@ref cmd_driver_dump "driver-dump"</td><td>Driver Dump</td><td>&nbsp;</td></tr>
96 * <tr><td>@ref cmd_driver_info "driver-info"</td><td>Driver Information</td><td>&nbsp;</td></tr>
97 * <tr><td>@ref cmd_dump "dump"</td><td>Firmware Dump</td><td>&nbsp;</td></tr>
98 * <tr><td>@ref cmd_dump_to_host "dump-to-host"</td><td>Generate Dump to Host</td><td>LPe1600x HBAs only</td></tr>
99 * <tr><td>@ref cmd_efdc "efdc"</td><td>EFD Capabilities</td><td>OCe11102 adapters only</td></tr>
100 * <tr><td>@ref cmd_file_info "file-info"</td><td>File Information of UFI</td><td>&nbsp;</td></tr>
101 * <tr><td>@ref cmd_gendump "gendump"</td><td>Generate Dump</td><td>LPe1600x HBAs only</td></tr>
102 * <tr><td>@ref cmd_help "help"</td><td>Help</td><td>&nbsp;</td></tr>
103 * <tr><td>@ref cmd_linkcfg_get "linkcfg-get"</td><td>Get Link Configuration</td><td>LPe1600x HBAs only</td></tr>
104 * <tr><td>@ref cmd_linkcfg_set "linkcfg-set"</td><td>Set Link Configuration</td><td>LPe1600x HBAs only</td></tr>
105 * <tr><td>@ref cmd_list "list"</td><td>List Adapters</td><td>&nbsp;</td></tr>
106 * <tr><td>@ref cmd_mgmt_info "mgmt-info"</td><td>Management Information</td><td>&nbsp;</td></tr>
107 * <tr><td>@ref cmd_objenum "objenum"</td><td>Objects Enumerate</td><td>LPe1600x HBAs only</td></tr>
108 * <tr><td>@ref cmd_read "read"</td><td>Read Object File</td><td>LPe1600x HBAs only</td></tr>
109 * <tr><td>@ref cmd_read_link_status "read-link-status"</td><td>Read Link Status</td><td>LPe1600x HBAs only</td></tr>
110 * <tr><td>@ref cmd_read_rev "read-rev"</td><td>Read Adapter Version</td><td>&nbsp;</td></tr>
111 * <tr><td>@ref cmd_read_status "read-status"</td><td>Read Device Status</td><td>LPe1600x HBAs only</td></tr>
112 * <tr><td>@ref cmd_remove_vport "remove-vport"</td><td>Remove VPort</td><td>LPe1600x HBAs only</td></tr>
113 * <tr><td>@ref cmd_set_mac "set-mac"</td><td>Set MAC Address</td><td>iSCSI only</td></tr>
114 * <tr><td>@ref cmd_sfp "sfp"</td><td>SFP EEPROM Data</td><td>&nbsp;</td></tr>
115 * <tr><td>@ref cmd_show_ips "show-ips"</td><td>Show IPs</td><td>iSCSI only</td></tr>
116 * <tr><td>@ref cmd_show_mac "show-mac"</td><td>Show MAC</td><td>iSCSI only</td></tr>
117 * <tr><td>@ref cmd_version "version"</td><td>Version of Program</td><td>&nbsp;</td></tr>
118 * <tr><td>@ref cmd_write "write"</td><td>Write Firmware Image</td><td>&nbsp;</td></tr>
119 * </table>
120 *
121 *
122 *
123 * @section cmd_usage Command Usage
124 *
125 * <div class="util">
126 *
127 * @subsection cmd_syntax Syntax Information
128 * To invoke the CLI and run the elxsdkutil commands, use the following syntax:<br>
129 * <tt>elxsdkutil [command] [option(s)]</tt>
130 
131 * For example, to compare the data in the flash on device 2 to the data in the “myfile” file,
132 * use the following command:<br>
133 * <tt>elxsdkutil cmp -d 2 -f myfile</tt>
134 *
135 * <b>Syntax Notes</b>
136 * <ul><li>Angled brackets, “< >”, indicates a specific value to include with the option.</li>
137 * <li>Square brackets, “[]”, indicate optional parameters.</li></ul>
138 *
139 * @subsection cmd_options Common Command Options
140 *
141 * The Device Number, Filename, and Host options are used by multiple commands.
142 *
143 * @subsubsection dev_number Device Number (--device, -d)
144 * The Device Number option indicates the device number of the adapter’s port(s). The
145 * command line syntax is:<br>
146 * <tt>--device <devicenum></tt><br>
147 * -or-<br>
148 * <tt>-d <devicenum></tt><br>
149 * Where <devicenum> is a non-negative integer (0, 1, 2, and so on).
150 *
151 * @b Note: The default device number is 0. That is, if the devicenum is not specified for a
152 * command, it is assumed that the devicenum is 0.
153 *
154 * @subsubsection filename Filename (--file, -f)
155 * The Filename option indicates the filename for downloads, compares, saving dump
156 * information, and so on. The command line syntax is:<br>
157 * <tt>--file <filename></tt><br>
158 * -or-<br>
159 * <tt>-f <filename></tt><br>
160 *
161 * @subsubsection host_option Host (--host)
162 * The Host option is used with the OneCore Storage user space drivers. When using one
163 * of the user space drivers, this option specifies the host name or IP address of the system
164 * on which the user space driver is running. This option is required on all commands that
165 * access a device. The command line syntax is:<br>
166 * <tt>--host <hostname></tt><br>
167 *
168 * For details on the user space drivers (Uspace ocs_fc_ramd and Uspace ocs_iscsi_ramd),
169 * see the latest <i>OneCore Storage Reference Driver Manual</i>.
170 *
171 *
172 * @subsection cmd_help_menu Help Menu
173 *
174 * See @ref cmd_help
175 * <br><br>
176 * </div>
177 *
178 * @section cmd_details Command Details
179 *
180 *
181 *
182 * <div class="util">
183 *
184 * @subsection cmd_add_ip add-ip (Add IP)
185 * This command adds an additional Internet Protocol (IP) address to an iSCSI adapter.
186 * The IP address (<ip&nbsp;address>) and network mask (<net&nbsp;mask>) values must be in the
187 * same IP version format, either IPv4 (###.###.###.###) or IPv6
188 * (####:####:####:####:####:####:####:####). Also see @ref cmd_show_ips,
189 *
190 * @b Note: This command is applicable to iSCSI adapters only.
191 *
192 * @b Syntax
193 * @n <tt>add-ip <ip&nbsp;address> <net&nbsp;mask> [-d <devicenum>] [--host <hostname>]</tt>
194 *
195 * @b Example
196 * @n Add an additional IP address of 20.0.0.120 and net mask of 255.255.255.0 to device 2:
197 * <tt>elxsdkutil add-ip 20.0.0.120 255.255.255.0 -d 2</tt>
198 *
199 * @ref commands_usage_list "Back to List of Commands"
200 *
201 *
202 *
203 * @subsection cmd_compare cmp (Compare)
204 * This command compares the adapter flash data with the specified file data. The output
205 * indicates that the “Firmware verification was successful!” or the “Firmware verification
206 * failed,” including a list of the mismatched sections.
207 *
208 * @b Syntax
209 * @n <tt>cmp [-d <devicenum>] -f <filename> [--host <hostname>]</tt>
210 *
211 * @b Example
212 * @n Compare the data stored in the device 2 flash to the data in the “myfile” file:
213 * @n <tt>elxsdkutil cmp -d 2 -f myfile</tt>
214 *
215 * @ref commands_usage_list "Back to List of Commands"
216 *
217 *
218 *
219 * @subsection cmd_connection_info connection-info (Connection Information)
220 * If a connection handle is provided, this command reports information on that
221 * Transmission Control Protocol (TCP) connection. If no connection handle is provided,
222 * this command displays a list of open TCP connections.
223 *
224 * @b Note: This command is applicable to Linux and iSCSI only.
225 *
226 * @b Syntax
227 * @n <tt>connection-info [-d <devicenum>] [--host <hostname>]</tt>
228 * @n <tt>[--connection-handle <handle>]</tt>
229 *
230 * @b Example
231 * @n Display information on TCP connections for device 1:
232 * @n <tt>elxsdkutil connection-info -d 1</tt>
233 *
234 * @ref commands_usage_list "Back to List of Commands"
235 *
236 *
237 *
238 * @subsection cmd_create_vport create-vport (Create Vport)
239 * This command creates a virtual port (Vport). The WWNN and WWPN values are in the
240 * format of eight pairs of hexadecimal digits separated by colons (for example,
241 * 10:00:00:00:c9:01:02:03).
242 *
243 * @b Notes
244 * <ul><li>If values for WWNN and WWPN are not specified, then the SLI Port will assign
245 * the appropriate WWNN/WWPN values.
246 * <li>The syntax must include an “--initiator” or “--target,” or both.
247 * <li>This command is applicable to LPe16000/LPe16002 HBAs only
248 * <li>For the OneCore Storage SCST driver (ocs_fc_scst), this elxsdkutil command
249 * has no effect. To create a vport for the ocs_fc_scst driver, see section “3.2.7.1
250 * Creating a Virtual Port (vport)” in the <i>OneCore Storage SCST Driver Guide</i>,
251 * Revision 1.5 or later.</li></ul>
252 *
253 * @b Syntax
254 * @n <tt>create-vport [<WWNN>] [<WWPN>] [--initiator] [--target]</tt>
255 * @n <tt>[-d <devicenum>] [--host <hostname>]</tt>
256 *
257 * @b Example
258 * @n Create a Vport on device 0:
259 * @n <tt>elxsdkutil create-vport 20:00:00:00:c9:01:02:03 10:00:00:00:c9:01:02:03 --target</tt>
260 *
261 * @ref commands_usage_list "Back to List of Commands"
262 *
263 *
264 *
265 * @subsection cmd_driver_dump driver-dump (Driver Dump)
266 * This command dumps the internal driver information.
267 *
268 * @b Options
269 * @n The following options are available for the driver-dump command.
270 * <ul><li>If values for WWNN and WWPN are not specified, then the SLI Port will assign
271 * the appropriate WWNN/WWPN values.
272 * <li>bufsize <buffer&nbsp;size> – specifies the size of the memory buffer used to retrieve
273 * the dump. The <size> is specified in units of bytes in the form of <number>
274 * [k, M]. The default is “4M” (4 megabytes).</li>
275 * <li>saved – dumps the contents from a previously-saved driver dump capture.</li>
276 * <li>clrsaved – clears the previously-saved driver dump capture, so that a new one
277 * driver dump snapshot can be saved.</li></ul>
278 *
279 * Contents of various queue entries can be included in the driver dump by specifying
280 * the following queue options:
281 * <ul><li>cqes – includes the contents of the completion queues entries (CQEs). It is
282 * dumped automatically when no queue options are specified. If other queue
283 * options are specified, then it is not dumped automatically.</li>
284 * <li>eqes – includes the contents of the event queue entries (EQEs).</li>
285 * <li>mqes – includes the contents of the mailbox queues entries (MQEs).</li>
286 * <li>rqes – includes the contents of the receive queues entries (RQEs).</li>
287 * <li>wqes – includes the contents of the work queues entries (WQEs). It is
288 * dumped automatically when no queue options are specified. If other queue
289 * options are specified, then it is not dumped automatically.</li></ul>
290 *
291 * The number of the latest queue entries can be specified using the following option:
292 * <ul><li>qentries <entries&nbsp;to&nbsp;dump> – specifies the number of the most recent queue
293 * entries to dump. To dump the entire queue, <entries&nbsp;to&nbsp;dump> is “-1”. The
294 * default of <entries&nbsp;to&nbsp;dump> is “32”.</li></ul>
295 *
296 * @b Syntax
297 * @n <tt>driver-dump [-d <devicenum>] [--wqes] [--cqes] [--mqes] [--rqes]</tt>
298 * @n <tt>[--eqes] [--qentries <entries&nbsp;to&nbsp;dump>] [--host <hostname>]</tt>
299 * @n <tt>[--bufsize <buffer&nbsp;size>] [--saved] [--clrsaved]</tt>
300 *
301 * @b Examples
302 *
303 * Dump the internal driver information, including the latest 32 queue entries of the CQ
304 * and WQ:
305 * @n <tt>elxsdkutil driver-dump</tt>
306 *
307 * Dump the internal driver information, including all of the CQ and WQ entries:
308 * @n <tt>elxsdkutil driver-dump --qentries -1</tt>
309 *
310 * Dump the internal driver information, including the latest twelve queue entries of the
311 * CQ, EQ, and MQ:
312 * @n <tt>elxsdkutil driver-dump --cqes --eqes --mqes --qentries 12</tt>
313 *
314 * @ref commands_usage_list "Back to List of Commands"
315 *
316 *
317 *
318 * @subsection cmd_driver_info driver-info (Driver Information)
319 * This command displays the parameters used when the driver was loaded (which may
320 * not be the current ones).
321 *
322 * @b Syntax
323 * @n <tt>driver-info [-d <devicenum>] [--host <hostname>]<filename></tt>
324 *
325 * @b Example
326 * @n Retrieve the module parameter values for a Linux target loaded with the ocs_fc_ramd
327 * driver:
328 * @n <tt>elxsdkutil driver-info</tt>
329 *
330 * @b Output<br>
331 * <tt>ramdisc_size: 50m<br></tt>
332 * <tt>ramdisc_blocksize: 512<br></tt>
333 * <tt>num_luns: 1<br></tt>
334 * <tt>initiator: false<br></tt>
335 * <tt>target: true<br></tt>
336 * <tt>logmask: 0x0<br></tt>
337 * <tt>ctrlmask: 0x0<br></tt>
338 * <tt>wwn_bump: 0<br></tt>
339 * <tt>topology: 0<br></tt>
340 * <tt>speed: 0<br></tt>
341 * <tt>p_type: 0<br></tt>
342 * <tt>holdoff_link_online: false<br></tt>
343 * <tt>enable_hlm: false<br></tt>
344 * <tt>hlm_group_size: 8<br></tt>
345 * <tt>logdest: 1<br></tt>
346 * <tt>ramlog_size: 1048576<br></tt>
347 * <tt>hal_war_version: 0<br></tt>
348 * <tt>num_scsi_ios: 8192<br></tt>
349 * <tt>dif_separate: false<br></tt>
350 *
351 * @ref commands_usage_list "Back to List of Commands"
352 *
353 *
354 *
355 * @subsection cmd_dump dump (Firmware Dump)
356 * For LPe16000/LPe16002 HBAs, this command retrieves the dump.bin file for
357 * debugging purposes. The dump.bin file is generated by the @ref cmd_gendump command.
358 *
359 * For OCe11102 adapters, this command includes four dump options:
360 * <ul><li>ecd – this Emulex core dump (ECD) option uses the XE4310R template to
361 * retrieve the XE4310R controller core dump diagnostic information from a device
362 * to a specified file. This is the default option.</li>
363 * <li>ecdtest – this option creates an ECD test file that is used to verify the core dump
364 * operation. The result is a binary file that needs to be verified by Emulex.</li>
365 * <li>efd – this option retrieves enhanced failure dump (EFD) data from the adapter
366 * to a specified file.</li>
367 * <li>fat – this option retrieves failure analysis tool (FAT) data from the adapter to a
368 * specified file.</li></ul>
369 *
370 * @b Syntax
371 * @n <tt>dump [--fat | --efd | --ecd | --ecdtest ] [-d <devicenum>]</tt>
372 * @n <tt>[--host <hostname>] [-f <filename>]</tt>
373 *
374 * @b Examples
375 *
376 * For LPe16000/LPe16002 HBAs, the following example retrieves the dump.bin file from
377 * device 2 and saves it to the myfile file:
378 * @n <tt>elxsdkutil dump --ecd -f myfile</tt>
379 *
380 * For the OCe11102 adapters, the following examples show some of the command’s
381 * various options:
382 * <ul><li>Use the ECD option from device 0, and save the data to the “myfile” file:</li>
383 * @n <tt>elxsdkutil dump --ecd -f myfile</tt>
384 * @n Or since “ecd” is the default, you can simply use:
385 * @n <tt>elxsdkutil dump -f myfile</tt></ul>
386 *
387 * <ul><li>Save the EFD data of device 1 to the myfile file:</li>
388 * @n <tt>elxsdkutil dump --efd -d 1 -f myfile</tt></ul>
389 *
390 * <ul><li>Save the FAT data of device 3 to the myfile file:</li>
391 * @n <tt>elxsdkutil dump --fat -d 3 -f myfile</tt></ul>
392 *
393 * @ref commands_usage_list "Back to List of Commands"
394 *
395 *
396 *
397 * @subsection cmd_dump_to_host dump-to-host (Generate Dump to Host)
398 * Enables a device to generate a dump and transfer it directly to host memory. This
399 * command combines the “gendump” and “dump” commands into a single operation. If
400 * a filename is not specified, the dump is written to the dump.bin file.
401 *
402 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
403 *
404 * @b Syntax
405 * @n <tt>dump-to-host [-d <devicenum>] [--host <hostname>] [-f <filename>]</tt>
406 *
407 * @b Example
408 * @n The following example generates a dump from device 2, saves it to the “myfile” file,
409 * and transfers this file to the host:
410 * @n <tt>elxsdkutil dump-to-host -d 2 -f myfile</tt>
411 *
412 * @ref commands_usage_list "Back to List of Commands"
413 *
414 *
415 *
416 * @subsection cmd_efdc efdc (EFD Capabilities)
417 * This command reports the EFD capabilities (firmware log settings) from the adapter.
418 *
419 * @b Note: This command is applicable to OCe11102 adapters only
420 *
421 * @b Syntax
422 * @n <tt>efdc [-d <devicenum>] [--host <hostname>]</tt>
423 *
424 * @b Example
425 * @n Display the EFD capabilities of device 0:
426 * @n <tt>elxsdkutil efdc</tt>
427 *
428 * @ref commands_usage_list "Back to List of Commands"
429 *
430 *
431 *
432 * @subsection cmd_file_info file-info (File Information of UFI)
433 * This command provides information for an Emulex unified firmware image (.UFI),
434 * including the file signature, the version, file length, and other information.
435 *
436 * @b Syntax
437 * @n <tt>file-info -f <filename></tt>
438 *
439 * @b Example
440 * @n Display the UFI file and image information for the myfile file:
441 * @n <tt>elxsdkutil file-info -f myfile</tt>
442 *
443 * @ref commands_usage_list "Back to List of Commands"
444 *
445 *
446 *
447 * @subsection cmd_gendump gendump (Generate Dump)
448 * This command instructs the adapter to generate a dump file. The dump file is stored on
449 * the adapter as the /dbg/dump.bin object. Once the dump file has been generated, it
450 * can be retrieved from the adapter using the dump command
451 * (@ref cmd_dump). Also see @ref cmd_dump_to_host.
452 *
453 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
454 *
455 * @b Syntax
456 * @n <tt>gendump</tt>
457 *
458 * @b Example
459 * @n Generate a dump:
460 * @n <tt>elxsdkutil gendump</tt>
461 *
462 * @ref commands_usage_list "Back to List of Commands"
463 *
464 *
465 *
466 * @subsection cmd_help help
467 * This command displays a list of the elxsdkutil commands with several examples.
468 * To get the syntax and usage for a particular command, add the command name.
469 *
470 * @b Syntax
471 * @n <tt>help [<command>]</tt>
472 *
473 * @b Example
474 * @n List the usage information for connection-info:
475 * @n <tt>elxsdkutil help connection-info</tt>
476 *
477 * @b Output
478 * @n <tt>Command: connection-info [-d <devicenum>] [--host <hostname>]<br></tt>
479 * <tt>[--connection-handle <handle>]<br><br></tt>
480 * <tt>Usage: If a connection handle is provided, reports information on<br></tt>
481 * <tt>that connection. If no connection handle is provided, displays a<br></tt>
482 * <tt>list of open connections.</tt>
483 *
484 * @ref commands_usage_list "Back to List of Commands"
485 *
486 *
487 *
488 * @subsection cmd_linkcfg_get linkcfg-get (Get Link Configuration)
489 * This command displays the link configuration. Also see @ref cmd_linkcfg_set.
490 *
491 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
492 *
493 * @b Syntax
494 * @n <tt>linkcfg-get [-d <devicenum>] [--host <hostname>]</tt>
495 *
496 * @b Example
497 * @n Display the link configuration on device 0:
498 * @n <tt>elxsdkutil linkcfg-get</tt>
499 *
500 * @b Output
501 * @n <tt>Link config: FC_2x16G</tt>
502 *
503 * @ref commands_usage_list "Back to List of Commands"
504 *
505 *
506 *
507 * @subsection cmd_linkcfg_set linkcfg-set (Set Link Configuration)
508 * This command sets the Fibre Channel and Ethernet link configuration.
509 *
510 * The possible <link&nbsp;config> values are:
511 * <ul><li>FC_2x16G</li>
512 * <li>FC_4x1G</li>
513 * <li>FC_4x8G</li>
514 * <li>ETH_1x40G</li>
515 * <li>ETH_2x10G</li>
516 * <li>ETH_2x10G_FC_2x8G</li>
517 * <li>ETH_4x10G</li></ul>
518 * Also see @ref cmd_linkcfg_get.
519 *
520 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
521 *
522 * @b Syntax
523 * @n <tt>linkcfg-set [-d device] [--host <hostname>] --linkcfg <link&nbsp;config></tt>
524 *
525 * @b Example
526 * @n Set the link configuration on device 1 for two FC ports running at 16G each:
527 * @n <tt>elxsdkutil link-set -d 1 --linkcfg FC_2x16G</tt>
528 *
529 * @ref commands_usage_list "Back to List of Commands"
530 *
531 *
532 *
533 * @subsection cmd_list list (List Adapters)
534 * This command displays a list of the Emulex adapters installed in the system. This
535 * includes the model number, number of ports, firmware version, and serial number.
536 *
537 * @b Syntax
538 * @n <tt>list [--host <hostname>]</tt>
539 *
540 * @b Example
541 * @n List the Emulex adapters that are installed in a system:
542 * @n <tt>elxsdkutil list</tt>
543 *
544 * @ref commands_usage_list "Back to List of Commands"
545 *
546 *
547 *
548 * @subsection cmd_mgmt_info mgmt-info (Management Information)
549 * This command uses the management API (as described in @ref dev_mgmt)
550 * to retrieve all available status values, configuration
551 * values, and actions from the driver. For status, each property is displayed along with its
552 * current value. For actions, only the name of the action is displayed.
553 *
554 * @b Syntax
555 * @n <tt>mgmt-info [-d <devicenum>] [--host <hostname>]</tt>
556 *
557 * @ref commands_usage_list "Back to List of Commands"
558 *
559 *
560 *
561 * @subsection cmd_objenum objenum (Objects Enumerate)
562 * This command enumerates the device file system objects.
563 *
564 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
565 *
566 * @b Syntax
567 * @n <tt>objenum [-d <devicenum>] [--host <hostname>]</tt>
568 *
569 * @b Example
570 * @n List device file system objects on device 0:
571 * @n <tt>elxsdkutil objenum</tt>
572 *
573 * @ref commands_usage_list "Back to List of Commands"
574 *
575 *
576 *
577 * @subsection cmd_read read (Read Object File)
578 * This command reads an object file from an adapter’s flash.
579 *
580 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
581 *
582 * @b Syntax
583 * @n <tt>read [objname] [-d <devicenum>] [-f <filename>] [--host <hostname>]</tt>
584 *
585 * @b Example
586 * @n Read firmware dump file from device 0 into the “myfile” file:
587 * @n <tt>elxsdkutil read /dbg/dump.bin –d 0 –f myfile</tt>
588 *
589 * @ref commands_usage_list "Back to List of Commands"
590 *
591 *
592 *
593 * @subsection cmd_read_link_status read-link-status (Read Link Status)
594 * This command reads the status of the link. Using the “--clof” option clears the overflow
595 * flags and the “--clrc” option clears all counters.
596 *
597 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
598 *
599 * @b Syntax
600 * @n <tt>read-link-status [-d <devicenum>] [--clof] [--clrc]</tt>
601 *
602 * @b Example
603 * @n Read the status of the link for device 0:
604 * @n <tt>elxsdkutil read-link-status</tt>
605 *
606 * @ref commands_usage_list "Back to List of Commands"
607 *
608 *
609 *
610 * @subsection cmd_read_rev read-rev (Read Adapter Version)
611 * This command reads the version of the adapter.
612 *
613 * @b Syntax
614 * @n <tt>read-rev [-d <devicenum>] [--host <hostname>]</tt>
615 *
616 * @b Example
617 * @n Read the version of device 2:
618 * @n <tt>elxsdkutil read-rev -d 2</tt>
619 *
620 * @ref commands_usage_list "Back to List of Commands"
621 *
622 *
623 *
624 * @subsection cmd_read_status read-status (Read Device Status)
625 * This command reads the status of the device. Using the “--cc” option clears the
626 * counters.
627 *
628 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
629 *
630 * @b Syntax
631 * @n <tt>read-status [-d <devicenum>] [--cc] [--host <hostname>]</tt>
632 *
633 * @b Example
634 * @n Read the status of device 0:
635 * @n <tt>elxsdkutil read-status</tt>
636 *
637 * @ref commands_usage_list "Back to List of Commands"
638 *
639 *
640 *
641 * @subsection cmd_remove_vport remove-vport (Remove Vport)
642 * This command removes a Vport. The WWNN and WWPN values are in a format of
643 * eight pairs of hexadecimal digits separated by colons (for example,
644 * 10:00:00:00:c9:01:02:03).
645 *
646 * If the WWNN and WWPN values were assigned by the SLI Port (for example, through
647 * @ref cmd_create_vport), these values can be found in
648 * /var/log/messages.
649 *
650 * @b Note: This command is applicable to LPe16000/LPe16002 HBAs only.
651 *
652 * @b Syntax
653 * @n <tt>remove-vport <WWNN> <WWPN> [-d <devicenum>] [--host <hostname>]</tt>
654 *
655 * @b Example
656 * @n Remove a Vport from device 0:
657 * @n <tt>elxsdkutil remove 20:00:00:00:c9:01:02:03 10:00:00:00:c9:01:02:03</tt>
658 *
659 * @ref commands_usage_list "Back to List of Commands"
660 *
661 *
662 *
663 * @subsection cmd_set_mac set-mac (Set MAC Address)
664 * This command “soft” assigns a MAC address to a device. The MAC address is in a
665 * format of six pairs of hexadecimal digits separated colons, for example,
666 * 01:23:45:67:89:ab.
667 *
668 * @b Note: This command is applicable to iSCSI only.
669 *
670 * @b Syntax
671 * @n <tt>set-mac ##:##:##:##:##:## [-d <devicenum>]</tt>
672 *
673 * @b Example
674 * @n Assign a MAC address to device 0:
675 * @n <tt>elxsdkutil set-mac 00:00:C9:D5:6A:A3</tt>
676 *
677 * @ref commands_usage_list "Back to List of Commands"
678 *
679 *
680 *
681 * @subsection cmd_sfp sfp (SFP EEPROM Data)
682 * This command retrieves the SFP serial EEPROM data. For OCe11102 adapters, the SFP
683 * pages A0 and A2 are returned. For LPe16000/LPe16002 HBAs, the SFP page A0 is
684 * returned.
685 *
686 * @b Syntax
687 * @n <tt>sfp [-d <devicenum>] [--host <hostname>]</tt>
688 *
689 * @b Example
690 * @n Print hexadecimal diagnostic information from the transceiver (device 0):
691 * @n <tt>elxsdkutil sfp -d 0</tt>
692 *
693 * @ref commands_usage_list "Back to List of Commands"
694 *
695 *
696 *
697 * @subsection cmd_show_ips show-ips (Show IPs)
698 * Show the IP addresses, in IPv4 or IPv6 format, that are assigned to an iSCSI adapter.
699 * The <ip&nbsp;version&nbsp;4/6> value is either 4 (IPv4) or 6 (IPv6). Also see
700 * @ref cmd_add_ip.
701 *
702 * @b Note: This command is applicable to iSCSI only.
703 *
704 * @b Syntax
705 * @n <tt>show-ips <ip&nbsp;version&nbsp;4/6> [-d <devicenum>] [--host <hostname>]</tt>
706 *
707 * @b Example
708 * @n The following sequence first shows the current IPs in IPv4 format on device 2; adds an
709 * additional IP address; and then shows the IPs again:
710 * @n <tt>elxsdkutil show-ip 4 -d 2</tt>
711 * @n <tt>IP addresses on device 2:</tt>
712 * @n <tt>20.0.0.108 255.255.255.0</tt>
713 *
714 * <tt>elxsdkutil add-ip 20.0.0.120 255.255.255.0 -d 2</tt>
715 *
716 * <tt>elxsdkutil show-ips 4 -d 2</tt>
717 * @n <tt>IP addresses on device 2:</tt>
718 * @n <tt>20.0.0.108 255.255.255.0</tt>
719 * @n <tt>20.0.0.120 255.255.255.0</tt>
720 *
721 * @ref commands_usage_list "Back to List of Commands"
722 *
723 *
724 *
725 * @subsection cmd_show_mac show-mac (Show MAC)
726 * This command displays the MAC address of a device.
727 *
728 * @b Note: This command is applicable to iSCSI only.
729 *
730 * @b Syntax
731 * @n <tt>show-mac [-d <devicenum>] [--host <hostname>]</tt>
732 *
733 * @b Example
734 * @n Display the MAC address of device 3:
735 * @n <tt>elxsdkutil show-mac -d 3</tt>
736 *
737 * @ref commands_usage_list "Back to List of Commands"
738 *
739 *
740 *
741 * @subsection cmd_version version (Version of Program)
742 * This command prints the program version and exits.
743 *
744 * @b Syntax
745 * @n <tt>version [--host <hostname>]</tt>
746 *
747 * @b Example
748 * @n Print the program version:
749 * @n <tt>elxsdkutil version</tt>
750 *
751 * @ref commands_usage_list "Back to List of Commands"
752 *
753 *
754 *
755 * @subsection cmd_write write (Write Firmware Image)
756 * This command downloads firmware from a file to the adapter’s flash.
757 *
758 * @b Syntax
759 * @n <tt>write -f <filename> [-d <devicenum>] [--host <hostname>]</tt>
760 *
761 * @b Example
762 * @n Write firmware image to device 0:
763 * @n <tt>elxsdkutil write -f myfile -d 0</tt>
764 *
765 * @ref commands_usage_list "Back to List of Commands"
766 *
767 *
768 *
769 * <br><br>
770 * </div>
771 *
772 */