X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fqede%2Fbase%2Fecore_vfpf_if.h;h=f92dc428afdd61aa27ab4905151b0e18ba4be36e;hb=1b7b9f170fcebbbd0708fab554dcb5a7badef8cf;hp=ecb00649645cad5eae39c5f1d6baf5a80058e065;hpb=92bed231a0da88e43b480c7d6700592a06131404;p=dpdk.git diff --git a/drivers/net/qede/base/ecore_vfpf_if.h b/drivers/net/qede/base/ecore_vfpf_if.h index ecb0064964..f92dc428af 100644 --- a/drivers/net/qede/base/ecore_vfpf_if.h +++ b/drivers/net/qede/base/ecore_vfpf_if.h @@ -1,9 +1,7 @@ -/* - * Copyright (c) 2016 QLogic Corporation. +/* SPDX-License-Identifier: BSD-3-Clause + * Copyright (c) 2016 - 2018 Cavium Inc. * All rights reserved. - * www.qlogic.com - * - * See LICENSE.qede_pmd for copyright and licensing details. + * www.cavium.com */ #ifndef __ECORE_VF_PF_IF_H__ @@ -253,6 +251,13 @@ struct vfpf_qid_tlv { u8 padding[3]; }; +/* Soft FLR req */ +struct vfpf_soft_flr_tlv { + struct vfpf_first_tlv first_tlv; + u32 reserved1; + u32 reserved2; +}; + /* Setup Queue */ struct vfpf_start_rxq_tlv { struct vfpf_first_tlv first_tlv; @@ -396,7 +401,13 @@ struct vfpf_vport_update_mcast_bin_tlv { struct channel_tlv tl; u8 padding[4]; - u64 bins[8]; + /* This was a mistake; There are only 256 approx bins, + * and in HSI they're divided into 32-bit values. + * As old VFs used to set-bit to the values on its side, + * the upper half of the array is never expected to contain any data. + */ + u64 bins[4]; + u64 obsolete_bins[4]; }; struct vfpf_vport_update_accept_param_tlv { @@ -525,6 +536,18 @@ struct pfvf_read_coal_resp_tlv { u8 padding[6]; }; +struct vfpf_bulletin_update_mac_tlv { + struct vfpf_first_tlv first_tlv; + u8 mac[ETH_ALEN]; + u8 padding[2]; +}; + +struct vfpf_update_mtu_tlv { + struct vfpf_first_tlv first_tlv; + u16 mtu; + u8 padding[6]; +}; + union vfpf_tlvs { struct vfpf_first_tlv first_tlv; struct vfpf_acquire_tlv acquire; @@ -539,6 +562,9 @@ union vfpf_tlvs { 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 vfpf_bulletin_update_mac_tlv bulletin_update_mac; + struct vfpf_update_mtu_tlv update_mtu; + struct vfpf_soft_flr_tlv soft_flr; struct tlv_buffer_size tlv_buf_size; }; @@ -669,6 +695,41 @@ enum { CHANNEL_TLV_COALESCE_UPDATE, CHANNEL_TLV_QID, CHANNEL_TLV_COALESCE_READ, + CHANNEL_TLV_BULLETIN_UPDATE_MAC, + CHANNEL_TLV_UPDATE_MTU, + CHANNEL_TLV_RDMA_ACQUIRE, + CHANNEL_TLV_RDMA_START, + CHANNEL_TLV_RDMA_STOP, + CHANNEL_TLV_RDMA_ADD_USER, + CHANNEL_TLV_RDMA_REMOVE_USER, + CHANNEL_TLV_RDMA_QUERY_COUNTERS, + CHANNEL_TLV_RDMA_ALLOC_TID, + CHANNEL_TLV_RDMA_REGISTER_TID, + CHANNEL_TLV_RDMA_DEREGISTER_TID, + CHANNEL_TLV_RDMA_FREE_TID, + CHANNEL_TLV_RDMA_CREATE_CQ, + CHANNEL_TLV_RDMA_RESIZE_CQ, + CHANNEL_TLV_RDMA_DESTROY_CQ, + CHANNEL_TLV_RDMA_CREATE_QP, + CHANNEL_TLV_RDMA_MODIFY_QP, + CHANNEL_TLV_RDMA_QUERY_QP, + CHANNEL_TLV_RDMA_DESTROY_QP, + CHANNEL_TLV_RDMA_QUERY_PORT, + CHANNEL_TLV_RDMA_QUERY_DEVICE, + CHANNEL_TLV_RDMA_IWARP_CONNECT, + CHANNEL_TLV_RDMA_IWARP_ACCEPT, + CHANNEL_TLV_RDMA_IWARP_CREATE_LISTEN, + CHANNEL_TLV_RDMA_IWARP_DESTROY_LISTEN, + CHANNEL_TLV_RDMA_IWARP_PAUSE_LISTEN, + CHANNEL_TLV_RDMA_IWARP_REJECT, + CHANNEL_TLV_RDMA_IWARP_SEND_RTR, + CHANNEL_TLV_ESTABLISH_LL2_CONN, + CHANNEL_TLV_TERMINATE_LL2_CONN, + CHANNEL_TLV_ASYNC_EVENT, + CHANNEL_TLV_RDMA_CREATE_SRQ, + CHANNEL_TLV_RDMA_MODIFY_SRQ, + CHANNEL_TLV_RDMA_DESTROY_SRQ, + CHANNEL_TLV_SOFT_FLR, CHANNEL_TLV_MAX, /* Required for iterating over vport-update tlvs. @@ -678,6 +739,6 @@ enum { /*!!!!! Make sure to update STRINGS structure accordingly !!!!!*/ }; -extern const char *ecore_channel_tlvs_string[]; +extern const char *qede_ecore_channel_tlvs_string[]; #endif /* __ECORE_VF_PF_IF_H__ */