1
2
3
4#ifndef __XMIT_OSDEP_H_
5#define __XMIT_OSDEP_H_
6
7#include "osdep_service.h"
8#include "drv_types.h"
9
10struct pkt_file {
11 struct sk_buff *pkt;
12 size_t pkt_len;
13 unsigned char *cur_buffer;
14 u8 *buf_start;
15 u8 *cur_addr;
16 size_t buf_len;
17};
18
19extern int rtw_ht_enable;
20extern int rtw_cbw40_enable;
21extern int rtw_ampdu_enable;
22
23#define NR_XMITFRAME 256
24
25struct xmit_priv;
26struct pkt_attrib;
27struct sta_xmit_priv;
28struct xmit_frame;
29struct xmit_buf;
30
31int rtw_xmit_entry(struct sk_buff *pkt, struct net_device *pnetdev);
32
33void rtw_os_xmit_schedule(struct adapter *padapter);
34
35int rtw_os_xmit_resource_alloc(struct adapter *padapter,
36 struct xmit_buf *pxmitbuf, u32 alloc_sz);
37void rtw_os_xmit_resource_free(struct adapter *padapter,
38 struct xmit_buf *pxmitbuf, u32 free_sz);
39
40void rtw_set_tx_chksum_offload(struct sk_buff *pkt, struct pkt_attrib *pattrib);
41
42uint rtw_remainder_len(struct pkt_file *pfile);
43void _rtw_open_pktfile(struct sk_buff *pkt, struct pkt_file *pfile);
44uint _rtw_pktfile_read(struct pkt_file *pfile, u8 *rmem, uint rlen);
45int rtw_endofpktfile(struct pkt_file *pfile);
46
47void rtw_os_pkt_complete(struct adapter *padapter, struct sk_buff *pkt);
48void rtw_os_xmit_complete(struct adapter *padapter,
49 struct xmit_frame *pxframe);
50
51#endif
52