#include <rte_mbuf.h>
#include <rte_io.h>
#include <rte_rwlock.h>
-#include <rte_ethdev.h>
+#include <ethdev_driver.h>
#include "../cxgbe_compat.h"
#include "../cxgbe_ofld.h"
unsigned long alloc_failed; /* # of times buffer allocation failed */
unsigned long low; /* # of times momentarily starving */
+ u8 fl_buf_size_idx; /* Selected SGE_FL_BUFFER_SIZE index */
};
#define MAX_MBUF_FRAGS (16384 / 512 + 2)
void *va; /* virtual address of first byte */
unsigned int nfrags; /* # of fragments */
unsigned int tot_len; /* total length of fragments */
- bool usembufs; /* use mbufs for fragments */
};
typedef int (*rspq_handler_t)(struct sge_rspq *q, const __be64 *rsp,
struct sge_rspq rspq;
struct sge_fl fl;
struct sge_eth_rx_stats stats;
- bool usembufs; /* one ingress packet per mbuf FL buffer */
} __rte_cache_aligned;
/*
u16 timer_val[SGE_NTIMERS];
u8 counter_val[SGE_NCOUNTERS];
- u32 fl_align; /* response queue message alignment */
- u32 fl_pg_order; /* large page allocation size */
u32 fl_starve_thres; /* Free List starvation threshold */
+ u32 fl_buffer_size[SGE_FL_BUFFER_SIZE_NUM]; /* Free List buffer sizes */
};
-#define T4_OS_NEEDS_MBOX_LOCKING 1
-
/*
* OS Lock/List primitives for those interfaces in the Common Code which
* need this.