#include <stdint.h>
-#include "virtio_pci.h"
+#include <ethdev_driver.h>
-#ifndef PAGE_SIZE
-#define PAGE_SIZE 4096
-#endif
+#include "virtio.h"
#define VIRTIO_MAX_RX_QUEUES 128U
#define VIRTIO_MAX_TX_QUEUES 128U
1u << VIRTIO_NET_F_GUEST_TSO6 | \
1u << VIRTIO_NET_F_CSUM | \
1u << VIRTIO_NET_F_HOST_TSO4 | \
- 1u << VIRTIO_NET_F_HOST_TSO6)
+ 1u << VIRTIO_NET_F_HOST_TSO6 | \
+ 1ULL << VIRTIO_NET_F_RSS)
extern const struct eth_dev_ops virtio_user_secondary_eth_dev_ops;
* RX/TX function prototypes
*/
-int virtio_dev_rx_queue_done(void *rxq, uint16_t offset);
-
int virtio_dev_rx_queue_setup(struct rte_eth_dev *dev, uint16_t rx_queue_id,
uint16_t nb_rx_desc, unsigned int socket_id,
const struct rte_eth_rxconf *rx_conf,
int virtio_dev_pause(struct rte_eth_dev *dev);
void virtio_dev_resume(struct rte_eth_dev *dev);
+int virtio_dev_stop(struct rte_eth_dev *dev);
+int virtio_dev_close(struct rte_eth_dev *dev);
int virtio_inject_pkts(struct rte_eth_dev *dev, struct rte_mbuf **tx_pkts,
int nb_pkts);
+bool virtio_rx_check_scatter(uint16_t max_rx_pkt_len, uint16_t rx_buf_size,
+ bool rx_scatter_enabled, const char **error);
+
+uint16_t virtio_rx_mem_pool_buf_size(struct rte_mempool *mp);
+
#endif /* _VIRTIO_ETHDEV_H_ */