1e24c1f86SMichael Straube /* SPDX-License-Identifier: GPL-2.0 */
2cf3e6881SAli Bahar /******************************************************************************
3cf3e6881SAli Bahar  *
4cf3e6881SAli Bahar  * Copyright(c) 2007 - 2010 Realtek Corporation. All rights reserved.
5cf3e6881SAli Bahar  *
6cf3e6881SAli Bahar  * Modifications for inclusion into the Linux staging tree are
7cf3e6881SAli Bahar  * Copyright(c) 2010 Larry Finger. All rights reserved.
8cf3e6881SAli Bahar  *
9cf3e6881SAli Bahar  * Contact information:
10cf3e6881SAli Bahar  * WLAN FAE <wlanfae@realtek.com>
11cf3e6881SAli Bahar  * Larry Finger <Larry.Finger@lwfinger.net>
12cf3e6881SAli Bahar  *
13cf3e6881SAli Bahar  ******************************************************************************/
142865d42cSLarry Finger #ifndef __XMIT_OSDEP_H_
152865d42cSLarry Finger #define __XMIT_OSDEP_H_
162865d42cSLarry Finger 
172865d42cSLarry Finger #include "osdep_service.h"
182865d42cSLarry Finger #include "drv_types.h"
192865d42cSLarry Finger 
202865d42cSLarry Finger struct pkt_file {
212865d42cSLarry Finger 	_pkt	*pkt;
222865d42cSLarry Finger 	u32	pkt_len;	 /*the remainder length of the open_file*/
232865d42cSLarry Finger 	_buffer	*cur_buffer;
242865d42cSLarry Finger 	u8	*buf_start;
252865d42cSLarry Finger 	u8	*cur_addr;
262865d42cSLarry Finger 	u32	buf_len;
272865d42cSLarry Finger };
282865d42cSLarry Finger 
292865d42cSLarry Finger #define NR_XMITFRAME	256
302865d42cSLarry Finger 
312865d42cSLarry Finger struct xmit_priv;
322865d42cSLarry Finger struct pkt_attrib;
332865d42cSLarry Finger struct sta_xmit_priv;
342865d42cSLarry Finger struct xmit_frame;
352865d42cSLarry Finger struct xmit_buf;
362865d42cSLarry Finger 
37*307d3436SGUO Zihua netdev_tx_t r8712_xmit_entry(_pkt *pkt, struct  net_device *pnetdev);
38f95302eeSAli Bahar void r8712_SetFilter(struct work_struct *work);
392865d42cSLarry Finger int r8712_xmit_resource_alloc(struct _adapter *padapter,
402865d42cSLarry Finger 			      struct xmit_buf *pxmitbuf);
412865d42cSLarry Finger void r8712_xmit_resource_free(struct _adapter *padapter,
422865d42cSLarry Finger 			      struct xmit_buf *pxmitbuf);
432865d42cSLarry Finger 
442865d42cSLarry Finger void r8712_set_qos(struct pkt_file *ppktfile,
452865d42cSLarry Finger 		   struct pkt_attrib *pattrib);
462865d42cSLarry Finger void _r8712_open_pktfile(_pkt *pktptr, struct pkt_file *pfile);
472865d42cSLarry Finger uint _r8712_pktfile_read(struct pkt_file *pfile, u8 *rmem, uint rlen);
482865d42cSLarry Finger sint r8712_endofpktfile(struct pkt_file *pfile);
492865d42cSLarry Finger void r8712_xmit_complete(struct _adapter *padapter,
502865d42cSLarry Finger 			 struct xmit_frame *pxframe);
512865d42cSLarry Finger 
522865d42cSLarry Finger #endif
53