common/octeontx: move mbox to common folder
[dpdk.git] / drivers / net / qede / base / ecore_vfpf_if.h
index 4df5619..ecb0064 100644 (file)
@@ -101,6 +101,12 @@ struct vfpf_acquire_tlv {
         * this, and use the legacy CID scheme.
         */
 #define VFPF_ACQUIRE_CAP_QUEUE_QIDS    (1 << 2)
+
+       /* The VF is using the physical bar. While this is mostly internal
+        * to the VF, might affect the number of CIDs supported assuming
+        * QUEUE_QIDS is set.
+        */
+#define VFPF_ACQUIRE_CAP_PHYSICAL_BAR  (1 << 3)
                u64 capabilities;
                u8 fw_major;
                u8 fw_minor;
@@ -190,7 +196,8 @@ struct pfvf_acquire_resp_tlv {
                u16 chip_rev;
                u8 dev_type;
 
-               u8 padding;
+               /* Doorbell bar size configured in HW: log(size) or 0 */
+               u8 bar_size;
 
                struct pfvf_stats_info stats_info;
 
@@ -417,6 +424,8 @@ struct vfpf_vport_update_sge_tpa_tlv {
        #define VFPF_TPA_PKT_SPLIT_FLAG      (1 << 2)
        #define VFPF_TPA_HDR_DATA_SPLIT_FLAG (1 << 3)
        #define VFPF_TPA_GRO_CONSIST_FLAG    (1 << 4)
+       #define VFPF_TPA_TUNN_IPV4_EN_FLAG   (1 << 5)
+       #define VFPF_TPA_TUNN_IPV6_EN_FLAG   (1 << 6)
 
        u8                      update_sge_tpa_flags;
        #define VFPF_UPDATE_SGE_DEPRECATED_FLAG    (1 << 0)
@@ -503,6 +512,19 @@ struct vfpf_update_coalesce {
        u8 padding[2];
 };
 
+struct vfpf_read_coal_req_tlv {
+       struct vfpf_first_tlv first_tlv;
+       u16 qid;
+       u8 is_rx;
+       u8 padding[5];
+};
+
+struct pfvf_read_coal_resp_tlv {
+       struct pfvf_tlv hdr;
+       u16 coal;
+       u8 padding[6];
+};
+
 union vfpf_tlvs {
        struct vfpf_first_tlv                   first_tlv;
        struct vfpf_acquire_tlv                 acquire;
@@ -516,6 +538,7 @@ union vfpf_tlvs {
        struct vfpf_ucast_filter_tlv            ucast_filter;
        struct vfpf_update_tunn_param_tlv       tunn_param_update;
        struct vfpf_update_coalesce             update_coalesce;
+       struct vfpf_read_coal_req_tlv           read_coal_req;
        struct tlv_buffer_size                  tlv_buf_size;
 };
 
@@ -525,6 +548,7 @@ union pfvf_tlvs {
        struct tlv_buffer_size                  tlv_buf_size;
        struct pfvf_start_queue_resp_tlv        queue_start;
        struct pfvf_update_tunn_param_tlv       tunn_param_resp;
+       struct pfvf_read_coal_resp_tlv          read_coal_resp;
 };
 
 /* This is a structure which is allocated in the VF, which the PF may update
@@ -644,6 +668,7 @@ enum {
        CHANNEL_TLV_UPDATE_TUNN_PARAM,
        CHANNEL_TLV_COALESCE_UPDATE,
        CHANNEL_TLV_QID,
+       CHANNEL_TLV_COALESCE_READ,
        CHANNEL_TLV_MAX,
 
        /* Required for iterating over vport-update tlvs.