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