1/* SPDX-License-Identifier: GPL-2.0 */
2/******************************************************************************
3 *
4 * Copyright(c) 2007 - 2010 Realtek Corporation. All rights reserved.
5 *
6 * Modifications for inclusion into the Linux staging tree are
7 * Copyright(c) 2010 Larry Finger. All rights reserved.
8 *
9 * Contact information:
10 * WLAN FAE <wlanfae@realtek.com>
11 * Larry Finger <Larry.Finger@lwfinger.net>
12 *
13 ******************************************************************************/
14#ifndef __XMIT_OSDEP_H_
15#define __XMIT_OSDEP_H_
16
17#include "osdep_service.h"
18#include "drv_types.h"
19
20struct pkt_file {
21	_pkt	*pkt;
22	u32	pkt_len;	 /*the remainder length of the open_file*/
23	_buffer	*cur_buffer;
24	u8	*buf_start;
25	u8	*cur_addr;
26	u32	buf_len;
27};
28
29#define NR_XMITFRAME	256
30
31struct xmit_priv;
32struct pkt_attrib;
33struct sta_xmit_priv;
34struct xmit_frame;
35struct xmit_buf;
36
37netdev_tx_t r8712_xmit_entry(_pkt *pkt, struct  net_device *pnetdev);
38void r8712_SetFilter(struct work_struct *work);
39int r8712_xmit_resource_alloc(struct _adapter *padapter,
40			      struct xmit_buf *pxmitbuf);
41void r8712_xmit_resource_free(struct _adapter *padapter,
42			      struct xmit_buf *pxmitbuf);
43
44void r8712_set_qos(struct pkt_file *ppktfile,
45		   struct pkt_attrib *pattrib);
46void _r8712_open_pktfile(_pkt *pktptr, struct pkt_file *pfile);
47uint _r8712_pktfile_read(struct pkt_file *pfile, u8 *rmem, uint rlen);
48sint r8712_endofpktfile(struct pkt_file *pfile);
49void r8712_xmit_complete(struct _adapter *padapter,
50			 struct xmit_frame *pxframe);
51
52#endif
53