X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fcxgbe%2Fsmt.h;h=e6e8aea964e13bd1abad5f7b9166c1e8653c1052;hb=c6d273e9ab58762323e842bfdea8fe1f03bc7dd2;hp=aa4afcce26efdc1b7b0131c950470b3720e11577;hpb=a99564c680dd33d1dc4931985fd769c86e5791e5;p=dpdk.git diff --git a/drivers/net/cxgbe/smt.h b/drivers/net/cxgbe/smt.h index aa4afcce26..e6e8aea964 100644 --- a/drivers/net/cxgbe/smt.h +++ b/drivers/net/cxgbe/smt.h @@ -5,6 +5,8 @@ #ifndef __CXGBE_SMT_H_ #define __CXGBE_SMT_H_ +#include "base/t4_msg.h" + enum { SMT_STATE_SWITCHING, SMT_STATE_UNUSED, @@ -21,7 +23,7 @@ struct smt_entry { u16 pfvf; u16 hw_idx; u8 src_mac[RTE_ETHER_ADDR_LEN]; - rte_atomic32_t refcnt; + u32 refcnt; rte_spinlock_t lock; }; @@ -34,6 +36,10 @@ struct smt_data { struct smt_data *t4_init_smt(u32 smt_start_idx, u32 smt_size); void t4_cleanup_smt(struct adapter *adap); +void cxgbe_do_smt_write_rpl(struct adapter *adap, + const struct cpl_smt_write_rpl *rpl); +struct smt_entry *cxgbe_smt_alloc_switching(struct rte_eth_dev *dev, u8 *smac); +void cxgbe_smt_release(struct smt_entry *e); #endif /* __CXGBE_SMT_H_ */