common/iavf: add two opcodes to send AdminQ command
authorQi Zhang <qi.z.zhang@intel.com>
Tue, 10 Mar 2020 00:37:09 +0000 (08:37 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 21 Apr 2020 11:57:05 +0000 (13:57 +0200)
Add two virtchnl opcodes to send the AdminQ command, one is used to
send the descriptor, the other is used to send the buffer payload if
the AdminQ command has BUF flag set.

Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Beilei Xing <beilei.xing@intel.com>
drivers/common/iavf/virtchnl.h

index 14fd962..3e544b9 100644 (file)
@@ -129,6 +129,8 @@ enum virtchnl_ops {
        VIRTCHNL_OP_ADD_CLOUD_FILTER = 32,
        VIRTCHNL_OP_DEL_CLOUD_FILTER = 33,
        /* opcodes 34, 35, 36, 37 and 38 are reserved */
+       VIRTCHNL_OP_DCF_CMD_DESC = 39,
+       VIRTCHNL_OP_DCF_CMD_BUFF = 40,
 };
 
 /* These macros are used to generate compilation errors if a structure/union
@@ -879,6 +881,12 @@ virtchnl_vc_validate_vf_msg(struct virtchnl_version_info *ver, u32 v_opcode,
        case VIRTCHNL_OP_DEL_CLOUD_FILTER:
                valid_len = sizeof(struct virtchnl_filter);
                break;
+       case VIRTCHNL_OP_DCF_CMD_DESC:
+       case VIRTCHNL_OP_DCF_CMD_BUFF:
+               /* These two opcodes are specific to handle the AdminQ command,
+                * so the validation needs to be done in PF's context.
+                */
+               return 0;
        /* These are always errors coming from the VF. */
        case VIRTCHNL_OP_EVENT:
        case VIRTCHNL_OP_UNKNOWN: