Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
staging
rtl8712
rtl8712_xmit.h
Go to the documentation of this file.
1
/******************************************************************************
2
*
3
* Copyright(c) 2007 - 2010 Realtek Corporation. All rights reserved.
4
*
5
* This program is free software; you can redistribute it and/or modify it
6
* under the terms of version 2 of the GNU General Public License as
7
* published by the Free Software Foundation.
8
*
9
* This program is distributed in the hope that it will be useful, but WITHOUT
10
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12
* more details.
13
*
14
* You should have received a copy of the GNU General Public License along with
15
* this program; if not, write to the Free Software Foundation, Inc.,
16
* 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
17
*
18
* Modifications for inclusion into the Linux staging tree are
19
* Copyright(c) 2010 Larry Finger. All rights reserved.
20
*
21
* Contact information:
22
* WLAN FAE <
[email protected]
>
23
* Larry Finger <
[email protected]
>
24
*
25
******************************************************************************/
26
#ifndef _RTL8712_XMIT_H_
27
#define _RTL8712_XMIT_H_
28
29
#define HWXMIT_ENTRY 4
30
31
#define VO_QUEUE_INX 0
32
#define VI_QUEUE_INX 1
33
#define BE_QUEUE_INX 2
34
#define BK_QUEUE_INX 3
35
#define TS_QUEUE_INX 4
36
#define MGT_QUEUE_INX 5
37
#define BMC_QUEUE_INX 6
38
#define BCN_QUEUE_INX 7
39
40
#define HW_QUEUE_ENTRY 8
41
42
#define TXDESC_SIZE 32
43
#define TXDESC_OFFSET TXDESC_SIZE
44
45
#define NR_AMSDU_XMITFRAME 8
46
#define NR_TXAGG_XMITFRAME 8
47
48
#define MAX_AMSDU_XMITBUF_SZ 8704
49
#define MAX_TXAGG_XMITBUF_SZ 16384
/*16k*/
50
51
52
#define tx_cmd tx_desc
53
54
55
/*
56
*defined for TX DESC Operation
57
*/
58
59
#define MAX_TID (15)
60
61
/*OFFSET 0*/
62
#define OFFSET_SZ (0)
63
#define OFFSET_SHT (16)
64
#define OWN BIT(31)
65
#define FSG BIT(27)
66
#define LSG BIT(26)
67
#define TYPE_SHT (24)
68
#define TYPE_MSK (0x03000000)
69
70
/*OFFSET 4*/
71
#define PKT_OFFSET_SZ (0)
72
#define QSEL_SHT (8)
73
#define HWPC BIT(31)
74
75
/*OFFSET 8*/
76
#define BMC BIT(7)
77
#define BK BIT(30)
78
#define AGG_EN BIT(29)
79
#define RTS_RC_SHT (16)
80
81
/*OFFSET 12*/
82
#define SEQ_SHT (16)
83
84
/*OFFSET 16*/
85
#define TXBW BIT(18)
86
87
/*OFFSET 20*/
88
#define DISFB BIT(15)
89
#define RSVD6_MSK (0x00E00000)
90
#define RSVD6_SHT (21)
91
92
struct
tx_desc
{
93
/*DWORD 0*/
94
unsigned
int
txdw0
;
95
unsigned
int
txdw1
;
96
unsigned
int
txdw2
;
97
unsigned
int
txdw3
;
98
unsigned
int
txdw4
;
99
unsigned
int
txdw5
;
100
unsigned
int
txdw6
;
101
unsigned
int
txdw7
;
102
};
103
104
105
union
txdesc
{
106
struct
tx_desc
txdesc
;
107
unsigned
int
value
[
TXDESC_SIZE
>>2];
108
};
109
110
int
r8712_xmitframe_complete
(
struct
_adapter
*padapter,
111
struct
xmit_priv
*pxmitpriv,
112
struct
xmit_buf
*pxmitbuf);
113
void
r8712_do_queue_select
(
struct
_adapter
*padapter,
114
struct
pkt_attrib
*pattrib);
115
116
#ifdef CONFIG_R8712_TX_AGGR
117
u8
r8712_xmitframe_aggr_1st(
struct
xmit_buf
*pxmitbuf,
118
struct
xmit_frame
*pxmitframe);
119
u8
r8712_dump_aggr_xframe(
struct
xmit_buf
*pxmitbuf,
120
struct
xmit_frame
*pxmitframe);
121
#endif
122
123
#endif
Generated on Thu Jan 10 2013 14:31:08 for Linux Kernel by
1.8.2