oce_wq
struct oce_wq *wq;
static struct oce_wq *
struct oce_wq *wq;
wq = kmem_zalloc(sizeof (struct oce_wq), KM_NOSLEEP);
static struct oce_wq *oce_wq_init(struct oce_dev *dev, uint32_t q_len,
static void oce_wq_fini(struct oce_dev *dev, struct oce_wq *wq);
static int oce_wq_create(struct oce_wq *wq, struct oce_eq *eq);
kmem_free(wq, sizeof (struct oce_wq));
static void oce_wq_del(struct oce_dev *dev, struct oce_wq *wq);
oce_wq_fini(struct oce_dev *dev, struct oce_wq *wq)
kmem_free(wq, sizeof (struct oce_wq));
oce_wq_create(struct oce_wq *wq, struct oce_eq *eq)
oce_wq_del(struct oce_dev *dev, struct oce_wq *wq)
oce_wqm_ctor(oce_wq_mdesc_t *wqmd, struct oce_wq *wq)
oce_wqm_cache_create(struct oce_wq *wq)
oce_wqm_cache_destroy(struct oce_wq *wq)
oce_wqb_cache_create(struct oce_wq *wq, size_t buf_size)
oce_wqb_cache_destroy(struct oce_wq *wq)
oce_wqb_ctor(oce_wq_bdesc_t *wqbd, struct oce_wq *wq, size_t size, int flags)
oce_wqb_dtor(struct oce_wq *wq, oce_wq_bdesc_t *wqbd)
oce_wqb_alloc(struct oce_wq *wq)
oce_wqb_free(struct oce_wq *wq, oce_wq_bdesc_t *wqbd)
static void oce_free_wqed(struct oce_wq *wq, oce_wqe_desc_t *wqed);
static int oce_map_wqe(struct oce_wq *wq, oce_wqe_desc_t *wqed,
oce_wqm_alloc(struct oce_wq *wq)
oce_wqm_free(struct oce_wq *wq, oce_wq_mdesc_t *wqmd)
static int oce_bcopy_wqe(struct oce_wq *wq, oce_wqe_desc_t *wqed, mblk_t *mp,
oce_wqmd_free(struct oce_wq *wq, oce_wq_mdesc_t *wqmd)
static void oce_wqb_dtor(struct oce_wq *wq, oce_wq_bdesc_t *wqbd);
static int oce_wqb_ctor(oce_wq_bdesc_t *wqbd, struct oce_wq *wq,
static inline oce_wq_bdesc_t *oce_wqb_alloc(struct oce_wq *wq);
struct oce_wq *
static void oce_wqb_free(struct oce_wq *wq, oce_wq_bdesc_t *wqbd);
struct oce_wq *wq;
static void oce_wqmd_free(struct oce_wq *wq, oce_wq_mdesc_t *wqmd);
oce_fill_ring_descs(struct oce_wq *wq, oce_wqe_desc_t *wqed)
static void oce_wqm_free(struct oce_wq *wq, oce_wq_mdesc_t *wqmd);
static oce_wq_mdesc_t *oce_wqm_alloc(struct oce_wq *wq);
static int oce_wqm_ctor(oce_wq_mdesc_t *wqmd, struct oce_wq *wq);
oce_bcopy_wqe(struct oce_wq *wq, oce_wqe_desc_t *wqed, mblk_t *mp,
static void oce_wqm_dtor(struct oce_wq *wq, oce_wq_mdesc_t *wqmd);
static void oce_fill_ring_descs(struct oce_wq *wq, oce_wqe_desc_t *wqed);
static inline int oce_process_tx_compl(struct oce_wq *wq, boolean_t rearm);
oce_map_wqe(struct oce_wq *wq, oce_wqe_desc_t *wqed, mblk_t *mp,
oce_process_tx_compl(struct oce_wq *wq, boolean_t rearm)
struct oce_wq *wq;
wq = (struct oce_wq *)arg;
oce_send_packet(struct oce_wq *wq, mblk_t *mp)
oce_free_wqed(struct oce_wq *wq, oce_wqe_desc_t *wqed)
oce_start_wq(struct oce_wq *wq)
oce_wqm_dtor(struct oce_wq *wq, oce_wq_mdesc_t *wqmd)
oce_clean_wq(struct oce_wq *wq)
struct oce_wq *wq;
int oce_wqb_cache_create(struct oce_wq *wq, size_t buf_size);
void oce_wqb_cache_destroy(struct oce_wq *wq);
void oce_wqm_cache_destroy(struct oce_wq *wq);
int oce_wqm_cache_create(struct oce_wq *wq);
struct oce_wq *wq[OCE_MAX_WQ]; /* TXQ Array */
struct oce_wq *oce_get_wq(struct oce_dev *dev, mblk_t *pkt);
mblk_t *oce_send_packet(struct oce_wq *wq, mblk_t *mp);
int oce_start_wq(struct oce_wq *wq);
void oce_clean_wq(struct oce_wq *wq);