aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/enic/vnic_devcmd.h
diff options
context:
space:
mode:
authorRoopa Prabhu <roprabhu@cisco.com>2011-03-29 16:35:51 -0400
committerDavid S. Miller <davem@davemloft.net>2011-03-31 00:39:23 -0400
commit9085fd09859fafbde17380b93d317a13c23c39af (patch)
tree431235c6bb022f740ca72029098efe9f88e8b039 /drivers/net/enic/vnic_devcmd.h
parent4562b2fe1ebc7c547746660f735ff9af964f28ad (diff)
enic: Add support for new fw devcmds for port profile handling
This patch introduces new fw devcmds for port profile handling. These new commands are similar to the current fw commands for port profile handling. The only difference being that the new commands split the existing port profile handling devcmds into multiple fw commands, giving the driver finer control over port profile operations. Signed-off-by: Roopa Prabhu <roprabhu@cisco.com> Signed-off-by: David Wang <dwang2@cisco.com> Signed-off-by: Christian Benvenuti <benve@cisco.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/enic/vnic_devcmd.h')
-rw-r--r--drivers/net/enic/vnic_devcmd.h57
1 files changed, 52 insertions, 5 deletions
diff --git a/drivers/net/enic/vnic_devcmd.h b/drivers/net/enic/vnic_devcmd.h
index d833a071bac5..c5569bfb47ac 100644
--- a/drivers/net/enic/vnic_devcmd.h
+++ b/drivers/net/enic/vnic_devcmd.h
@@ -267,17 +267,62 @@ enum vnic_devcmd_cmd {
267 267
268 /* 268 /*
269 * As for BY_BDF except a0 is index of hvnlink subordinate vnic 269 * As for BY_BDF except a0 is index of hvnlink subordinate vnic
270 * or SR-IOV virtual vnic */ 270 * or SR-IOV virtual vnic
271 */
271 CMD_PROXY_BY_INDEX = _CMDC(_CMD_DIR_RW, _CMD_VTYPE_ALL, 43), 272 CMD_PROXY_BY_INDEX = _CMDC(_CMD_DIR_RW, _CMD_VTYPE_ALL, 43),
272 273
273 /* 274 /*
274 * in: (u64)a0=paddr of buffer to put latest VIC VIF-CONFIG-INFO TLV in 275 * For HPP toggle:
275 * (u32)a1=length of buffer in a0 276 * adapter-info-get
276 * out: (u64)a0=paddr of buffer with latest VIC VIF-CONFIG-INFO TLV 277 * in: (u64)a0=phsical address of buffer passed in from caller.
277 * (u32)a1=actual length of latest VIC VIF-CONFIG-INFO TLV */ 278 * (u16)a1=size of buffer specified in a0.
279 * out: (u64)a0=phsical address of buffer passed in from caller.
280 * (u16)a1=actual bytes from VIF-CONFIG-INFO TLV, or
281 * 0 if no VIF-CONFIG-INFO TLV was ever received. */
278 CMD_CONFIG_INFO_GET = _CMDC(_CMD_DIR_RW, _CMD_VTYPE_ALL, 44), 282 CMD_CONFIG_INFO_GET = _CMDC(_CMD_DIR_RW, _CMD_VTYPE_ALL, 44),
283
284 /* init_prov_info2:
285 * Variant of CMD_INIT_PROV_INFO, where it will not try to enable
286 * the vnic until CMD_ENABLE2 is issued.
287 * (u64)a0=paddr of vnic_devcmd_provinfo
288 * (u32)a1=sizeof provision info */
289 CMD_INIT_PROV_INFO2 = _CMDC(_CMD_DIR_WRITE, _CMD_VTYPE_ENET, 47),
290
291 /* enable2:
292 * (u32)a0=0 ==> standby
293 * =CMD_ENABLE2_ACTIVE ==> active
294 */
295 CMD_ENABLE2 = _CMDC(_CMD_DIR_WRITE, _CMD_VTYPE_ENET, 48),
296
297 /*
298 * cmd_status:
299 * Returns the status of the specified command
300 * Input:
301 * a0 = command for which status is being queried.
302 * Possible values are:
303 * CMD_SOFT_RESET
304 * CMD_HANG_RESET
305 * CMD_OPEN
306 * CMD_INIT
307 * CMD_INIT_PROV_INFO
308 * CMD_DEINIT
309 * CMD_INIT_PROV_INFO2
310 * CMD_ENABLE2
311 * Output:
312 * if status == STAT_ERROR
313 * a0 = ERR_ENOTSUPPORTED - status for command in a0 is
314 * not supported
315 * if status == STAT_NONE
316 * a0 = status of the devcmd specified in a0 as follows.
317 * ERR_SUCCESS - command in a0 completed successfully
318 * ERR_EINPROGRESS - command in a0 is still in progress
319 */
320 CMD_STATUS = _CMDC(_CMD_DIR_RW, _CMD_VTYPE_ALL, 49),
279}; 321};
280 322
323/* CMD_ENABLE2 flags */
324#define CMD_ENABLE2_ACTIVE 0x1
325
281/* flags for CMD_OPEN */ 326/* flags for CMD_OPEN */
282#define CMD_OPENF_OPROM 0x1 /* open coming from option rom */ 327#define CMD_OPENF_OPROM 0x1 /* open coming from option rom */
283 328
@@ -315,6 +360,8 @@ enum vnic_devcmd_error {
315 ERR_ETIMEDOUT = 8, 360 ERR_ETIMEDOUT = 8,
316 ERR_ELINKDOWN = 9, 361 ERR_ELINKDOWN = 9,
317 ERR_EMAXRES = 10, 362 ERR_EMAXRES = 10,
363 ERR_ENOTSUPPORTED = 11,
364 ERR_EINPROGRESS = 12,
318}; 365};
319 366
320/* 367/*