1 /******************************************************************************
2  *
3  * Copyright(c) 2009-2014  Realtek Corporation.
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  * The full GNU General Public License is included in this distribution in the
15  * file called LICENSE.
16  *
17  * Contact Information:
18  * wlanfae <wlanfae@realtek.com>
19  * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
20  * Hsinchu 300, Taiwan.
21  *
22  * Larry Finger <Larry.Finger@lwfinger.net>
23  *
24  *****************************************************************************/
25 
26 #ifndef __RTL92E_DEF_H__
27 #define __RTL92E_DEF_H__
28 
29 #define RX_DESC_NUM_92E					512
30 
31 #define HAL_PRIME_CHNL_OFFSET_DONT_CARE			0
32 #define HAL_PRIME_CHNL_OFFSET_LOWER			1
33 #define HAL_PRIME_CHNL_OFFSET_UPPER			2
34 
35 #define RX_MPDU_QUEUE					0
36 
37 #define IS_HT_RATE(_rate)	\
38 	(_rate >= DESC92C_RATEMCS0)
39 #define IS_CCK_RATE(_rate)	\
40 	(_rate >= DESC92C_RATE1M && _rate <= DESC92C_RATE11M)
41 #define IS_OFDM_RATE(_rate)	\
42 	(_rate >= DESC92C_RATE6M && _rate <= DESC92C_RATE54M)
43 
44 enum version_8192e {
45 	VERSION_TEST_CHIP_2T2R_8192E = 0x0024,
46 	VERSION_NORMAL_CHIP_2T2R_8192E = 0x102C,
47 	VERSION_UNKNOWN = 0xFF,
48 };
49 
50 enum rx_packet_type {
51 	NORMAL_RX,
52 	TX_REPORT1,
53 	TX_REPORT2,
54 	HIS_REPORT,
55 	C2H_PACKET,
56 };
57 
58 enum rtl_desc_qsel {
59 	QSLT_BK = 0x2,
60 	QSLT_BE = 0x0,
61 	QSLT_VI = 0x5,
62 	QSLT_VO = 0x7,
63 	QSLT_BEACON = 0x10,
64 	QSLT_HIGH = 0x11,
65 	QSLT_MGNT = 0x12,
66 	QSLT_CMD = 0x13,
67 };
68 
69 enum rtl_desc92c_rate {
70 	DESC92C_RATE1M = 0x00,
71 	DESC92C_RATE2M = 0x01,
72 	DESC92C_RATE5_5M = 0x02,
73 	DESC92C_RATE11M = 0x03,
74 
75 	DESC92C_RATE6M = 0x04,
76 	DESC92C_RATE9M = 0x05,
77 	DESC92C_RATE12M = 0x06,
78 	DESC92C_RATE18M = 0x07,
79 	DESC92C_RATE24M = 0x08,
80 	DESC92C_RATE36M = 0x09,
81 	DESC92C_RATE48M = 0x0a,
82 	DESC92C_RATE54M = 0x0b,
83 
84 	DESC92C_RATEMCS0 = 0x0c,
85 	DESC92C_RATEMCS1 = 0x0d,
86 	DESC92C_RATEMCS2 = 0x0e,
87 	DESC92C_RATEMCS3 = 0x0f,
88 	DESC92C_RATEMCS4 = 0x10,
89 	DESC92C_RATEMCS5 = 0x11,
90 	DESC92C_RATEMCS6 = 0x12,
91 	DESC92C_RATEMCS7 = 0x13,
92 	DESC92C_RATEMCS8 = 0x14,
93 	DESC92C_RATEMCS9 = 0x15,
94 	DESC92C_RATEMCS10 = 0x16,
95 	DESC92C_RATEMCS11 = 0x17,
96 	DESC92C_RATEMCS12 = 0x18,
97 	DESC92C_RATEMCS13 = 0x19,
98 	DESC92C_RATEMCS14 = 0x1a,
99 	DESC92C_RATEMCS15 = 0x1b,
100 };
101 #endif
102