1fcf3ce44SJohn Forte /*
2fcf3ce44SJohn Forte  * CDDL HEADER START
3fcf3ce44SJohn Forte  *
4fcf3ce44SJohn Forte  * The contents of this file are subject to the terms of the
5fcf3ce44SJohn Forte  * Common Development and Distribution License (the "License").
6fcf3ce44SJohn Forte  * You may not use this file except in compliance with the License.
7fcf3ce44SJohn Forte  *
88f23e9faSHans Rosenfeld  * You can obtain a copy of the license at
98f23e9faSHans Rosenfeld  * http://www.opensource.org/licenses/cddl1.txt.
10fcf3ce44SJohn Forte  * See the License for the specific language governing permissions
11fcf3ce44SJohn Forte  * and limitations under the License.
12fcf3ce44SJohn Forte  *
13fcf3ce44SJohn Forte  * When distributing Covered Code, include this CDDL HEADER in each
14fcf3ce44SJohn Forte  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15fcf3ce44SJohn Forte  * If applicable, add the following below this CDDL HEADER, with the
16fcf3ce44SJohn Forte  * fields enclosed by brackets "[]" replaced with your own identifying
17fcf3ce44SJohn Forte  * information: Portions Copyright [yyyy] [name of copyright owner]
18fcf3ce44SJohn Forte  *
19fcf3ce44SJohn Forte  * CDDL HEADER END
20fcf3ce44SJohn Forte  */
21fcf3ce44SJohn Forte 
22fcf3ce44SJohn Forte /*
238f23e9faSHans Rosenfeld  * Copyright (c) 2004-2012 Emulex. All rights reserved.
2482527734SSukumar Swaminathan  * Use is subject to license terms.
25fcf3ce44SJohn Forte  */
26fcf3ce44SJohn Forte 
27fcf3ce44SJohn Forte #ifndef _EMLXS_CONFIG_H
28fcf3ce44SJohn Forte #define	_EMLXS_CONFIG_H
29fcf3ce44SJohn Forte 
30fcf3ce44SJohn Forte #ifdef	__cplusplus
31fcf3ce44SJohn Forte extern "C" {
32fcf3ce44SJohn Forte #endif
33fcf3ce44SJohn Forte 
34fcf3ce44SJohn Forte #define	EMLXS_CFG_STR_SIZE	32
35fcf3ce44SJohn Forte #define	EMLXS_CFG_HELP_SIZE	80
36fcf3ce44SJohn Forte 
37291a2b48SSukumar Swaminathan typedef struct emlxs_config
38291a2b48SSukumar Swaminathan {
39291a2b48SSukumar Swaminathan 	char		string[EMLXS_CFG_STR_SIZE];
40291a2b48SSukumar Swaminathan 	uint32_t	low;
41291a2b48SSukumar Swaminathan 	uint32_t	hi;
42291a2b48SSukumar Swaminathan 	uint32_t	def;
43291a2b48SSukumar Swaminathan 	uint32_t	current;
44291a2b48SSukumar Swaminathan 	uint32_t	flags;
45291a2b48SSukumar Swaminathan 	char		help[EMLXS_CFG_HELP_SIZE];
46fcf3ce44SJohn Forte } emlxs_config_t;
47fcf3ce44SJohn Forte 
48fcf3ce44SJohn Forte 
49291a2b48SSukumar Swaminathan typedef enum emlxs_cfg_parm
50291a2b48SSukumar Swaminathan {
51fcf3ce44SJohn Forte 	CFG_CONSOLE_NOTICES,	/* console-notices */
52fcf3ce44SJohn Forte 	CFG_CONSOLE_WARNINGS,	/* console-warnings */
53fcf3ce44SJohn Forte 	CFG_CONSOLE_ERRORS,	/* console-errors */
54fcf3ce44SJohn Forte 	CFG_CONSOLE_DEBUGS,	/* console-debugs (hidden) */
55fcf3ce44SJohn Forte 	CFG_LOG_NOTICES,	/* log-notices */
56fcf3ce44SJohn Forte 	CFG_LOG_WARNINGS,	/* log-warnings */
57fcf3ce44SJohn Forte 	CFG_LOG_ERRORS,		/* log-errors */
58fcf3ce44SJohn Forte 	CFG_LOG_DEBUGS,		/* log-debugs (hidden) */
59fcf3ce44SJohn Forte 	CFG_NUM_IOCBS,		/* num-iocbs */
60fcf3ce44SJohn Forte 	CFG_MAX_XFER_SIZE,	/* max-xfer-size */
61fcf3ce44SJohn Forte 	CFG_UB_BUFS,		/* ub-bufs */
62fcf3ce44SJohn Forte 	CFG_NETWORK_ON,		/* network-on */
63fcf3ce44SJohn Forte 	CFG_ACK0,		/* ack0 */
64fcf3ce44SJohn Forte 	CFG_TOPOLOGY,		/* topology */
65fcf3ce44SJohn Forte 	CFG_LINK_SPEED,		/* link-speed */
66fcf3ce44SJohn Forte 	CFG_NUM_NODES,		/* num-nodes */
67fcf3ce44SJohn Forte 	CFG_CR_DELAY,		/* cr-delay */
68fcf3ce44SJohn Forte 	CFG_CR_COUNT,		/* cr-count */
69fcf3ce44SJohn Forte 	CFG_ASSIGN_ALPA,	/* assign-alpa */
70fcf3ce44SJohn Forte 	CFG_ADISC_SUPPORT,	/* adisc-support */
71fcf3ce44SJohn Forte 	CFG_PM_SUPPORT,		/* pm-support */
72fcf3ce44SJohn Forte 	CFG_PM_IDLE,		/* pm-idle */
73fcf3ce44SJohn Forte 	CFG_FW_CHECK,		/* fw-check (hidden) */
74fcf3ce44SJohn Forte 	CFG_TRI_REQUIRED,	/* tri-required (hidden) */
75fcf3ce44SJohn Forte 	CFG_DISC_TIMEOUT,	/* discovery-timeout (hidden) */
76fcf3ce44SJohn Forte 	CFG_LINKUP_TIMEOUT,	/* linkup-timeout (hidden) */
77fcf3ce44SJohn Forte 	CFG_LINKUP_DELAY,	/* linkup-delay */
78291a2b48SSukumar Swaminathan 	CFG_OFFLINE_TIMEOUT,	/* offline-timeout (hidden) */
79fcf3ce44SJohn Forte 	CFG_LILP_ENABLE,	/* enable-lilp (hidden) */
80fcf3ce44SJohn Forte 	CFG_PCI_MAX_READ,	/* pci-max-read */
81fcf3ce44SJohn Forte 	CFG_HEARTBEAT_ENABLE,	/* heartbeat-enable (hidden) */
82fcf3ce44SJohn Forte 	CFG_RESET_ENABLE,	/* reset-enable (hidden) */
83fcf3ce44SJohn Forte 	CFG_TIMEOUT_ENABLE,	/* timeout-enable (hidden) */
84fcf3ce44SJohn Forte 	CFG_NUM_IOTAGS,		/* num-iotags (hidden) */
858f23e9faSHans Rosenfeld #ifdef NODE_THROTTLE_SUPPORT
868f23e9faSHans Rosenfeld 	CFG_TGT_DEPTH,		/* target-depth */
878f23e9faSHans Rosenfeld #endif /* NODE_THROTTLE_SUPPORT */
888f23e9faSHans Rosenfeld 
898f23e9faSHans Rosenfeld 	CFG_MEM_DYNAMIC,	/* mem-dynamic (hidden) */
90fcf3ce44SJohn Forte 
91291a2b48SSukumar Swaminathan #ifdef FMA_SUPPORT
9282527734SSukumar Swaminathan 	CFG_FM_CAPS,		/* fm-capable (hidden) */
93291a2b48SSukumar Swaminathan #endif	/* FMA_SUPPORT */
94291a2b48SSukumar Swaminathan 
9582527734SSukumar Swaminathan 
9682527734SSukumar Swaminathan #ifdef MAX_RRDY_SUPPORT
97fcf3ce44SJohn Forte 	CFG_MAX_RRDY,		/* max-rrdy (hidden) */
9882527734SSukumar Swaminathan #endif	/* MAX_RRDY_SUPPORT */
99fcf3ce44SJohn Forte 
100fcf3ce44SJohn Forte #ifdef MSI_SUPPORT
101fcf3ce44SJohn Forte 	CFG_MSI_MODE,		/* msi-mode (hidden) */
102fcf3ce44SJohn Forte #endif	/* MSI_SUPPORT */
103fcf3ce44SJohn Forte 
104fcf3ce44SJohn Forte 	CFG_SLI_MODE,		/* sli-mode (hidden) */
105fcf3ce44SJohn Forte 	CFG_NPIV_ENABLE,	/* enable-npiv */
106fcf3ce44SJohn Forte 	CFG_VPORT_RESTRICTED,	/* vport-restrict-login */
1078f23e9faSHans Rosenfeld 	CFG_NPIV_DELAY,		/* enable-npiv-delay (hidden) */
108fcf3ce44SJohn Forte 
109fcf3ce44SJohn Forte #ifdef DHCHAP_SUPPORT
110291a2b48SSukumar Swaminathan 	CFG_AUTH_ENABLE, 	/* enable-auth */
111fcf3ce44SJohn Forte 	CFG_AUTH_E2E,		/* auth-e2e */
112fcf3ce44SJohn Forte 	CFG_AUTH_NPIV,		/* auth-npiv (hidden) */
113291a2b48SSukumar Swaminathan 	CFG_AUTH_TMO,    	/* auth-tmo (hidden) */
114291a2b48SSukumar Swaminathan 	CFG_AUTH_MODE,   	/* auth-mode (hidden) */
115291a2b48SSukumar Swaminathan 	CFG_AUTH_BIDIR, 	/* auth-bidir (hidden) */
116291a2b48SSukumar Swaminathan 	CFG_AUTH_TYPE,   	/* auth-type (hidden) */
117291a2b48SSukumar Swaminathan 	CFG_AUTH_HASH,   	/* auth-hash (hidden) */
118291a2b48SSukumar Swaminathan 	CFG_AUTH_GROUP,  	/* auth-group (hidden) */
119291a2b48SSukumar Swaminathan 	CFG_AUTH_INTERVAL,  	/* auth-interval (hidden) */
120fcf3ce44SJohn Forte #endif	/* DHCHAP_SUPPORT */
121fcf3ce44SJohn Forte 
122fcf3ce44SJohn Forte #ifdef SFCT_SUPPORT
1238f23e9faSHans Rosenfeld 	CFG_DTM_ENABLE,		/* enable-dtm (hidden) */
124291a2b48SSukumar Swaminathan 	CFG_TARGET_MODE,	/* target-mode */
1258f23e9faSHans Rosenfeld 	CFG_VPORT_MODE_MASK,	/* vport-mode-mask (hidden) */
126bce54adfSSukumar Swaminathan 	CFG_FCT_QDEPTH,		/* fct-queue-depth */
127291a2b48SSukumar Swaminathan #endif /* SFCT_SUPPORT */
12882527734SSukumar Swaminathan 	CFG_NUM_WQ,		/* num-wq (hidden) */
12982527734SSukumar Swaminathan 	CFG_PERSIST_LINKDOWN,	/* persist-linkdown */
13082527734SSukumar Swaminathan 	CFG_ENABLE_PATCH,	/* enable-patch (hidden) */
13182527734SSukumar Swaminathan 	CFG_FAST_TGT_RESET,	/* fast-tgt-reset (hidden) */
13282527734SSukumar Swaminathan 	CFG_FAST_TGT_RESET_TMR,	/* fast-tgt-reset-timer (hidden) */
133fcf3ce44SJohn Forte 
134a9800bebSGarrett D'Amore 	CFG_FCF_SOLICIT_DELAY,	/* fcf-solicit-delay (hidden) */
135a9800bebSGarrett D'Amore 	CFG_FCF_FAILOVER_DELAY,	/* fcf-failover-delay (hidden) */
136a9800bebSGarrett D'Amore 	CFG_FCF_RESOLICIT_DELAY, /* fcf-resolicit-delay (hidden) */
1378f23e9faSHans Rosenfeld 	CFG_FCF_RPI_IDLE_TIMEOUT, /* fcf-rpi-idle-timeout (hidden) */
1388f23e9faSHans Rosenfeld 
1398f23e9faSHans Rosenfeld 	CFG_DELAY_DISCOVERY,	/* delay-discovery (hidden) */
1408f23e9faSHans Rosenfeld 	CFG_RQD_MODE,		/* rqd (hidden) */
1418f23e9faSHans Rosenfeld 	CFG_PERF_HINT,		/* perf-hint (hidden) */
142a9800bebSGarrett D'Amore 
143fcf3ce44SJohn Forte 	NUM_CFG_PARAM
144fcf3ce44SJohn Forte 
145fcf3ce44SJohn Forte } emlxs_cfg_parm_t;
146fcf3ce44SJohn Forte 
147291a2b48SSukumar Swaminathan #define	PARM_HIDDEN	0x80000000
148fcf3ce44SJohn Forte 
149fcf3ce44SJohn Forte 
150fcf3ce44SJohn Forte 
151fcf3ce44SJohn Forte #ifdef DEF_ICFG
152fcf3ce44SJohn Forte 
153fcf3ce44SJohn Forte /*
154291a2b48SSukumar Swaminathan  * The entries in this array must be in the exact order
155291a2b48SSukumar Swaminathan  * defined in emlxs_cfg_parm_t
156fcf3ce44SJohn Forte  */
157291a2b48SSukumar Swaminathan emlxs_config_t  emlxs_cfg[] = {
158fcf3ce44SJohn Forte 	/* CFG_CONSOLE_NOTICES */
159fcf3ce44SJohn Forte 	{"console-notices",
160fcf3ce44SJohn Forte 		0, 0xffffffff, 0, 0,
161fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HEX,
162fcf3ce44SJohn Forte 	"Verbose mask for notice messages to the console."},
163fcf3ce44SJohn Forte 
164fcf3ce44SJohn Forte 	/* CFG_CONSOLE_WARNINGS */
165fcf3ce44SJohn Forte 	{"console-warnings",
166fcf3ce44SJohn Forte 		0, 0xffffffff, 0, 0,
167fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HEX,
168fcf3ce44SJohn Forte 	"Verbose mask for warning messages to the console."},
169fcf3ce44SJohn Forte 
170fcf3ce44SJohn Forte 	/* CFG_CONSOLE_ERRORS */
171fcf3ce44SJohn Forte 	{"console-errors",
172fcf3ce44SJohn Forte 		0, 0xffffffff, 0, 0,
173fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HEX,
174fcf3ce44SJohn Forte 	"Verbose mask for error messages to the console."},
175fcf3ce44SJohn Forte 
176fcf3ce44SJohn Forte 	/* CFG_CONSOLE_DEBUGS */
177fcf3ce44SJohn Forte 	{"console-debugs",
178fcf3ce44SJohn Forte 		0, 0xffffffff, 0, 0,
179fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HEX | PARM_HIDDEN,
180fcf3ce44SJohn Forte 	"Verbose mask for debugging messages to the console."},
181fcf3ce44SJohn Forte 
182fcf3ce44SJohn Forte 	/* CFG_LOG_NOTICES */
183fcf3ce44SJohn Forte 	{"log-notices",
184fcf3ce44SJohn Forte 		0, 0xffffffff, 0xffffffff, 0,
185fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HEX,
186fcf3ce44SJohn Forte 	"Verbose mask for notice messages to the messages file."},
187fcf3ce44SJohn Forte 
188fcf3ce44SJohn Forte 	/* CFG_LOG_WARNINGS */
189fcf3ce44SJohn Forte 	{"log-warnings",
190fcf3ce44SJohn Forte 		0, 0xffffffff, 0xffffffff, 0,
191fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HEX,
192fcf3ce44SJohn Forte 	"Verbose mask for warning messages to the messages file."},
193fcf3ce44SJohn Forte 
194fcf3ce44SJohn Forte 	/* CFG_LOG_ERRORS */
195fcf3ce44SJohn Forte 	{"log-errors",
196fcf3ce44SJohn Forte 		0, 0xffffffff, 0xffffffff, 0,
197fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HEX,
198fcf3ce44SJohn Forte 	"Verbose mask for error messages to the messages file."},
199fcf3ce44SJohn Forte 
200fcf3ce44SJohn Forte 	/* CFG_LOG_DEBUGS */
201fcf3ce44SJohn Forte 	{"log-debugs",
202fcf3ce44SJohn Forte 		0, 0xffffffff, 0, 0,
203fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HEX | PARM_HIDDEN,
204fcf3ce44SJohn Forte 	"Verbose mask for debugging messages to the messages file."},
205fcf3ce44SJohn Forte 
206fcf3ce44SJohn Forte 
207fcf3ce44SJohn Forte 	/* CFG_NUM_IOCBS */
208fcf3ce44SJohn Forte 	{"num-iocbs",
209fcf3ce44SJohn Forte 		128, 10240, 1024, 0,
210fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET,
211fcf3ce44SJohn Forte 	"Number of IOCB buffers the driver should allocate."},
212fcf3ce44SJohn Forte 
213fcf3ce44SJohn Forte 	/* CFG_MAX_XFER_SIZE */
214fcf3ce44SJohn Forte 	{"max-xfer-size",
215fcf3ce44SJohn Forte 		131072, 1388544, 339968, 0,
216fcf3ce44SJohn Forte 		0,
217fcf3ce44SJohn Forte 	"Sets maximum bytes per IO the driver can transfer."},
218fcf3ce44SJohn Forte 
219fcf3ce44SJohn Forte 	/* CFG_UB_BUFS */
220fcf3ce44SJohn Forte 	{"ub-bufs",
221fcf3ce44SJohn Forte 		40, 16320, 1000, 0,
222fcf3ce44SJohn Forte 		0,
223fcf3ce44SJohn Forte 	"Number of unsolicited buffers the driver should allocate."},
224fcf3ce44SJohn Forte 
225fcf3ce44SJohn Forte 	/* IP specific parameters */
226fcf3ce44SJohn Forte 
227fcf3ce44SJohn Forte 	/* CFG_NETWORK_ON */
228fcf3ce44SJohn Forte 	{"network-on",
229fcf3ce44SJohn Forte 		0, 1, 1, 0,
230fcf3ce44SJohn Forte 		PARM_BOOLEAN,
2318f23e9faSHans Rosenfeld 	"Enable IP processing. "
2328f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
233fcf3ce44SJohn Forte 
234fcf3ce44SJohn Forte 	/* Fibre Channel specific parameters */
235fcf3ce44SJohn Forte 
236fcf3ce44SJohn Forte 	/* CFG_ACK0 */
237fcf3ce44SJohn Forte 	{"ack0",
238fcf3ce44SJohn Forte 		0, 1, 0, 0,
239fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_BOOLEAN,
2408f23e9faSHans Rosenfeld 	"Enables ACK0 support. "
2418f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
242fcf3ce44SJohn Forte 
243fcf3ce44SJohn Forte 	/* CFG_TOPOLOGY */
244fcf3ce44SJohn Forte 	{"topology",
245fcf3ce44SJohn Forte 		0, 6, 0, 0,
246fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK,
247fcf3ce44SJohn Forte 	"Select Fibre Channel topology. "
248fcf3ce44SJohn Forte 		"[0=Loop->PTP, 2=PTP, 4=Loop, 6=PTP->Loop]"},
249fcf3ce44SJohn Forte 
250fcf3ce44SJohn Forte 	/* CFG_LINK_SPEED */
251fcf3ce44SJohn Forte 	{"link-speed",
2528f23e9faSHans Rosenfeld 		0, 16, 0, 0,
253fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK,
2548f23e9faSHans Rosenfeld 	"Select link speed. "
255*e2d1a434SCarsten Grzemba 		"[0=Auto, 1=1Gb, 2=2Gb, 4=4Gb, 8=8Gb, 16=16Gb]"},
256fcf3ce44SJohn Forte 
257fcf3ce44SJohn Forte 	/* CFG_NUM_NODES */
258fcf3ce44SJohn Forte 	{"num-nodes",
259fcf3ce44SJohn Forte 		0, 4096, 0, 0,
260fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET,
2618f23e9faSHans Rosenfeld 	"Number of remote FC nodes the driver will support. "
2628f23e9faSHans Rosenfeld 		"[0=no_limit, else must be >2]"},
263fcf3ce44SJohn Forte 
264fcf3ce44SJohn Forte 	/* CFG_CR_DELAY */
265fcf3ce44SJohn Forte 	{"cr-delay",
266fcf3ce44SJohn Forte 		0, 63, 0, 0,
267fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK,
268fcf3ce44SJohn Forte 	"A count of milliseconds after which "
269fcf3ce44SJohn Forte 		"an interrupt response is generated"},
270fcf3ce44SJohn Forte 
271fcf3ce44SJohn Forte 	/* CFG_CR_COUNT */
272fcf3ce44SJohn Forte 	{"cr-count",
273fcf3ce44SJohn Forte 		1, 255, 1, 0,
274fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK,
275291a2b48SSukumar Swaminathan 	"A count of I/O completions after "
276291a2b48SSukumar Swaminathan 		"which an interrupt response is generated"},
277fcf3ce44SJohn Forte 
278fcf3ce44SJohn Forte 	/* CFG_ASSIGN_ALPA */
279fcf3ce44SJohn Forte 	{"assign-alpa",
280fcf3ce44SJohn Forte 		0, 0xef, 0, 0,
281fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_HEX,
282fcf3ce44SJohn Forte 	"Assigns a preferred ALPA to the port. Only used in Loop topology."},
283fcf3ce44SJohn Forte 
284fcf3ce44SJohn Forte 	/* CFG_ADISC_SUPPORT */
285fcf3ce44SJohn Forte 	{"adisc-support",
286fcf3ce44SJohn Forte 		0, 2, 1, 0,
287fcf3ce44SJohn Forte 		PARM_DYNAMIC,
288fcf3ce44SJohn Forte 	"Sets the Fibre Channel ADISC login support level. "
289fcf3ce44SJohn Forte 		"[0=None, 1=Partial, 2=Full]"},
290fcf3ce44SJohn Forte 
291fcf3ce44SJohn Forte 	/* CFG_PM_SUPPORT */
292fcf3ce44SJohn Forte 	{"pm-support",
293fcf3ce44SJohn Forte 		0, 1, 0, 0,
294fcf3ce44SJohn Forte 		PARM_BOOLEAN,
2958f23e9faSHans Rosenfeld 	"Enables power management support. "
2968f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
297fcf3ce44SJohn Forte 
298fcf3ce44SJohn Forte 	/* CFG_PM_IDLE */
299fcf3ce44SJohn Forte 	{"pm-idle",
300fcf3ce44SJohn Forte 		0, 3600, 300, 0,
301fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HIDDEN,
302fcf3ce44SJohn Forte 	"Sets power management idle timeout value (seconds)."},
303fcf3ce44SJohn Forte 
304fcf3ce44SJohn Forte 	/* CFG_FW_CHECK */
305fcf3ce44SJohn Forte 	{"fw-check",
3066a573d82SSukumar Swaminathan 		0, 7, 1, 0,
3076a573d82SSukumar Swaminathan 		PARM_DYNAMIC_RESET | PARM_HEX | PARM_HIDDEN,
3086a573d82SSukumar Swaminathan 	"Enables firmware revision checking. "
3096a573d82SSukumar Swaminathan 		"[0=Off 1=Sun-only 2=All 4=kern-update]"},
310fcf3ce44SJohn Forte 
311fcf3ce44SJohn Forte 	/* CFG_TRI_REQUIRED */
312fcf3ce44SJohn Forte 	{"tri-required",
313fcf3ce44SJohn Forte 		0, 1, 0, 0,
314fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_BOOLEAN | PARM_HIDDEN,
315fcf3ce44SJohn Forte 	"Requires Task Retry Id support by a remote device "
316fcf3ce44SJohn Forte 		"for FCP-2 error recovery."},
317fcf3ce44SJohn Forte 
318fcf3ce44SJohn Forte 	/* CFG_DISC_TIMEOUT */
319fcf3ce44SJohn Forte 	{"discovery-timeout",
320fcf3ce44SJohn Forte 		0, 600, 25, 0,
321fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HIDDEN,
322fcf3ce44SJohn Forte 	"Sets the discovery timeout period (seconds) "
323fcf3ce44SJohn Forte 		"for managing FCP-2 devices."},
324fcf3ce44SJohn Forte 
325fcf3ce44SJohn Forte 	/* CFG_LINKUP_TIMEOUT */
326fcf3ce44SJohn Forte 	{"linkup-timeout",
327fcf3ce44SJohn Forte 		0, 10, 2, 0,
328fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HIDDEN,
329fcf3ce44SJohn Forte 	"Sets the linkup timeout period (seconds)."},
330fcf3ce44SJohn Forte 
331fcf3ce44SJohn Forte 	/* CFG_LINKUP_DELAY */
332fcf3ce44SJohn Forte 	{"linkup-delay",
333fcf3ce44SJohn Forte 		0, 60, 10, 0,
334fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET,
335fcf3ce44SJohn Forte 	"Sets the driver wait period (seconds) "
336fcf3ce44SJohn Forte 		"for a linkup after initialization."},
337fcf3ce44SJohn Forte 
338291a2b48SSukumar Swaminathan 	/* CFG_OFFLINE_TIMEOUT */
339291a2b48SSukumar Swaminathan 	{"offline-timeout",
340291a2b48SSukumar Swaminathan 		0, 600, 45, 0,
341291a2b48SSukumar Swaminathan 		PARM_DYNAMIC | PARM_HIDDEN,
342291a2b48SSukumar Swaminathan 	"Sets the offline timeout period (seconds)."},
343291a2b48SSukumar Swaminathan 
344fcf3ce44SJohn Forte 	/* CFG_LILP_ENABLE */
345fcf3ce44SJohn Forte 	{"enable-lilp",
346fcf3ce44SJohn Forte 		0, 1, 1, 0,
347fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET | PARM_BOOLEAN | PARM_HIDDEN,
3488f23e9faSHans Rosenfeld 	"Enables LIRP/LILP support in the driver. "
3498f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
350fcf3ce44SJohn Forte 
351fcf3ce44SJohn Forte 	/* CFG_PCI_MAX_READ */
352fcf3ce44SJohn Forte 	{"pci-max-read",
353fcf3ce44SJohn Forte 		512, 4096, 2048, 0,
354fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET,
3558f23e9faSHans Rosenfeld 	"Sets the PCI-X max memory read byte count. "
3568f23e9faSHans Rosenfeld 		"[512,1024,2048 or 4096]"},
357fcf3ce44SJohn Forte 
358fcf3ce44SJohn Forte 	/* CFG_HEARTBEAT_ENABLE */
359fcf3ce44SJohn Forte 	{"heartbeat-enable",
360fcf3ce44SJohn Forte 		0, 1, 1, 0,
361fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_BOOLEAN | PARM_HIDDEN,
362fcf3ce44SJohn Forte 	"Enables driver's mailbox heartbeat to the adapter. "
363fcf3ce44SJohn Forte 		"[0=Disabled, 1=Enabled]"},
364fcf3ce44SJohn Forte 
365fcf3ce44SJohn Forte 	/* CFG_RESET_ENABLE */
366fcf3ce44SJohn Forte 	{"reset-enable",
367fcf3ce44SJohn Forte 		0, 1, 1, 0,
368fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_BOOLEAN | PARM_HIDDEN,
369fcf3ce44SJohn Forte 	"Enables driver's ability to reset the adapter. "
370fcf3ce44SJohn Forte 		"[0=Disabled, 1=Enabled]"},
371fcf3ce44SJohn Forte 
372fcf3ce44SJohn Forte 	/* CFG_TIMEOUT_ENABLE */
373fcf3ce44SJohn Forte 	{"timeout-enable",
374fcf3ce44SJohn Forte 		0, 1, 1, 0,
375fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_BOOLEAN | PARM_HIDDEN,
376fcf3ce44SJohn Forte 	"Enables driver's ability to timeout commands. "
377fcf3ce44SJohn Forte 		"[0=Disabled, 1=Enabled]"},
378fcf3ce44SJohn Forte 
379fcf3ce44SJohn Forte 	/* CFG_NUM_IOTAGS */
380fcf3ce44SJohn Forte 	{"num-iotags",
38182527734SSukumar Swaminathan 		0, 4096, 0, 0,
382fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET | PARM_HIDDEN,
38382527734SSukumar Swaminathan 	"Sets number of outstanding IO's. "
38482527734SSukumar Swaminathan 		"[0=max determined by type of HBA]"},
385fcf3ce44SJohn Forte 
3868f23e9faSHans Rosenfeld #ifdef NODE_THROTTLE_SUPPORT
3878f23e9faSHans Rosenfeld 	/* CFG_TGT_DEPTH */
3888f23e9faSHans Rosenfeld 	{"target-depth",
3898f23e9faSHans Rosenfeld 		0, MAX_NODE_THROTTLE, 512, 0,
3908f23e9faSHans Rosenfeld 		PARM_DYNAMIC_LINK,
3918f23e9faSHans Rosenfeld 	"Sets remote FCP target queue depth. "
3928f23e9faSHans Rosenfeld 		"[0=no_limit, N=Maximum active IO's]"},
3938f23e9faSHans Rosenfeld #endif /* NODE_THROTTLE_SUPPORT */
3948f23e9faSHans Rosenfeld 
3958f23e9faSHans Rosenfeld 	/* CFG_MEM_DYNAMIC */
3968f23e9faSHans Rosenfeld 	{"mem-dynamic",
3978f23e9faSHans Rosenfeld 		0, 86400, 180, 0,
3988f23e9faSHans Rosenfeld 		PARM_DYNAMIC_RESET | PARM_HIDDEN,
3998f23e9faSHans Rosenfeld 	"Enables dynamic memory pools "
4008f23e9faSHans Rosenfeld 		"[0=Disabled, 1-N=Enabled w/cleaning every N secs]"},
4018f23e9faSHans Rosenfeld 
402291a2b48SSukumar Swaminathan #ifdef FMA_SUPPORT
403291a2b48SSukumar Swaminathan 	/* CFG_FM_CAPS */
404bb63f56eSSukumar Swaminathan 	{"fm-capable",
405fe199829SSukumar Swaminathan 		0, 0xF, 0xB, 0,
40682527734SSukumar Swaminathan 		PARM_HEX | PARM_HIDDEN,
4078f23e9faSHans Rosenfeld 	"Sets FMA capabilities. "
4088f23e9faSHans Rosenfeld 		"[bit 3:errcb, 2:dmachk, 1:accchk, 0:ereport]"},
409291a2b48SSukumar Swaminathan #endif	/* FMA_SUPPORT */
410fcf3ce44SJohn Forte 
41182527734SSukumar Swaminathan 
41282527734SSukumar Swaminathan #ifdef MAX_RRDY_SUPPORT
413fcf3ce44SJohn Forte 	/* CFG_MAX_RRDY */
414fcf3ce44SJohn Forte 	{"max-rrdy",
415fcf3ce44SJohn Forte 		0, 255, 2, 0,
416fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET | PARM_HIDDEN,
417fcf3ce44SJohn Forte 	"Sets maximum number RRDY's for the adapter on private loop."},
41882527734SSukumar Swaminathan #endif	/* MAX_RRDY_SUPPORT */
419fcf3ce44SJohn Forte 
420fcf3ce44SJohn Forte #ifdef MSI_SUPPORT
421fcf3ce44SJohn Forte 	/* CFG_MSI_MODE */
422fcf3ce44SJohn Forte 	{"msi-mode",
423fcf3ce44SJohn Forte 		0, 3, 3, 0,
424fcf3ce44SJohn Forte 		PARM_HIDDEN,
425fcf3ce44SJohn Forte 	"Sets the default MSI mode in driver. "
426fcf3ce44SJohn Forte 		"[0=Off 1=Single-MSI 2=Multi-MSI 3=Auto]"},
427fcf3ce44SJohn Forte #endif	/* MSI_SUPPORT */
428fcf3ce44SJohn Forte 
429fcf3ce44SJohn Forte 	/* CFG_SLI_MODE */
430fcf3ce44SJohn Forte 	{"sli-mode",
43182527734SSukumar Swaminathan 		0, 4, 0, 0,
432fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET | PARM_HIDDEN,
433fcf3ce44SJohn Forte 	"Sets default SLI mode. "
43482527734SSukumar Swaminathan 		"[0=Auto, 2=SLI2-remove all vports first, 3=SLI3, 4=SLI4]"},
435fcf3ce44SJohn Forte 
436fcf3ce44SJohn Forte 	/* CFG_NPIV_ENABLE */
437fcf3ce44SJohn Forte 	{"enable-npiv",
438fcf3ce44SJohn Forte 		0, 1, 0, 0,
439fcf3ce44SJohn Forte 		PARM_DYNAMIC_RESET | PARM_BOOLEAN,
440fcf3ce44SJohn Forte 	"Enables NPIV. [0=Disabled-remove all vports first, "
4418f23e9faSHans Rosenfeld 		"[1=Enabled-requires SLI3+]"},
442fcf3ce44SJohn Forte 
443fcf3ce44SJohn Forte 	/* CFG_VPORT_RESTRICTED */
444fcf3ce44SJohn Forte 	{"vport-restrict-login",
445fcf3ce44SJohn Forte 		0, 1, 1, 0,
446fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_BOOLEAN,
447fcf3ce44SJohn Forte 	"Restricts login to virtual ports to conserve resources. "
448fcf3ce44SJohn Forte 		"[0=Disabled, 1=Enabled]"},
449fcf3ce44SJohn Forte 
450fcf3ce44SJohn Forte 	/* CFG_NPIV_DELAY */
451fcf3ce44SJohn Forte 	{"enable-npiv-delay",
452fcf3ce44SJohn Forte 		0, 1, 1, 0,
453fcf3ce44SJohn Forte 		PARM_DYNAMIC | PARM_HIDDEN,
454fcf3ce44SJohn Forte 	"Enable FDISC/NS command delay from vports to switch. "
455fcf3ce44SJohn Forte 		"[0=Disabled, 1=Enabled]"},
456fcf3ce44SJohn Forte 
457fcf3ce44SJohn Forte #ifdef DHCHAP_SUPPORT
458fcf3ce44SJohn Forte 	/* CFG_AUTH_ENABLE */
459fcf3ce44SJohn Forte 	{"enable-auth",
460fcf3ce44SJohn Forte 		0, 1, 0, 0,
461fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_BOOLEAN,
4628f23e9faSHans Rosenfeld 	"Enables DHCHAP support in the driver. "
4638f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
464fcf3ce44SJohn Forte 
465fcf3ce44SJohn Forte 	/* CFG_AUTH_E2E */
466fcf3ce44SJohn Forte 	{"auth-e2e",
467fcf3ce44SJohn Forte 		0, 1, 0, 0,
468fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_BOOLEAN | PARM_HIDDEN,
469fcf3ce44SJohn Forte 	"Enables end-to-end DHCHAP support in the driver. "
470fcf3ce44SJohn Forte 		"[0=Disabled, 1=Enabled]"},
471fcf3ce44SJohn Forte 
472fcf3ce44SJohn Forte 	/* CFG_AUTH_NPIV */
473fcf3ce44SJohn Forte 	{"auth-npiv",
474fcf3ce44SJohn Forte 		0, 1, 0, 0,
475fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_BOOLEAN | PARM_HIDDEN,
4768f23e9faSHans Rosenfeld 	"Enables DHCHAP support for virtual ports. "
4778f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
478fcf3ce44SJohn Forte 
479fcf3ce44SJohn Forte 	/* CFG_AUTH_TMO */
480fcf3ce44SJohn Forte 	{"auth-tmo",
481fcf3ce44SJohn Forte 		20, 999, 45, 0,
482fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_HIDDEN,
483fcf3ce44SJohn Forte 	"Sets authentication timeout value. (seconds)"},
484fcf3ce44SJohn Forte 
485fcf3ce44SJohn Forte 	/* CFG_AUTH_MODE */
486fcf3ce44SJohn Forte 	{"auth-mode",
487fcf3ce44SJohn Forte 		1, 3, 1, 0,
488fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_HIDDEN,
4898f23e9faSHans Rosenfeld 	"Sets authentication mode. "
4908f23e9faSHans Rosenfeld 		"[1=Disabled, 2=Active, 3=Passive]"},
491fcf3ce44SJohn Forte 
492fcf3ce44SJohn Forte 	/* CFG_AUTH_BIDIR */
493fcf3ce44SJohn Forte 	{"auth-bidir",
494fcf3ce44SJohn Forte 		0, 1, 0, 0,
495fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_BOOLEAN | PARM_HIDDEN,
4968f23e9faSHans Rosenfeld 	"Sets authentication bidirectional mode. "
4978f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
498fcf3ce44SJohn Forte 
499fcf3ce44SJohn Forte 	/* CFG_AUTH_TYPE */
500fcf3ce44SJohn Forte 	{"auth-type",
501fcf3ce44SJohn Forte 		0, 0x1111, 0x1000, 0,
502fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_HEX | PARM_HIDDEN,
5038f23e9faSHans Rosenfeld 	"Sets authentication type priorities[4]. "
5048f23e9faSHans Rosenfeld 		"[0=Undef, 1=DHCHAP]"},
505fcf3ce44SJohn Forte 
506fcf3ce44SJohn Forte 	/* CFG_AUTH_HASH */
507fcf3ce44SJohn Forte 	{"auth-hash",
508fcf3ce44SJohn Forte 		0, 0x2222, 0x1200, 0,
509fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_HEX | PARM_HIDDEN,
5108f23e9faSHans Rosenfeld 	"Sets authentication hash priorities[4]. "
5118f23e9faSHans Rosenfeld 		"[0=Undef, 1=MD5, 2=SHA1]"},
512fcf3ce44SJohn Forte 
513fcf3ce44SJohn Forte 	/* CFG_AUTH_GROUP */
514fcf3ce44SJohn Forte 	{"auth-group",
515fcf3ce44SJohn Forte 		0, 0x55555555, 0x54321000, 0,
516fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_HEX | PARM_HIDDEN,
517fcf3ce44SJohn Forte 	"Sets auth group priorities[8]. "
518fcf3ce44SJohn Forte 		"[0=Undef,1=NULL,2=1024,3=1280,4=1536,5=2048]"},
519fcf3ce44SJohn Forte 
520fcf3ce44SJohn Forte 	/* CFG_AUTH_INTERVAL */
521fcf3ce44SJohn Forte 	{"auth-interval",
522fcf3ce44SJohn Forte 		0, 3600, 300, 0,
523fcf3ce44SJohn Forte 		PARM_DYNAMIC_LINK | PARM_HIDDEN,
524fcf3ce44SJohn Forte 	"Sets re-authentication interval. (minutes)"},
525fcf3ce44SJohn Forte 
526fcf3ce44SJohn Forte #endif	/* DHCHAP_SUPPORT */
527fcf3ce44SJohn Forte 
528fcf3ce44SJohn Forte #ifdef SFCT_SUPPORT
5298f23e9faSHans Rosenfeld 	/* CFG_DTM_ENABLE */
5308f23e9faSHans Rosenfeld 	{"enable-dtm",
5318f23e9faSHans Rosenfeld 		0, 1, 0, 0,
5328f23e9faSHans Rosenfeld 		PARM_BOOLEAN | PARM_HIDDEN,
5338f23e9faSHans Rosenfeld 	"Enables dynamic target mode. "
5348f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
5358f23e9faSHans Rosenfeld 
536fcf3ce44SJohn Forte 	/* CFG_TARGET_MODE */
537fcf3ce44SJohn Forte 	{"target-mode",
538fcf3ce44SJohn Forte 		0, 1, 0, 0,
5398f23e9faSHans Rosenfeld 		PARM_BOOLEAN,
5408f23e9faSHans Rosenfeld 		/* PARM_DYNAMIC - Depending on enable-dtm */
5418f23e9faSHans Rosenfeld 	"Enables target mode support in driver. "
5428f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]"},
5438f23e9faSHans Rosenfeld 
5448f23e9faSHans Rosenfeld 	/* CFG_VPORT_MODE_MASK */
5458f23e9faSHans Rosenfeld 	{"vport-mode-mask",
5468f23e9faSHans Rosenfeld 		1, 3, 1, 0,
5478f23e9faSHans Rosenfeld 		PARM_HEX | PARM_HIDDEN,
5488f23e9faSHans Rosenfeld 	"Sets default vport mode mask. "
5498f23e9faSHans Rosenfeld 		"[0x1=Initiator, 0x2=Target (enable-dtm=1 reqd)"},
5508f23e9faSHans Rosenfeld 
5518f23e9faSHans Rosenfeld #ifdef FYI
5528f23e9faSHans Rosenfeld 	/* These parameters can be added to conf file at user's discretion */
5538f23e9faSHans Rosenfeld 	/* Supercedes "vport-mode-mask" for vport N */
5548f23e9faSHans Rosenfeld 	/* vport0-mode-mask is not supported */
5558f23e9faSHans Rosenfeld 	{"vportN-mode-mask",	/* (where N = 1 to max VPI) */
5568f23e9faSHans Rosenfeld 		1, 3, 1, 0,
5578f23e9faSHans Rosenfeld 		PARM_HEX | PARM_HIDDEN,
5588f23e9faSHans Rosenfeld 	"Sets vportN mode mask. "
5598f23e9faSHans Rosenfeld 		"[0x1=Initiator, 0x2=Target (enable-dtm=1 reqd)"},
5608f23e9faSHans Rosenfeld #endif /* FYI */
561bce54adfSSukumar Swaminathan 
562bce54adfSSukumar Swaminathan 	/* CFG_FCT_QDEPTH */
563bce54adfSSukumar Swaminathan 	{"fct-queue-depth",
564bce54adfSSukumar Swaminathan 		0, 4096, 0, 0,
565bce54adfSSukumar Swaminathan 		PARM_BOOLEAN,
566bce54adfSSukumar Swaminathan 	"Queue depth of target mode port. "
567bce54adfSSukumar Swaminathan 		"[0=max determined by type of HBA]"},
568291a2b48SSukumar Swaminathan #endif /* SFCT_SUPPORT */
569fcf3ce44SJohn Forte 
57082527734SSukumar Swaminathan 	/* CFG_NUM_WQ */
57182527734SSukumar Swaminathan 	{"num-wq",
5728f23e9faSHans Rosenfeld 		1, EMLXS_MAX_WQS_PER_EQ, 1, 0,
57382527734SSukumar Swaminathan 		PARM_DYNAMIC_RESET | PARM_HIDDEN,
57482527734SSukumar Swaminathan 	"Defines number of Work Queues (WQs) per EQ."},
57582527734SSukumar Swaminathan 
57682527734SSukumar Swaminathan 	/* CFG_PERSIST_LINKDOWN */
57782527734SSukumar Swaminathan 	{"persist-linkdown",
57882527734SSukumar Swaminathan 		0, 1, 0, 0,
57982527734SSukumar Swaminathan 		PARM_DYNAMIC_RESET | PARM_BOOLEAN,
5808f23e9faSHans Rosenfeld 	"Set link persistently down. "
5818f23e9faSHans Rosenfeld 		"[0=Disabled, 1=Enabled]."},
58282527734SSukumar Swaminathan 
58382527734SSukumar Swaminathan 	/* CFG_ENABLE_PATCH */
58482527734SSukumar Swaminathan 	{"enable-patch",
58582527734SSukumar Swaminathan 		0, 0xFFFFFFFF, DEFAULT_PATCHES, 0,
58682527734SSukumar Swaminathan 		PARM_DYNAMIC | PARM_HEX | PARM_HIDDEN,
58782527734SSukumar Swaminathan 	"Enables patches in driver."},
58882527734SSukumar Swaminathan 
58982527734SSukumar Swaminathan 	/* CFG_FAST_TGT_RESET */
59082527734SSukumar Swaminathan 	{"fast-tgt-reset",
59182527734SSukumar Swaminathan 		0, 1, 0, 0,
59282527734SSukumar Swaminathan 		PARM_DYNAMIC_RESET | PARM_BOOLEAN | PARM_HIDDEN,
59382527734SSukumar Swaminathan 	"Enables alternative target reset processing. "
59482527734SSukumar Swaminathan 		"[0=Disabled 1=Enabled]"},
59582527734SSukumar Swaminathan 
59682527734SSukumar Swaminathan 	/* CFG_FAST_TGT_RESET_TMR */
59782527734SSukumar Swaminathan 	{"fast-tgt-reset-timer",
59882527734SSukumar Swaminathan 		0, 60, 10, 0,
59982527734SSukumar Swaminathan 		PARM_DYNAMIC_RESET | PARM_BOOLEAN | PARM_HIDDEN,
60082527734SSukumar Swaminathan 	"RSCN notification timer for fast target reset. "
60182527734SSukumar Swaminathan 		"[0=Disabled 1-60=seconds]"},
60282527734SSukumar Swaminathan 
603a9800bebSGarrett D'Amore 	/* CFG_FCF_SOLICIT_DELAY */
604a9800bebSGarrett D'Amore 	{"fcf-solicit-delay",
605a9800bebSGarrett D'Amore 		0, 60, 3, 0,
606a9800bebSGarrett D'Amore 		PARM_DYNAMIC | PARM_HIDDEN,
607a9800bebSGarrett D'Amore 	"Sets delay after FCF solicit request before reading FCF table. "
608a9800bebSGarrett D'Amore 		"[0-60=seconds]"},
609a9800bebSGarrett D'Amore 
610a9800bebSGarrett D'Amore 	/* CFG_FCF_FAILOVER_DELAY */
611a9800bebSGarrett D'Amore 	{"fcf-failover-delay",
612a9800bebSGarrett D'Amore 		0, 60, 0, 0,
613a9800bebSGarrett D'Amore 		PARM_DYNAMIC | PARM_HIDDEN,
614a9800bebSGarrett D'Amore 	"Sets delay before attempting failover to a new FCF. "
615a9800bebSGarrett D'Amore 		"[0-60=seconds]"},
616a9800bebSGarrett D'Amore 
617a9800bebSGarrett D'Amore 	/* CFG_FCF_RESOLICIT_DELAY */
618a9800bebSGarrett D'Amore 	{"fcf-resolicit-delay",
619a9800bebSGarrett D'Amore 		0, 60, 3, 0,
620a9800bebSGarrett D'Amore 		PARM_DYNAMIC | PARM_HIDDEN,
621a9800bebSGarrett D'Amore 	"Sets delay after total FCF failure before resoliciting. "
622a9800bebSGarrett D'Amore 		"[0-60=seconds]"},
6238f23e9faSHans Rosenfeld 
6248f23e9faSHans Rosenfeld 	/* CFG_FCF_RPI_IDLE_TIMEOUT */
6258f23e9faSHans Rosenfeld 	{"fcf-rpi-idle-timeout",
6268f23e9faSHans Rosenfeld 		1, 30, 2, 0,
6278f23e9faSHans Rosenfeld 		PARM_DYNAMIC | PARM_HIDDEN,
6288f23e9faSHans Rosenfeld 	"Sets timeout period of an idle reserved RPI. "
6298f23e9faSHans Rosenfeld 		"[1-30=seconds]"},
6308f23e9faSHans Rosenfeld 
6318f23e9faSHans Rosenfeld 	/* CFG_DELAY_DISCOVERY */
6328f23e9faSHans Rosenfeld 	{"delay-discovery",
6338f23e9faSHans Rosenfeld 		0, 2, 1, 0,
6348f23e9faSHans Rosenfeld 		PARM_DYNAMIC | PARM_BOOLEAN | PARM_HIDDEN,
6358f23e9faSHans Rosenfeld 	"Clean Address to delay discovery."
6368f23e9faSHans Rosenfeld 		"[0=Disabled 1=Enabled not 1st linkup 2=Enabled]"},
6378f23e9faSHans Rosenfeld 
6388f23e9faSHans Rosenfeld 	/* CFG_RQD_MODE */
6398f23e9faSHans Rosenfeld 	{"rqd-mode",
6408f23e9faSHans Rosenfeld 		0, 1, 1, 0,
6418f23e9faSHans Rosenfeld 		PARM_DYNAMIC | PARM_BOOLEAN | PARM_HIDDEN,
6428f23e9faSHans Rosenfeld 	"Request Recovery Qualifier delay."
6438f23e9faSHans Rosenfeld 		"[0=Disabled 1=Enabled]"},
6448f23e9faSHans Rosenfeld 
6458f23e9faSHans Rosenfeld 	/* CFG_PERF_HINT */
6468f23e9faSHans Rosenfeld 	{"perf-hint",
6478f23e9faSHans Rosenfeld 		0, 1, 1, 0,
6488f23e9faSHans Rosenfeld 		PARM_DYNAMIC | PARM_BOOLEAN | PARM_HIDDEN,
6498f23e9faSHans Rosenfeld 	"Use performance hints if applicable."
6508f23e9faSHans Rosenfeld 		"[0=Disabled 1=Enabled]"},
6518f23e9faSHans Rosenfeld 
652fcf3ce44SJohn Forte };
653fcf3ce44SJohn Forte 
654fcf3ce44SJohn Forte #endif	/* DEF_ICFG */
655fcf3ce44SJohn Forte 
656fcf3ce44SJohn Forte #ifdef	__cplusplus
657fcf3ce44SJohn Forte }
658fcf3ce44SJohn Forte #endif
659fcf3ce44SJohn Forte 
660fcf3ce44SJohn Forte #endif	/* _EMLXS_CONFIG_H */
661