1eef4f27Robert Mustacchi/*
2eef4f27Robert Mustacchi * Copyright 2014-2017 Cavium, Inc.
3eef4f27Robert Mustacchi * The contents of this file are subject to the terms of the Common Development
4eef4f27Robert Mustacchi * and Distribution License, v.1,  (the "License").
5eef4f27Robert Mustacchi *
6eef4f27Robert Mustacchi * You may not use this file except in compliance with the License.
7eef4f27Robert Mustacchi *
8eef4f27Robert Mustacchi * You can obtain a copy of the License at available
9eef4f27Robert Mustacchi * at http://opensource.org/licenses/CDDL-1.0
10eef4f27Robert Mustacchi *
11eef4f27Robert Mustacchi * See the License for the specific language governing permissions and
12eef4f27Robert Mustacchi * limitations under the License.
13eef4f27Robert Mustacchi */
14eef4f27Robert Mustacchi
15eef4f27Robert Mustacchi/*
16eef4f27Robert Mustacchi * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
17eef4f27Robert Mustacchi */
18eef4f27Robert Mustacchi
19eef4f27Robert Mustacchi#ifndef _BNXSND_H
20eef4f27Robert Mustacchi#define	_BNXSND_H
21eef4f27Robert Mustacchi
22eef4f27Robert Mustacchi#include "bnx.h"
23eef4f27Robert Mustacchi
24eef4f27Robert Mustacchi#ifdef __cplusplus
25eef4f27Robert Mustacchiextern "C" {
26eef4f27Robert Mustacchi#endif
27eef4f27Robert Mustacchi
28eef4f27Robert Mustacchiint  bnx_txpkts_init(um_device_t *const);
29eef4f27Robert Mustacchivoid bnx_txpkts_flush(um_device_t *const);
30eef4f27Robert Mustacchivoid bnx_txpkts_fini(um_device_t *const);
31eef4f27Robert Mustacchi
32eef4f27Robert Mustacchi#define	BNX_SEND_GOODXMIT  0
33eef4f27Robert Mustacchi#define	BNX_SEND_LINKDOWN  1
34eef4f27Robert Mustacchi#define	BNX_SEND_DEFERPKT  2
35eef4f27Robert Mustacchi#define	BNX_SEND_HDWRFULL  3
36eef4f27Robert Mustacchi
37eef4f27Robert Mustacchiint  bnx_xmit_pkt_map(um_txpacket_t *const, mblk_t *);
38eef4f27Robert Mustacchi
39eef4f27Robert Mustacchiint bnx_xmit_ring_xmit_qpkt(um_device_t *const, const unsigned int);
40eef4f27Robert Mustacchi
41eef4f27Robert Mustacchiint bnx_xmit_ring_xmit_mblk(um_device_t *const, const unsigned int, mblk_t *);
42eef4f27Robert Mustacchi
43eef4f27Robert Mustacchivoid bnx_xmit_ring_reclaim(um_device_t *const, const unsigned int, s_list_t *);
44eef4f27Robert Mustacchi
45eef4f27Robert Mustacchivoid bnx_xmit_ring_intr(um_device_t *const, const unsigned int);
46eef4f27Robert Mustacchi
47eef4f27Robert Mustacchivoid bnx_txpkts_intr(um_device_t *const);
48eef4f27Robert Mustacchi
49eef4f27Robert Mustacchivoid bnx_xmit_ring_post(um_device_t *const, const unsigned int);
50eef4f27Robert Mustacchi
51eef4f27Robert Mustacchi#ifdef __cplusplus
52eef4f27Robert Mustacchi}
53eef4f27Robert Mustacchi#endif
54eef4f27Robert Mustacchi
55eef4f27Robert Mustacchi#endif /* _BNXSND_H */