e00270fc14509cd37dba9d13e39d216ef64dc329
[pandora-kernel.git] / drivers / staging / ath6kl / include / common / AR6002 / hw4.0 / hw / mbox_wlan_reg.h
1 // ------------------------------------------------------------------
2 // Copyright (c) 2004-2010 Atheros Corporation.  All rights reserved.
3 // 
4 //
5 // Permission to use, copy, modify, and/or distribute this software for any
6 // purpose with or without fee is hereby granted, provided that the above
7 // copyright notice and this permission notice appear in all copies.
8 //
9 // THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 // WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 // MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 // ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 // WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 //
17 //
18 // ------------------------------------------------------------------
19 //===================================================================
20 // Author(s): ="Atheros"
21 //===================================================================
22
23
24 #ifndef _MBOX_WLAN_REG_REG_H_
25 #define _MBOX_WLAN_REG_REG_H_
26
27 #define WLAN_MBOX_FIFO_ADDRESS                   0x00000000
28 #define WLAN_MBOX_FIFO_OFFSET                    0x00000000
29 #define WLAN_MBOX_FIFO_DATA_MSB                  19
30 #define WLAN_MBOX_FIFO_DATA_LSB                  0
31 #define WLAN_MBOX_FIFO_DATA_MASK                 0x000fffff
32 #define WLAN_MBOX_FIFO_DATA_GET(x)               (((x) & WLAN_MBOX_FIFO_DATA_MASK) >> WLAN_MBOX_FIFO_DATA_LSB)
33 #define WLAN_MBOX_FIFO_DATA_SET(x)               (((x) << WLAN_MBOX_FIFO_DATA_LSB) & WLAN_MBOX_FIFO_DATA_MASK)
34
35 #define WLAN_MBOX_FIFO_STATUS_ADDRESS            0x00000010
36 #define WLAN_MBOX_FIFO_STATUS_OFFSET             0x00000010
37 #define WLAN_MBOX_FIFO_STATUS_EMPTY_MSB          19
38 #define WLAN_MBOX_FIFO_STATUS_EMPTY_LSB          16
39 #define WLAN_MBOX_FIFO_STATUS_EMPTY_MASK         0x000f0000
40 #define WLAN_MBOX_FIFO_STATUS_EMPTY_GET(x)       (((x) & WLAN_MBOX_FIFO_STATUS_EMPTY_MASK) >> WLAN_MBOX_FIFO_STATUS_EMPTY_LSB)
41 #define WLAN_MBOX_FIFO_STATUS_EMPTY_SET(x)       (((x) << WLAN_MBOX_FIFO_STATUS_EMPTY_LSB) & WLAN_MBOX_FIFO_STATUS_EMPTY_MASK)
42 #define WLAN_MBOX_FIFO_STATUS_FULL_MSB           15
43 #define WLAN_MBOX_FIFO_STATUS_FULL_LSB           12
44 #define WLAN_MBOX_FIFO_STATUS_FULL_MASK          0x0000f000
45 #define WLAN_MBOX_FIFO_STATUS_FULL_GET(x)        (((x) & WLAN_MBOX_FIFO_STATUS_FULL_MASK) >> WLAN_MBOX_FIFO_STATUS_FULL_LSB)
46 #define WLAN_MBOX_FIFO_STATUS_FULL_SET(x)        (((x) << WLAN_MBOX_FIFO_STATUS_FULL_LSB) & WLAN_MBOX_FIFO_STATUS_FULL_MASK)
47
48 #define WLAN_MBOX_DMA_POLICY_ADDRESS             0x00000014
49 #define WLAN_MBOX_DMA_POLICY_OFFSET              0x00000014
50 #define WLAN_MBOX_DMA_POLICY_TX_QUANTUM_MSB      3
51 #define WLAN_MBOX_DMA_POLICY_TX_QUANTUM_LSB      3
52 #define WLAN_MBOX_DMA_POLICY_TX_QUANTUM_MASK     0x00000008
53 #define WLAN_MBOX_DMA_POLICY_TX_QUANTUM_GET(x)   (((x) & WLAN_MBOX_DMA_POLICY_TX_QUANTUM_MASK) >> WLAN_MBOX_DMA_POLICY_TX_QUANTUM_LSB)
54 #define WLAN_MBOX_DMA_POLICY_TX_QUANTUM_SET(x)   (((x) << WLAN_MBOX_DMA_POLICY_TX_QUANTUM_LSB) & WLAN_MBOX_DMA_POLICY_TX_QUANTUM_MASK)
55 #define WLAN_MBOX_DMA_POLICY_TX_ORDER_MSB        2
56 #define WLAN_MBOX_DMA_POLICY_TX_ORDER_LSB        2
57 #define WLAN_MBOX_DMA_POLICY_TX_ORDER_MASK       0x00000004
58 #define WLAN_MBOX_DMA_POLICY_TX_ORDER_GET(x)     (((x) & WLAN_MBOX_DMA_POLICY_TX_ORDER_MASK) >> WLAN_MBOX_DMA_POLICY_TX_ORDER_LSB)
59 #define WLAN_MBOX_DMA_POLICY_TX_ORDER_SET(x)     (((x) << WLAN_MBOX_DMA_POLICY_TX_ORDER_LSB) & WLAN_MBOX_DMA_POLICY_TX_ORDER_MASK)
60 #define WLAN_MBOX_DMA_POLICY_RX_QUANTUM_MSB      1
61 #define WLAN_MBOX_DMA_POLICY_RX_QUANTUM_LSB      1
62 #define WLAN_MBOX_DMA_POLICY_RX_QUANTUM_MASK     0x00000002
63 #define WLAN_MBOX_DMA_POLICY_RX_QUANTUM_GET(x)   (((x) & WLAN_MBOX_DMA_POLICY_RX_QUANTUM_MASK) >> WLAN_MBOX_DMA_POLICY_RX_QUANTUM_LSB)
64 #define WLAN_MBOX_DMA_POLICY_RX_QUANTUM_SET(x)   (((x) << WLAN_MBOX_DMA_POLICY_RX_QUANTUM_LSB) & WLAN_MBOX_DMA_POLICY_RX_QUANTUM_MASK)
65 #define WLAN_MBOX_DMA_POLICY_RX_ORDER_MSB        0
66 #define WLAN_MBOX_DMA_POLICY_RX_ORDER_LSB        0
67 #define WLAN_MBOX_DMA_POLICY_RX_ORDER_MASK       0x00000001
68 #define WLAN_MBOX_DMA_POLICY_RX_ORDER_GET(x)     (((x) & WLAN_MBOX_DMA_POLICY_RX_ORDER_MASK) >> WLAN_MBOX_DMA_POLICY_RX_ORDER_LSB)
69 #define WLAN_MBOX_DMA_POLICY_RX_ORDER_SET(x)     (((x) << WLAN_MBOX_DMA_POLICY_RX_ORDER_LSB) & WLAN_MBOX_DMA_POLICY_RX_ORDER_MASK)
70
71 #define WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS 0x00000018
72 #define WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_OFFSET 0x00000018
73 #define WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MSB 27
74 #define WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB 2
75 #define WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
76 #define WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB)
77 #define WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_MBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK)
78
79 #define WLAN_MBOX0_DMA_RX_CONTROL_ADDRESS        0x0000001c
80 #define WLAN_MBOX0_DMA_RX_CONTROL_OFFSET         0x0000001c
81 #define WLAN_MBOX0_DMA_RX_CONTROL_RESUME_MSB     2
82 #define WLAN_MBOX0_DMA_RX_CONTROL_RESUME_LSB     2
83 #define WLAN_MBOX0_DMA_RX_CONTROL_RESUME_MASK    0x00000004
84 #define WLAN_MBOX0_DMA_RX_CONTROL_RESUME_GET(x)  (((x) & WLAN_MBOX0_DMA_RX_CONTROL_RESUME_MASK) >> WLAN_MBOX0_DMA_RX_CONTROL_RESUME_LSB)
85 #define WLAN_MBOX0_DMA_RX_CONTROL_RESUME_SET(x)  (((x) << WLAN_MBOX0_DMA_RX_CONTROL_RESUME_LSB) & WLAN_MBOX0_DMA_RX_CONTROL_RESUME_MASK)
86 #define WLAN_MBOX0_DMA_RX_CONTROL_START_MSB      1
87 #define WLAN_MBOX0_DMA_RX_CONTROL_START_LSB      1
88 #define WLAN_MBOX0_DMA_RX_CONTROL_START_MASK     0x00000002
89 #define WLAN_MBOX0_DMA_RX_CONTROL_START_GET(x)   (((x) & WLAN_MBOX0_DMA_RX_CONTROL_START_MASK) >> WLAN_MBOX0_DMA_RX_CONTROL_START_LSB)
90 #define WLAN_MBOX0_DMA_RX_CONTROL_START_SET(x)   (((x) << WLAN_MBOX0_DMA_RX_CONTROL_START_LSB) & WLAN_MBOX0_DMA_RX_CONTROL_START_MASK)
91 #define WLAN_MBOX0_DMA_RX_CONTROL_STOP_MSB       0
92 #define WLAN_MBOX0_DMA_RX_CONTROL_STOP_LSB       0
93 #define WLAN_MBOX0_DMA_RX_CONTROL_STOP_MASK      0x00000001
94 #define WLAN_MBOX0_DMA_RX_CONTROL_STOP_GET(x)    (((x) & WLAN_MBOX0_DMA_RX_CONTROL_STOP_MASK) >> WLAN_MBOX0_DMA_RX_CONTROL_STOP_LSB)
95 #define WLAN_MBOX0_DMA_RX_CONTROL_STOP_SET(x)    (((x) << WLAN_MBOX0_DMA_RX_CONTROL_STOP_LSB) & WLAN_MBOX0_DMA_RX_CONTROL_STOP_MASK)
96
97 #define WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS 0x00000020
98 #define WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_OFFSET 0x00000020
99 #define WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MSB 27
100 #define WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB 2
101 #define WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
102 #define WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB)
103 #define WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_MBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK)
104
105 #define WLAN_MBOX0_DMA_TX_CONTROL_ADDRESS        0x00000024
106 #define WLAN_MBOX0_DMA_TX_CONTROL_OFFSET         0x00000024
107 #define WLAN_MBOX0_DMA_TX_CONTROL_RESUME_MSB     2
108 #define WLAN_MBOX0_DMA_TX_CONTROL_RESUME_LSB     2
109 #define WLAN_MBOX0_DMA_TX_CONTROL_RESUME_MASK    0x00000004
110 #define WLAN_MBOX0_DMA_TX_CONTROL_RESUME_GET(x)  (((x) & WLAN_MBOX0_DMA_TX_CONTROL_RESUME_MASK) >> WLAN_MBOX0_DMA_TX_CONTROL_RESUME_LSB)
111 #define WLAN_MBOX0_DMA_TX_CONTROL_RESUME_SET(x)  (((x) << WLAN_MBOX0_DMA_TX_CONTROL_RESUME_LSB) & WLAN_MBOX0_DMA_TX_CONTROL_RESUME_MASK)
112 #define WLAN_MBOX0_DMA_TX_CONTROL_START_MSB      1
113 #define WLAN_MBOX0_DMA_TX_CONTROL_START_LSB      1
114 #define WLAN_MBOX0_DMA_TX_CONTROL_START_MASK     0x00000002
115 #define WLAN_MBOX0_DMA_TX_CONTROL_START_GET(x)   (((x) & WLAN_MBOX0_DMA_TX_CONTROL_START_MASK) >> WLAN_MBOX0_DMA_TX_CONTROL_START_LSB)
116 #define WLAN_MBOX0_DMA_TX_CONTROL_START_SET(x)   (((x) << WLAN_MBOX0_DMA_TX_CONTROL_START_LSB) & WLAN_MBOX0_DMA_TX_CONTROL_START_MASK)
117 #define WLAN_MBOX0_DMA_TX_CONTROL_STOP_MSB       0
118 #define WLAN_MBOX0_DMA_TX_CONTROL_STOP_LSB       0
119 #define WLAN_MBOX0_DMA_TX_CONTROL_STOP_MASK      0x00000001
120 #define WLAN_MBOX0_DMA_TX_CONTROL_STOP_GET(x)    (((x) & WLAN_MBOX0_DMA_TX_CONTROL_STOP_MASK) >> WLAN_MBOX0_DMA_TX_CONTROL_STOP_LSB)
121 #define WLAN_MBOX0_DMA_TX_CONTROL_STOP_SET(x)    (((x) << WLAN_MBOX0_DMA_TX_CONTROL_STOP_LSB) & WLAN_MBOX0_DMA_TX_CONTROL_STOP_MASK)
122
123 #define WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS 0x00000028
124 #define WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_OFFSET 0x00000028
125 #define WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MSB 27
126 #define WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB 2
127 #define WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
128 #define WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB)
129 #define WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_MBOX1_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK)
130
131 #define WLAN_MBOX1_DMA_RX_CONTROL_ADDRESS        0x0000002c
132 #define WLAN_MBOX1_DMA_RX_CONTROL_OFFSET         0x0000002c
133 #define WLAN_MBOX1_DMA_RX_CONTROL_RESUME_MSB     2
134 #define WLAN_MBOX1_DMA_RX_CONTROL_RESUME_LSB     2
135 #define WLAN_MBOX1_DMA_RX_CONTROL_RESUME_MASK    0x00000004
136 #define WLAN_MBOX1_DMA_RX_CONTROL_RESUME_GET(x)  (((x) & WLAN_MBOX1_DMA_RX_CONTROL_RESUME_MASK) >> WLAN_MBOX1_DMA_RX_CONTROL_RESUME_LSB)
137 #define WLAN_MBOX1_DMA_RX_CONTROL_RESUME_SET(x)  (((x) << WLAN_MBOX1_DMA_RX_CONTROL_RESUME_LSB) & WLAN_MBOX1_DMA_RX_CONTROL_RESUME_MASK)
138 #define WLAN_MBOX1_DMA_RX_CONTROL_START_MSB      1
139 #define WLAN_MBOX1_DMA_RX_CONTROL_START_LSB      1
140 #define WLAN_MBOX1_DMA_RX_CONTROL_START_MASK     0x00000002
141 #define WLAN_MBOX1_DMA_RX_CONTROL_START_GET(x)   (((x) & WLAN_MBOX1_DMA_RX_CONTROL_START_MASK) >> WLAN_MBOX1_DMA_RX_CONTROL_START_LSB)
142 #define WLAN_MBOX1_DMA_RX_CONTROL_START_SET(x)   (((x) << WLAN_MBOX1_DMA_RX_CONTROL_START_LSB) & WLAN_MBOX1_DMA_RX_CONTROL_START_MASK)
143 #define WLAN_MBOX1_DMA_RX_CONTROL_STOP_MSB       0
144 #define WLAN_MBOX1_DMA_RX_CONTROL_STOP_LSB       0
145 #define WLAN_MBOX1_DMA_RX_CONTROL_STOP_MASK      0x00000001
146 #define WLAN_MBOX1_DMA_RX_CONTROL_STOP_GET(x)    (((x) & WLAN_MBOX1_DMA_RX_CONTROL_STOP_MASK) >> WLAN_MBOX1_DMA_RX_CONTROL_STOP_LSB)
147 #define WLAN_MBOX1_DMA_RX_CONTROL_STOP_SET(x)    (((x) << WLAN_MBOX1_DMA_RX_CONTROL_STOP_LSB) & WLAN_MBOX1_DMA_RX_CONTROL_STOP_MASK)
148
149 #define WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS 0x00000030
150 #define WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_OFFSET 0x00000030
151 #define WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MSB 27
152 #define WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB 2
153 #define WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
154 #define WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB)
155 #define WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_MBOX1_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK)
156
157 #define WLAN_MBOX1_DMA_TX_CONTROL_ADDRESS        0x00000034
158 #define WLAN_MBOX1_DMA_TX_CONTROL_OFFSET         0x00000034
159 #define WLAN_MBOX1_DMA_TX_CONTROL_RESUME_MSB     2
160 #define WLAN_MBOX1_DMA_TX_CONTROL_RESUME_LSB     2
161 #define WLAN_MBOX1_DMA_TX_CONTROL_RESUME_MASK    0x00000004
162 #define WLAN_MBOX1_DMA_TX_CONTROL_RESUME_GET(x)  (((x) & WLAN_MBOX1_DMA_TX_CONTROL_RESUME_MASK) >> WLAN_MBOX1_DMA_TX_CONTROL_RESUME_LSB)
163 #define WLAN_MBOX1_DMA_TX_CONTROL_RESUME_SET(x)  (((x) << WLAN_MBOX1_DMA_TX_CONTROL_RESUME_LSB) & WLAN_MBOX1_DMA_TX_CONTROL_RESUME_MASK)
164 #define WLAN_MBOX1_DMA_TX_CONTROL_START_MSB      1
165 #define WLAN_MBOX1_DMA_TX_CONTROL_START_LSB      1
166 #define WLAN_MBOX1_DMA_TX_CONTROL_START_MASK     0x00000002
167 #define WLAN_MBOX1_DMA_TX_CONTROL_START_GET(x)   (((x) & WLAN_MBOX1_DMA_TX_CONTROL_START_MASK) >> WLAN_MBOX1_DMA_TX_CONTROL_START_LSB)
168 #define WLAN_MBOX1_DMA_TX_CONTROL_START_SET(x)   (((x) << WLAN_MBOX1_DMA_TX_CONTROL_START_LSB) & WLAN_MBOX1_DMA_TX_CONTROL_START_MASK)
169 #define WLAN_MBOX1_DMA_TX_CONTROL_STOP_MSB       0
170 #define WLAN_MBOX1_DMA_TX_CONTROL_STOP_LSB       0
171 #define WLAN_MBOX1_DMA_TX_CONTROL_STOP_MASK      0x00000001
172 #define WLAN_MBOX1_DMA_TX_CONTROL_STOP_GET(x)    (((x) & WLAN_MBOX1_DMA_TX_CONTROL_STOP_MASK) >> WLAN_MBOX1_DMA_TX_CONTROL_STOP_LSB)
173 #define WLAN_MBOX1_DMA_TX_CONTROL_STOP_SET(x)    (((x) << WLAN_MBOX1_DMA_TX_CONTROL_STOP_LSB) & WLAN_MBOX1_DMA_TX_CONTROL_STOP_MASK)
174
175 #define WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS 0x00000038
176 #define WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_OFFSET 0x00000038
177 #define WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MSB 27
178 #define WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB 2
179 #define WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
180 #define WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB)
181 #define WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_MBOX2_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK)
182
183 #define WLAN_MBOX2_DMA_RX_CONTROL_ADDRESS        0x0000003c
184 #define WLAN_MBOX2_DMA_RX_CONTROL_OFFSET         0x0000003c
185 #define WLAN_MBOX2_DMA_RX_CONTROL_RESUME_MSB     2
186 #define WLAN_MBOX2_DMA_RX_CONTROL_RESUME_LSB     2
187 #define WLAN_MBOX2_DMA_RX_CONTROL_RESUME_MASK    0x00000004
188 #define WLAN_MBOX2_DMA_RX_CONTROL_RESUME_GET(x)  (((x) & WLAN_MBOX2_DMA_RX_CONTROL_RESUME_MASK) >> WLAN_MBOX2_DMA_RX_CONTROL_RESUME_LSB)
189 #define WLAN_MBOX2_DMA_RX_CONTROL_RESUME_SET(x)  (((x) << WLAN_MBOX2_DMA_RX_CONTROL_RESUME_LSB) & WLAN_MBOX2_DMA_RX_CONTROL_RESUME_MASK)
190 #define WLAN_MBOX2_DMA_RX_CONTROL_START_MSB      1
191 #define WLAN_MBOX2_DMA_RX_CONTROL_START_LSB      1
192 #define WLAN_MBOX2_DMA_RX_CONTROL_START_MASK     0x00000002
193 #define WLAN_MBOX2_DMA_RX_CONTROL_START_GET(x)   (((x) & WLAN_MBOX2_DMA_RX_CONTROL_START_MASK) >> WLAN_MBOX2_DMA_RX_CONTROL_START_LSB)
194 #define WLAN_MBOX2_DMA_RX_CONTROL_START_SET(x)   (((x) << WLAN_MBOX2_DMA_RX_CONTROL_START_LSB) & WLAN_MBOX2_DMA_RX_CONTROL_START_MASK)
195 #define WLAN_MBOX2_DMA_RX_CONTROL_STOP_MSB       0
196 #define WLAN_MBOX2_DMA_RX_CONTROL_STOP_LSB       0
197 #define WLAN_MBOX2_DMA_RX_CONTROL_STOP_MASK      0x00000001
198 #define WLAN_MBOX2_DMA_RX_CONTROL_STOP_GET(x)    (((x) & WLAN_MBOX2_DMA_RX_CONTROL_STOP_MASK) >> WLAN_MBOX2_DMA_RX_CONTROL_STOP_LSB)
199 #define WLAN_MBOX2_DMA_RX_CONTROL_STOP_SET(x)    (((x) << WLAN_MBOX2_DMA_RX_CONTROL_STOP_LSB) & WLAN_MBOX2_DMA_RX_CONTROL_STOP_MASK)
200
201 #define WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS 0x00000040
202 #define WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_OFFSET 0x00000040
203 #define WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MSB 27
204 #define WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB 2
205 #define WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
206 #define WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB)
207 #define WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_MBOX2_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK)
208
209 #define WLAN_MBOX2_DMA_TX_CONTROL_ADDRESS        0x00000044
210 #define WLAN_MBOX2_DMA_TX_CONTROL_OFFSET         0x00000044
211 #define WLAN_MBOX2_DMA_TX_CONTROL_RESUME_MSB     2
212 #define WLAN_MBOX2_DMA_TX_CONTROL_RESUME_LSB     2
213 #define WLAN_MBOX2_DMA_TX_CONTROL_RESUME_MASK    0x00000004
214 #define WLAN_MBOX2_DMA_TX_CONTROL_RESUME_GET(x)  (((x) & WLAN_MBOX2_DMA_TX_CONTROL_RESUME_MASK) >> WLAN_MBOX2_DMA_TX_CONTROL_RESUME_LSB)
215 #define WLAN_MBOX2_DMA_TX_CONTROL_RESUME_SET(x)  (((x) << WLAN_MBOX2_DMA_TX_CONTROL_RESUME_LSB) & WLAN_MBOX2_DMA_TX_CONTROL_RESUME_MASK)
216 #define WLAN_MBOX2_DMA_TX_CONTROL_START_MSB      1
217 #define WLAN_MBOX2_DMA_TX_CONTROL_START_LSB      1
218 #define WLAN_MBOX2_DMA_TX_CONTROL_START_MASK     0x00000002
219 #define WLAN_MBOX2_DMA_TX_CONTROL_START_GET(x)   (((x) & WLAN_MBOX2_DMA_TX_CONTROL_START_MASK) >> WLAN_MBOX2_DMA_TX_CONTROL_START_LSB)
220 #define WLAN_MBOX2_DMA_TX_CONTROL_START_SET(x)   (((x) << WLAN_MBOX2_DMA_TX_CONTROL_START_LSB) & WLAN_MBOX2_DMA_TX_CONTROL_START_MASK)
221 #define WLAN_MBOX2_DMA_TX_CONTROL_STOP_MSB       0
222 #define WLAN_MBOX2_DMA_TX_CONTROL_STOP_LSB       0
223 #define WLAN_MBOX2_DMA_TX_CONTROL_STOP_MASK      0x00000001
224 #define WLAN_MBOX2_DMA_TX_CONTROL_STOP_GET(x)    (((x) & WLAN_MBOX2_DMA_TX_CONTROL_STOP_MASK) >> WLAN_MBOX2_DMA_TX_CONTROL_STOP_LSB)
225 #define WLAN_MBOX2_DMA_TX_CONTROL_STOP_SET(x)    (((x) << WLAN_MBOX2_DMA_TX_CONTROL_STOP_LSB) & WLAN_MBOX2_DMA_TX_CONTROL_STOP_MASK)
226
227 #define WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS 0x00000048
228 #define WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_OFFSET 0x00000048
229 #define WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MSB 27
230 #define WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB 2
231 #define WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
232 #define WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB)
233 #define WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_MBOX3_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK)
234
235 #define WLAN_MBOX3_DMA_RX_CONTROL_ADDRESS        0x0000004c
236 #define WLAN_MBOX3_DMA_RX_CONTROL_OFFSET         0x0000004c
237 #define WLAN_MBOX3_DMA_RX_CONTROL_RESUME_MSB     2
238 #define WLAN_MBOX3_DMA_RX_CONTROL_RESUME_LSB     2
239 #define WLAN_MBOX3_DMA_RX_CONTROL_RESUME_MASK    0x00000004
240 #define WLAN_MBOX3_DMA_RX_CONTROL_RESUME_GET(x)  (((x) & WLAN_MBOX3_DMA_RX_CONTROL_RESUME_MASK) >> WLAN_MBOX3_DMA_RX_CONTROL_RESUME_LSB)
241 #define WLAN_MBOX3_DMA_RX_CONTROL_RESUME_SET(x)  (((x) << WLAN_MBOX3_DMA_RX_CONTROL_RESUME_LSB) & WLAN_MBOX3_DMA_RX_CONTROL_RESUME_MASK)
242 #define WLAN_MBOX3_DMA_RX_CONTROL_START_MSB      1
243 #define WLAN_MBOX3_DMA_RX_CONTROL_START_LSB      1
244 #define WLAN_MBOX3_DMA_RX_CONTROL_START_MASK     0x00000002
245 #define WLAN_MBOX3_DMA_RX_CONTROL_START_GET(x)   (((x) & WLAN_MBOX3_DMA_RX_CONTROL_START_MASK) >> WLAN_MBOX3_DMA_RX_CONTROL_START_LSB)
246 #define WLAN_MBOX3_DMA_RX_CONTROL_START_SET(x)   (((x) << WLAN_MBOX3_DMA_RX_CONTROL_START_LSB) & WLAN_MBOX3_DMA_RX_CONTROL_START_MASK)
247 #define WLAN_MBOX3_DMA_RX_CONTROL_STOP_MSB       0
248 #define WLAN_MBOX3_DMA_RX_CONTROL_STOP_LSB       0
249 #define WLAN_MBOX3_DMA_RX_CONTROL_STOP_MASK      0x00000001
250 #define WLAN_MBOX3_DMA_RX_CONTROL_STOP_GET(x)    (((x) & WLAN_MBOX3_DMA_RX_CONTROL_STOP_MASK) >> WLAN_MBOX3_DMA_RX_CONTROL_STOP_LSB)
251 #define WLAN_MBOX3_DMA_RX_CONTROL_STOP_SET(x)    (((x) << WLAN_MBOX3_DMA_RX_CONTROL_STOP_LSB) & WLAN_MBOX3_DMA_RX_CONTROL_STOP_MASK)
252
253 #define WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS 0x00000050
254 #define WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_OFFSET 0x00000050
255 #define WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MSB 27
256 #define WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB 2
257 #define WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
258 #define WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB)
259 #define WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_MBOX3_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK)
260
261 #define WLAN_MBOX3_DMA_TX_CONTROL_ADDRESS        0x00000054
262 #define WLAN_MBOX3_DMA_TX_CONTROL_OFFSET         0x00000054
263 #define WLAN_MBOX3_DMA_TX_CONTROL_RESUME_MSB     2
264 #define WLAN_MBOX3_DMA_TX_CONTROL_RESUME_LSB     2
265 #define WLAN_MBOX3_DMA_TX_CONTROL_RESUME_MASK    0x00000004
266 #define WLAN_MBOX3_DMA_TX_CONTROL_RESUME_GET(x)  (((x) & WLAN_MBOX3_DMA_TX_CONTROL_RESUME_MASK) >> WLAN_MBOX3_DMA_TX_CONTROL_RESUME_LSB)
267 #define WLAN_MBOX3_DMA_TX_CONTROL_RESUME_SET(x)  (((x) << WLAN_MBOX3_DMA_TX_CONTROL_RESUME_LSB) & WLAN_MBOX3_DMA_TX_CONTROL_RESUME_MASK)
268 #define WLAN_MBOX3_DMA_TX_CONTROL_START_MSB      1
269 #define WLAN_MBOX3_DMA_TX_CONTROL_START_LSB      1
270 #define WLAN_MBOX3_DMA_TX_CONTROL_START_MASK     0x00000002
271 #define WLAN_MBOX3_DMA_TX_CONTROL_START_GET(x)   (((x) & WLAN_MBOX3_DMA_TX_CONTROL_START_MASK) >> WLAN_MBOX3_DMA_TX_CONTROL_START_LSB)
272 #define WLAN_MBOX3_DMA_TX_CONTROL_START_SET(x)   (((x) << WLAN_MBOX3_DMA_TX_CONTROL_START_LSB) & WLAN_MBOX3_DMA_TX_CONTROL_START_MASK)
273 #define WLAN_MBOX3_DMA_TX_CONTROL_STOP_MSB       0
274 #define WLAN_MBOX3_DMA_TX_CONTROL_STOP_LSB       0
275 #define WLAN_MBOX3_DMA_TX_CONTROL_STOP_MASK      0x00000001
276 #define WLAN_MBOX3_DMA_TX_CONTROL_STOP_GET(x)    (((x) & WLAN_MBOX3_DMA_TX_CONTROL_STOP_MASK) >> WLAN_MBOX3_DMA_TX_CONTROL_STOP_LSB)
277 #define WLAN_MBOX3_DMA_TX_CONTROL_STOP_SET(x)    (((x) << WLAN_MBOX3_DMA_TX_CONTROL_STOP_LSB) & WLAN_MBOX3_DMA_TX_CONTROL_STOP_MASK)
278
279 #define WLAN_MBOX_INT_STATUS_ADDRESS             0x00000058
280 #define WLAN_MBOX_INT_STATUS_OFFSET              0x00000058
281 #define WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_MSB 31
282 #define WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_LSB 28
283 #define WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_MASK 0xf0000000
284 #define WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_GET(x) (((x) & WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_MASK) >> WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_LSB)
285 #define WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_SET(x) (((x) << WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_LSB) & WLAN_MBOX_INT_STATUS_RX_DMA_COMPLETE_MASK)
286 #define WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_MSB 27
287 #define WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_LSB 24
288 #define WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_MASK 0x0f000000
289 #define WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_GET(x) (((x) & WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_MASK) >> WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_LSB)
290 #define WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_SET(x) (((x) << WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_LSB) & WLAN_MBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_MASK)
291 #define WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_MSB 23
292 #define WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_LSB 20
293 #define WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_MASK 0x00f00000
294 #define WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_GET(x) (((x) & WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_MASK) >> WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_LSB)
295 #define WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_SET(x) (((x) << WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_LSB) & WLAN_MBOX_INT_STATUS_TX_DMA_COMPLETE_MASK)
296 #define WLAN_MBOX_INT_STATUS_TX_OVERFLOW_MSB     17
297 #define WLAN_MBOX_INT_STATUS_TX_OVERFLOW_LSB     17
298 #define WLAN_MBOX_INT_STATUS_TX_OVERFLOW_MASK    0x00020000
299 #define WLAN_MBOX_INT_STATUS_TX_OVERFLOW_GET(x)  (((x) & WLAN_MBOX_INT_STATUS_TX_OVERFLOW_MASK) >> WLAN_MBOX_INT_STATUS_TX_OVERFLOW_LSB)
300 #define WLAN_MBOX_INT_STATUS_TX_OVERFLOW_SET(x)  (((x) << WLAN_MBOX_INT_STATUS_TX_OVERFLOW_LSB) & WLAN_MBOX_INT_STATUS_TX_OVERFLOW_MASK)
301 #define WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_MSB    16
302 #define WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_LSB    16
303 #define WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_MASK   0x00010000
304 #define WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_GET(x) (((x) & WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_MASK) >> WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_LSB)
305 #define WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_SET(x) (((x) << WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_LSB) & WLAN_MBOX_INT_STATUS_RX_UNDERFLOW_MASK)
306 #define WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_MSB    15
307 #define WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_LSB    12
308 #define WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_MASK   0x0000f000
309 #define WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_GET(x) (((x) & WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_MASK) >> WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_LSB)
310 #define WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_SET(x) (((x) << WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_LSB) & WLAN_MBOX_INT_STATUS_TX_NOT_EMPTY_MASK)
311 #define WLAN_MBOX_INT_STATUS_RX_NOT_FULL_MSB     11
312 #define WLAN_MBOX_INT_STATUS_RX_NOT_FULL_LSB     8
313 #define WLAN_MBOX_INT_STATUS_RX_NOT_FULL_MASK    0x00000f00
314 #define WLAN_MBOX_INT_STATUS_RX_NOT_FULL_GET(x)  (((x) & WLAN_MBOX_INT_STATUS_RX_NOT_FULL_MASK) >> WLAN_MBOX_INT_STATUS_RX_NOT_FULL_LSB)
315 #define WLAN_MBOX_INT_STATUS_RX_NOT_FULL_SET(x)  (((x) << WLAN_MBOX_INT_STATUS_RX_NOT_FULL_LSB) & WLAN_MBOX_INT_STATUS_RX_NOT_FULL_MASK)
316 #define WLAN_MBOX_INT_STATUS_HOST_MSB            7
317 #define WLAN_MBOX_INT_STATUS_HOST_LSB            0
318 #define WLAN_MBOX_INT_STATUS_HOST_MASK           0x000000ff
319 #define WLAN_MBOX_INT_STATUS_HOST_GET(x)         (((x) & WLAN_MBOX_INT_STATUS_HOST_MASK) >> WLAN_MBOX_INT_STATUS_HOST_LSB)
320 #define WLAN_MBOX_INT_STATUS_HOST_SET(x)         (((x) << WLAN_MBOX_INT_STATUS_HOST_LSB) & WLAN_MBOX_INT_STATUS_HOST_MASK)
321
322 #define WLAN_MBOX_INT_ENABLE_ADDRESS             0x0000005c
323 #define WLAN_MBOX_INT_ENABLE_OFFSET              0x0000005c
324 #define WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_MSB 31
325 #define WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_LSB 28
326 #define WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_MASK 0xf0000000
327 #define WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_GET(x) (((x) & WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_MASK) >> WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_LSB)
328 #define WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_SET(x) (((x) << WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_LSB) & WLAN_MBOX_INT_ENABLE_RX_DMA_COMPLETE_MASK)
329 #define WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_MSB 27
330 #define WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_LSB 24
331 #define WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_MASK 0x0f000000
332 #define WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_GET(x) (((x) & WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_MASK) >> WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_LSB)
333 #define WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_SET(x) (((x) << WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_LSB) & WLAN_MBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_MASK)
334 #define WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_MSB 23
335 #define WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_LSB 20
336 #define WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_MASK 0x00f00000
337 #define WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_GET(x) (((x) & WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_MASK) >> WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_LSB)
338 #define WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_SET(x) (((x) << WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_LSB) & WLAN_MBOX_INT_ENABLE_TX_DMA_COMPLETE_MASK)
339 #define WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_MSB     17
340 #define WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_LSB     17
341 #define WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_MASK    0x00020000
342 #define WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_GET(x)  (((x) & WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_MASK) >> WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_LSB)
343 #define WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_SET(x)  (((x) << WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_LSB) & WLAN_MBOX_INT_ENABLE_TX_OVERFLOW_MASK)
344 #define WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_MSB    16
345 #define WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_LSB    16
346 #define WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_MASK   0x00010000
347 #define WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_GET(x) (((x) & WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_MASK) >> WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_LSB)
348 #define WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_SET(x) (((x) << WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_LSB) & WLAN_MBOX_INT_ENABLE_RX_UNDERFLOW_MASK)
349 #define WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_MSB    15
350 #define WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_LSB    12
351 #define WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_MASK   0x0000f000
352 #define WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_GET(x) (((x) & WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_MASK) >> WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_LSB)
353 #define WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_SET(x) (((x) << WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_LSB) & WLAN_MBOX_INT_ENABLE_TX_NOT_EMPTY_MASK)
354 #define WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_MSB     11
355 #define WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_LSB     8
356 #define WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_MASK    0x00000f00
357 #define WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_GET(x)  (((x) & WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_MASK) >> WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_LSB)
358 #define WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_SET(x)  (((x) << WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_LSB) & WLAN_MBOX_INT_ENABLE_RX_NOT_FULL_MASK)
359 #define WLAN_MBOX_INT_ENABLE_HOST_MSB            7
360 #define WLAN_MBOX_INT_ENABLE_HOST_LSB            0
361 #define WLAN_MBOX_INT_ENABLE_HOST_MASK           0x000000ff
362 #define WLAN_MBOX_INT_ENABLE_HOST_GET(x)         (((x) & WLAN_MBOX_INT_ENABLE_HOST_MASK) >> WLAN_MBOX_INT_ENABLE_HOST_LSB)
363 #define WLAN_MBOX_INT_ENABLE_HOST_SET(x)         (((x) << WLAN_MBOX_INT_ENABLE_HOST_LSB) & WLAN_MBOX_INT_ENABLE_HOST_MASK)
364
365 #define WLAN_INT_HOST_ADDRESS                    0x00000060
366 #define WLAN_INT_HOST_OFFSET                     0x00000060
367 #define WLAN_INT_HOST_VECTOR_MSB                 7
368 #define WLAN_INT_HOST_VECTOR_LSB                 0
369 #define WLAN_INT_HOST_VECTOR_MASK                0x000000ff
370 #define WLAN_INT_HOST_VECTOR_GET(x)              (((x) & WLAN_INT_HOST_VECTOR_MASK) >> WLAN_INT_HOST_VECTOR_LSB)
371 #define WLAN_INT_HOST_VECTOR_SET(x)              (((x) << WLAN_INT_HOST_VECTOR_LSB) & WLAN_INT_HOST_VECTOR_MASK)
372
373 #define WLAN_LOCAL_COUNT_ADDRESS                 0x00000080
374 #define WLAN_LOCAL_COUNT_OFFSET                  0x00000080
375 #define WLAN_LOCAL_COUNT_VALUE_MSB               7
376 #define WLAN_LOCAL_COUNT_VALUE_LSB               0
377 #define WLAN_LOCAL_COUNT_VALUE_MASK              0x000000ff
378 #define WLAN_LOCAL_COUNT_VALUE_GET(x)            (((x) & WLAN_LOCAL_COUNT_VALUE_MASK) >> WLAN_LOCAL_COUNT_VALUE_LSB)
379 #define WLAN_LOCAL_COUNT_VALUE_SET(x)            (((x) << WLAN_LOCAL_COUNT_VALUE_LSB) & WLAN_LOCAL_COUNT_VALUE_MASK)
380
381 #define WLAN_COUNT_INC_ADDRESS                   0x000000a0
382 #define WLAN_COUNT_INC_OFFSET                    0x000000a0
383 #define WLAN_COUNT_INC_VALUE_MSB                 7
384 #define WLAN_COUNT_INC_VALUE_LSB                 0
385 #define WLAN_COUNT_INC_VALUE_MASK                0x000000ff
386 #define WLAN_COUNT_INC_VALUE_GET(x)              (((x) & WLAN_COUNT_INC_VALUE_MASK) >> WLAN_COUNT_INC_VALUE_LSB)
387 #define WLAN_COUNT_INC_VALUE_SET(x)              (((x) << WLAN_COUNT_INC_VALUE_LSB) & WLAN_COUNT_INC_VALUE_MASK)
388
389 #define WLAN_LOCAL_SCRATCH_ADDRESS               0x000000c0
390 #define WLAN_LOCAL_SCRATCH_OFFSET                0x000000c0
391 #define WLAN_LOCAL_SCRATCH_VALUE_MSB             7
392 #define WLAN_LOCAL_SCRATCH_VALUE_LSB             0
393 #define WLAN_LOCAL_SCRATCH_VALUE_MASK            0x000000ff
394 #define WLAN_LOCAL_SCRATCH_VALUE_GET(x)          (((x) & WLAN_LOCAL_SCRATCH_VALUE_MASK) >> WLAN_LOCAL_SCRATCH_VALUE_LSB)
395 #define WLAN_LOCAL_SCRATCH_VALUE_SET(x)          (((x) << WLAN_LOCAL_SCRATCH_VALUE_LSB) & WLAN_LOCAL_SCRATCH_VALUE_MASK)
396
397 #define WLAN_USE_LOCAL_BUS_ADDRESS               0x000000e0
398 #define WLAN_USE_LOCAL_BUS_OFFSET                0x000000e0
399 #define WLAN_USE_LOCAL_BUS_PIN_INIT_MSB          0
400 #define WLAN_USE_LOCAL_BUS_PIN_INIT_LSB          0
401 #define WLAN_USE_LOCAL_BUS_PIN_INIT_MASK         0x00000001
402 #define WLAN_USE_LOCAL_BUS_PIN_INIT_GET(x)       (((x) & WLAN_USE_LOCAL_BUS_PIN_INIT_MASK) >> WLAN_USE_LOCAL_BUS_PIN_INIT_LSB)
403 #define WLAN_USE_LOCAL_BUS_PIN_INIT_SET(x)       (((x) << WLAN_USE_LOCAL_BUS_PIN_INIT_LSB) & WLAN_USE_LOCAL_BUS_PIN_INIT_MASK)
404
405 #define WLAN_SDIO_CONFIG_ADDRESS                 0x000000e4
406 #define WLAN_SDIO_CONFIG_OFFSET                  0x000000e4
407 #define WLAN_SDIO_CONFIG_CCCR_IOR1_MSB           0
408 #define WLAN_SDIO_CONFIG_CCCR_IOR1_LSB           0
409 #define WLAN_SDIO_CONFIG_CCCR_IOR1_MASK          0x00000001
410 #define WLAN_SDIO_CONFIG_CCCR_IOR1_GET(x)        (((x) & WLAN_SDIO_CONFIG_CCCR_IOR1_MASK) >> WLAN_SDIO_CONFIG_CCCR_IOR1_LSB)
411 #define WLAN_SDIO_CONFIG_CCCR_IOR1_SET(x)        (((x) << WLAN_SDIO_CONFIG_CCCR_IOR1_LSB) & WLAN_SDIO_CONFIG_CCCR_IOR1_MASK)
412
413 #define WLAN_MBOX_DEBUG_ADDRESS                  0x000000e8
414 #define WLAN_MBOX_DEBUG_OFFSET                   0x000000e8
415 #define WLAN_MBOX_DEBUG_SEL_MSB                  2
416 #define WLAN_MBOX_DEBUG_SEL_LSB                  0
417 #define WLAN_MBOX_DEBUG_SEL_MASK                 0x00000007
418 #define WLAN_MBOX_DEBUG_SEL_GET(x)               (((x) & WLAN_MBOX_DEBUG_SEL_MASK) >> WLAN_MBOX_DEBUG_SEL_LSB)
419 #define WLAN_MBOX_DEBUG_SEL_SET(x)               (((x) << WLAN_MBOX_DEBUG_SEL_LSB) & WLAN_MBOX_DEBUG_SEL_MASK)
420
421 #define WLAN_MBOX_FIFO_RESET_ADDRESS             0x000000ec
422 #define WLAN_MBOX_FIFO_RESET_OFFSET              0x000000ec
423 #define WLAN_MBOX_FIFO_RESET_INIT_MSB            0
424 #define WLAN_MBOX_FIFO_RESET_INIT_LSB            0
425 #define WLAN_MBOX_FIFO_RESET_INIT_MASK           0x00000001
426 #define WLAN_MBOX_FIFO_RESET_INIT_GET(x)         (((x) & WLAN_MBOX_FIFO_RESET_INIT_MASK) >> WLAN_MBOX_FIFO_RESET_INIT_LSB)
427 #define WLAN_MBOX_FIFO_RESET_INIT_SET(x)         (((x) << WLAN_MBOX_FIFO_RESET_INIT_LSB) & WLAN_MBOX_FIFO_RESET_INIT_MASK)
428
429 #define WLAN_MBOX_TXFIFO_POP_ADDRESS             0x000000f0
430 #define WLAN_MBOX_TXFIFO_POP_OFFSET              0x000000f0
431 #define WLAN_MBOX_TXFIFO_POP_DATA_MSB            0
432 #define WLAN_MBOX_TXFIFO_POP_DATA_LSB            0
433 #define WLAN_MBOX_TXFIFO_POP_DATA_MASK           0x00000001
434 #define WLAN_MBOX_TXFIFO_POP_DATA_GET(x)         (((x) & WLAN_MBOX_TXFIFO_POP_DATA_MASK) >> WLAN_MBOX_TXFIFO_POP_DATA_LSB)
435 #define WLAN_MBOX_TXFIFO_POP_DATA_SET(x)         (((x) << WLAN_MBOX_TXFIFO_POP_DATA_LSB) & WLAN_MBOX_TXFIFO_POP_DATA_MASK)
436
437 #define WLAN_MBOX_RXFIFO_POP_ADDRESS             0x00000100
438 #define WLAN_MBOX_RXFIFO_POP_OFFSET              0x00000100
439 #define WLAN_MBOX_RXFIFO_POP_DATA_MSB            0
440 #define WLAN_MBOX_RXFIFO_POP_DATA_LSB            0
441 #define WLAN_MBOX_RXFIFO_POP_DATA_MASK           0x00000001
442 #define WLAN_MBOX_RXFIFO_POP_DATA_GET(x)         (((x) & WLAN_MBOX_RXFIFO_POP_DATA_MASK) >> WLAN_MBOX_RXFIFO_POP_DATA_LSB)
443 #define WLAN_MBOX_RXFIFO_POP_DATA_SET(x)         (((x) << WLAN_MBOX_RXFIFO_POP_DATA_LSB) & WLAN_MBOX_RXFIFO_POP_DATA_MASK)
444
445 #define WLAN_SDIO_DEBUG_ADDRESS                  0x00000110
446 #define WLAN_SDIO_DEBUG_OFFSET                   0x00000110
447 #define WLAN_SDIO_DEBUG_SEL_MSB                  3
448 #define WLAN_SDIO_DEBUG_SEL_LSB                  0
449 #define WLAN_SDIO_DEBUG_SEL_MASK                 0x0000000f
450 #define WLAN_SDIO_DEBUG_SEL_GET(x)               (((x) & WLAN_SDIO_DEBUG_SEL_MASK) >> WLAN_SDIO_DEBUG_SEL_LSB)
451 #define WLAN_SDIO_DEBUG_SEL_SET(x)               (((x) << WLAN_SDIO_DEBUG_SEL_LSB) & WLAN_SDIO_DEBUG_SEL_MASK)
452
453 #define WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS 0x00000114
454 #define WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_OFFSET 0x00000114
455 #define WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MSB 27
456 #define WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB 2
457 #define WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
458 #define WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB)
459 #define WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_GMBOX0_DMA_RX_DESCRIPTOR_BASE_ADDRESS_MASK)
460
461 #define WLAN_GMBOX0_DMA_RX_CONTROL_ADDRESS       0x00000118
462 #define WLAN_GMBOX0_DMA_RX_CONTROL_OFFSET        0x00000118
463 #define WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_MSB    2
464 #define WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_LSB    2
465 #define WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_MASK   0x00000004
466 #define WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_GET(x) (((x) & WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_MASK) >> WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_LSB)
467 #define WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_SET(x) (((x) << WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_LSB) & WLAN_GMBOX0_DMA_RX_CONTROL_RESUME_MASK)
468 #define WLAN_GMBOX0_DMA_RX_CONTROL_START_MSB     1
469 #define WLAN_GMBOX0_DMA_RX_CONTROL_START_LSB     1
470 #define WLAN_GMBOX0_DMA_RX_CONTROL_START_MASK    0x00000002
471 #define WLAN_GMBOX0_DMA_RX_CONTROL_START_GET(x)  (((x) & WLAN_GMBOX0_DMA_RX_CONTROL_START_MASK) >> WLAN_GMBOX0_DMA_RX_CONTROL_START_LSB)
472 #define WLAN_GMBOX0_DMA_RX_CONTROL_START_SET(x)  (((x) << WLAN_GMBOX0_DMA_RX_CONTROL_START_LSB) & WLAN_GMBOX0_DMA_RX_CONTROL_START_MASK)
473 #define WLAN_GMBOX0_DMA_RX_CONTROL_STOP_MSB      0
474 #define WLAN_GMBOX0_DMA_RX_CONTROL_STOP_LSB      0
475 #define WLAN_GMBOX0_DMA_RX_CONTROL_STOP_MASK     0x00000001
476 #define WLAN_GMBOX0_DMA_RX_CONTROL_STOP_GET(x)   (((x) & WLAN_GMBOX0_DMA_RX_CONTROL_STOP_MASK) >> WLAN_GMBOX0_DMA_RX_CONTROL_STOP_LSB)
477 #define WLAN_GMBOX0_DMA_RX_CONTROL_STOP_SET(x)   (((x) << WLAN_GMBOX0_DMA_RX_CONTROL_STOP_LSB) & WLAN_GMBOX0_DMA_RX_CONTROL_STOP_MASK)
478
479 #define WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS 0x0000011c
480 #define WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_OFFSET 0x0000011c
481 #define WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MSB 27
482 #define WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB 2
483 #define WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK 0x0ffffffc
484 #define WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_GET(x) (((x) & WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK) >> WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB)
485 #define WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_SET(x) (((x) << WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_LSB) & WLAN_GMBOX0_DMA_TX_DESCRIPTOR_BASE_ADDRESS_MASK)
486
487 #define WLAN_GMBOX0_DMA_TX_CONTROL_ADDRESS       0x00000120
488 #define WLAN_GMBOX0_DMA_TX_CONTROL_OFFSET        0x00000120
489 #define WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_MSB    2
490 #define WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_LSB    2
491 #define WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_MASK   0x00000004
492 #define WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_GET(x) (((x) & WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_MASK) >> WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_LSB)
493 #define WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_SET(x) (((x) << WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_LSB) & WLAN_GMBOX0_DMA_TX_CONTROL_RESUME_MASK)
494 #define WLAN_GMBOX0_DMA_TX_CONTROL_START_MSB     1
495 #define WLAN_GMBOX0_DMA_TX_CONTROL_START_LSB     1
496 #define WLAN_GMBOX0_DMA_TX_CONTROL_START_MASK    0x00000002
497 #define WLAN_GMBOX0_DMA_TX_CONTROL_START_GET(x)  (((x) & WLAN_GMBOX0_DMA_TX_CONTROL_START_MASK) >> WLAN_GMBOX0_DMA_TX_CONTROL_START_LSB)
498 #define WLAN_GMBOX0_DMA_TX_CONTROL_START_SET(x)  (((x) << WLAN_GMBOX0_DMA_TX_CONTROL_START_LSB) & WLAN_GMBOX0_DMA_TX_CONTROL_START_MASK)
499 #define WLAN_GMBOX0_DMA_TX_CONTROL_STOP_MSB      0
500 #define WLAN_GMBOX0_DMA_TX_CONTROL_STOP_LSB      0
501 #define WLAN_GMBOX0_DMA_TX_CONTROL_STOP_MASK     0x00000001
502 #define WLAN_GMBOX0_DMA_TX_CONTROL_STOP_GET(x)   (((x) & WLAN_GMBOX0_DMA_TX_CONTROL_STOP_MASK) >> WLAN_GMBOX0_DMA_TX_CONTROL_STOP_LSB)
503 #define WLAN_GMBOX0_DMA_TX_CONTROL_STOP_SET(x)   (((x) << WLAN_GMBOX0_DMA_TX_CONTROL_STOP_LSB) & WLAN_GMBOX0_DMA_TX_CONTROL_STOP_MASK)
504
505 #define WLAN_GMBOX_INT_STATUS_ADDRESS            0x00000124
506 #define WLAN_GMBOX_INT_STATUS_OFFSET             0x00000124
507 #define WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_MSB    6
508 #define WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_LSB    6
509 #define WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_MASK   0x00000040
510 #define WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_GET(x) (((x) & WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_MASK) >> WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_LSB)
511 #define WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_SET(x) (((x) << WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_LSB) & WLAN_GMBOX_INT_STATUS_TX_OVERFLOW_MASK)
512 #define WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_MSB   5
513 #define WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_LSB   5
514 #define WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_MASK  0x00000020
515 #define WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_GET(x) (((x) & WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_MASK) >> WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_LSB)
516 #define WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_SET(x) (((x) << WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_LSB) & WLAN_GMBOX_INT_STATUS_RX_UNDERFLOW_MASK)
517 #define WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_MSB 4
518 #define WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_LSB 4
519 #define WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_MASK 0x00000010
520 #define WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_GET(x) (((x) & WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_MASK) >> WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_LSB)
521 #define WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_SET(x) (((x) << WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_LSB) & WLAN_GMBOX_INT_STATUS_RX_DMA_COMPLETE_MASK)
522 #define WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_MSB 3
523 #define WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_LSB 3
524 #define WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_MASK 0x00000008
525 #define WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_GET(x) (((x) & WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_MASK) >> WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_LSB)
526 #define WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_SET(x) (((x) << WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_LSB) & WLAN_GMBOX_INT_STATUS_TX_DMA_EOM_COMPLETE_MASK)
527 #define WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_MSB 2
528 #define WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_LSB 2
529 #define WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_MASK 0x00000004
530 #define WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_GET(x) (((x) & WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_MASK) >> WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_LSB)
531 #define WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_SET(x) (((x) << WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_LSB) & WLAN_GMBOX_INT_STATUS_TX_DMA_COMPLETE_MASK)
532 #define WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_MSB   1
533 #define WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_LSB   1
534 #define WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_MASK  0x00000002
535 #define WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_GET(x) (((x) & WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_MASK) >> WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_LSB)
536 #define WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_SET(x) (((x) << WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_LSB) & WLAN_GMBOX_INT_STATUS_TX_NOT_EMPTY_MASK)
537 #define WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_MSB    0
538 #define WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_LSB    0
539 #define WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_MASK   0x00000001
540 #define WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_GET(x) (((x) & WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_MASK) >> WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_LSB)
541 #define WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_SET(x) (((x) << WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_LSB) & WLAN_GMBOX_INT_STATUS_RX_NOT_FULL_MASK)
542
543 #define WLAN_GMBOX_INT_ENABLE_ADDRESS            0x00000128
544 #define WLAN_GMBOX_INT_ENABLE_OFFSET             0x00000128
545 #define WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_MSB    6
546 #define WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_LSB    6
547 #define WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_MASK   0x00000040
548 #define WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_GET(x) (((x) & WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_MASK) >> WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_LSB)
549 #define WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_SET(x) (((x) << WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_LSB) & WLAN_GMBOX_INT_ENABLE_TX_OVERFLOW_MASK)
550 #define WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_MSB   5
551 #define WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_LSB   5
552 #define WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_MASK  0x00000020
553 #define WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_GET(x) (((x) & WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_MASK) >> WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_LSB)
554 #define WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_SET(x) (((x) << WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_LSB) & WLAN_GMBOX_INT_ENABLE_RX_UNDERFLOW_MASK)
555 #define WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_MSB 4
556 #define WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_LSB 4
557 #define WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_MASK 0x00000010
558 #define WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_GET(x) (((x) & WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_MASK) >> WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_LSB)
559 #define WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_SET(x) (((x) << WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_LSB) & WLAN_GMBOX_INT_ENABLE_RX_DMA_COMPLETE_MASK)
560 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_MSB 3
561 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_LSB 3
562 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_MASK 0x00000008
563 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_GET(x) (((x) & WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_MASK) >> WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_LSB)
564 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_SET(x) (((x) << WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_LSB) & WLAN_GMBOX_INT_ENABLE_TX_DMA_EOM_COMPLETE_MASK)
565 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_MSB 2
566 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_LSB 2
567 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_MASK 0x00000004
568 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_GET(x) (((x) & WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_MASK) >> WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_LSB)
569 #define WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_SET(x) (((x) << WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_LSB) & WLAN_GMBOX_INT_ENABLE_TX_DMA_COMPLETE_MASK)
570 #define WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_MSB   1
571 #define WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_LSB   1
572 #define WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_MASK  0x00000002
573 #define WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_GET(x) (((x) & WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_MASK) >> WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_LSB)
574 #define WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_SET(x) (((x) << WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_LSB) & WLAN_GMBOX_INT_ENABLE_TX_NOT_EMPTY_MASK)
575 #define WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_MSB    0
576 #define WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_LSB    0
577 #define WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_MASK   0x00000001
578 #define WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_GET(x) (((x) & WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_MASK) >> WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_LSB)
579 #define WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_SET(x) (((x) << WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_LSB) & WLAN_GMBOX_INT_ENABLE_RX_NOT_FULL_MASK)
580
581 #define WLAN_HOST_IF_WINDOW_ADDRESS              0x00002000
582 #define WLAN_HOST_IF_WINDOW_OFFSET               0x00002000
583 #define WLAN_HOST_IF_WINDOW_DATA_MSB             7
584 #define WLAN_HOST_IF_WINDOW_DATA_LSB             0
585 #define WLAN_HOST_IF_WINDOW_DATA_MASK            0x000000ff
586 #define WLAN_HOST_IF_WINDOW_DATA_GET(x)          (((x) & WLAN_HOST_IF_WINDOW_DATA_MASK) >> WLAN_HOST_IF_WINDOW_DATA_LSB)
587 #define WLAN_HOST_IF_WINDOW_DATA_SET(x)          (((x) << WLAN_HOST_IF_WINDOW_DATA_LSB) & WLAN_HOST_IF_WINDOW_DATA_MASK)
588
589
590 #ifndef __ASSEMBLER__
591
592 typedef struct mbox_wlan_reg_reg_s {
593   volatile unsigned int wlan_mbox_fifo[4];
594   volatile unsigned int wlan_mbox_fifo_status;
595   volatile unsigned int wlan_mbox_dma_policy;
596   volatile unsigned int wlan_mbox0_dma_rx_descriptor_base;
597   volatile unsigned int wlan_mbox0_dma_rx_control;
598   volatile unsigned int wlan_mbox0_dma_tx_descriptor_base;
599   volatile unsigned int wlan_mbox0_dma_tx_control;
600   volatile unsigned int wlan_mbox1_dma_rx_descriptor_base;
601   volatile unsigned int wlan_mbox1_dma_rx_control;
602   volatile unsigned int wlan_mbox1_dma_tx_descriptor_base;
603   volatile unsigned int wlan_mbox1_dma_tx_control;
604   volatile unsigned int wlan_mbox2_dma_rx_descriptor_base;
605   volatile unsigned int wlan_mbox2_dma_rx_control;
606   volatile unsigned int wlan_mbox2_dma_tx_descriptor_base;
607   volatile unsigned int wlan_mbox2_dma_tx_control;
608   volatile unsigned int wlan_mbox3_dma_rx_descriptor_base;
609   volatile unsigned int wlan_mbox3_dma_rx_control;
610   volatile unsigned int wlan_mbox3_dma_tx_descriptor_base;
611   volatile unsigned int wlan_mbox3_dma_tx_control;
612   volatile unsigned int wlan_mbox_int_status;
613   volatile unsigned int wlan_mbox_int_enable;
614   volatile unsigned int wlan_int_host;
615   unsigned char pad0[28]; /* pad to 0x80 */
616   volatile unsigned int wlan_local_count[8];
617   volatile unsigned int wlan_count_inc[8];
618   volatile unsigned int wlan_local_scratch[8];
619   volatile unsigned int wlan_use_local_bus;
620   volatile unsigned int wlan_sdio_config;
621   volatile unsigned int wlan_mbox_debug;
622   volatile unsigned int wlan_mbox_fifo_reset;
623   volatile unsigned int wlan_mbox_txfifo_pop[4];
624   volatile unsigned int wlan_mbox_rxfifo_pop[4];
625   volatile unsigned int wlan_sdio_debug;
626   volatile unsigned int wlan_gmbox0_dma_rx_descriptor_base;
627   volatile unsigned int wlan_gmbox0_dma_rx_control;
628   volatile unsigned int wlan_gmbox0_dma_tx_descriptor_base;
629   volatile unsigned int wlan_gmbox0_dma_tx_control;
630   volatile unsigned int wlan_gmbox_int_status;
631   volatile unsigned int wlan_gmbox_int_enable;
632   unsigned char pad1[7892]; /* pad to 0x2000 */
633   volatile unsigned int wlan_host_if_window[2048];
634 } mbox_wlan_reg_reg_t;
635
636 #endif /* __ASSEMBLER__ */
637
638 #endif /* _MBOX_WLAN_REG_H_ */