1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright(C) 2021 Marvell. 3 */ 4 #ifndef __CN9K_ETHDEV_H__ 5 #define __CN9K_ETHDEV_H__ 6 7 #include <cnxk_ethdev.h> 8 9 struct cn9k_eth_txq { 10 uint64_t cmd[8]; 11 int64_t fc_cache_pkts; 12 uint64_t *fc_mem; 13 void *lmt_addr; 14 rte_iova_t io_addr; 15 uint64_t lso_tun_fmt; 16 uint16_t sqes_per_sqb_log2; 17 int16_t nb_sqb_bufs_adj; 18 } __plt_cache_aligned; 19 20 struct cn9k_eth_rxq { 21 uint64_t mbuf_initializer; 22 uint64_t data_off; 23 uintptr_t desc; 24 void *lookup_mem; 25 uintptr_t cq_door; 26 uint64_t wdata; 27 int64_t *cq_status; 28 uint32_t head; 29 uint32_t qmask; 30 uint32_t available; 31 uint16_t rq; 32 struct cnxk_timesync_info *tstamp; 33 } __plt_cache_aligned; 34 35 /* Rx and Tx routines */ 36 void cn9k_eth_set_rx_function(struct rte_eth_dev *eth_dev); 37 void cn9k_eth_set_tx_function(struct rte_eth_dev *eth_dev); 38 39 #endif /* __CN9K_ETHDEV_H__ */ 40