Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6
[pandora-kernel.git] / drivers / staging / ath6kl / include / common / AR6002 / hw4.0 / hw / rdma_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 _RDMA_REG_REG_H_
25 #define _RDMA_REG_REG_H_
26
27 #define DMA_CONFIG_ADDRESS                       0x00000000
28 #define DMA_CONFIG_OFFSET                        0x00000000
29 #define DMA_CONFIG_WLBB_PWD_EN_MSB               4
30 #define DMA_CONFIG_WLBB_PWD_EN_LSB               4
31 #define DMA_CONFIG_WLBB_PWD_EN_MASK              0x00000010
32 #define DMA_CONFIG_WLBB_PWD_EN_GET(x)            (((x) & DMA_CONFIG_WLBB_PWD_EN_MASK) >> DMA_CONFIG_WLBB_PWD_EN_LSB)
33 #define DMA_CONFIG_WLBB_PWD_EN_SET(x)            (((x) << DMA_CONFIG_WLBB_PWD_EN_LSB) & DMA_CONFIG_WLBB_PWD_EN_MASK)
34 #define DMA_CONFIG_WLMAC_PWD_EN_MSB              3
35 #define DMA_CONFIG_WLMAC_PWD_EN_LSB              3
36 #define DMA_CONFIG_WLMAC_PWD_EN_MASK             0x00000008
37 #define DMA_CONFIG_WLMAC_PWD_EN_GET(x)           (((x) & DMA_CONFIG_WLMAC_PWD_EN_MASK) >> DMA_CONFIG_WLMAC_PWD_EN_LSB)
38 #define DMA_CONFIG_WLMAC_PWD_EN_SET(x)           (((x) << DMA_CONFIG_WLMAC_PWD_EN_LSB) & DMA_CONFIG_WLMAC_PWD_EN_MASK)
39 #define DMA_CONFIG_ENABLE_RETENTION_MSB          2
40 #define DMA_CONFIG_ENABLE_RETENTION_LSB          2
41 #define DMA_CONFIG_ENABLE_RETENTION_MASK         0x00000004
42 #define DMA_CONFIG_ENABLE_RETENTION_GET(x)       (((x) & DMA_CONFIG_ENABLE_RETENTION_MASK) >> DMA_CONFIG_ENABLE_RETENTION_LSB)
43 #define DMA_CONFIG_ENABLE_RETENTION_SET(x)       (((x) << DMA_CONFIG_ENABLE_RETENTION_LSB) & DMA_CONFIG_ENABLE_RETENTION_MASK)
44 #define DMA_CONFIG_RTC_PRIORITY_MSB              1
45 #define DMA_CONFIG_RTC_PRIORITY_LSB              1
46 #define DMA_CONFIG_RTC_PRIORITY_MASK             0x00000002
47 #define DMA_CONFIG_RTC_PRIORITY_GET(x)           (((x) & DMA_CONFIG_RTC_PRIORITY_MASK) >> DMA_CONFIG_RTC_PRIORITY_LSB)
48 #define DMA_CONFIG_RTC_PRIORITY_SET(x)           (((x) << DMA_CONFIG_RTC_PRIORITY_LSB) & DMA_CONFIG_RTC_PRIORITY_MASK)
49 #define DMA_CONFIG_DMA_TYPE_MSB                  0
50 #define DMA_CONFIG_DMA_TYPE_LSB                  0
51 #define DMA_CONFIG_DMA_TYPE_MASK                 0x00000001
52 #define DMA_CONFIG_DMA_TYPE_GET(x)               (((x) & DMA_CONFIG_DMA_TYPE_MASK) >> DMA_CONFIG_DMA_TYPE_LSB)
53 #define DMA_CONFIG_DMA_TYPE_SET(x)               (((x) << DMA_CONFIG_DMA_TYPE_LSB) & DMA_CONFIG_DMA_TYPE_MASK)
54
55 #define DMA_CONTROL_ADDRESS                      0x00000004
56 #define DMA_CONTROL_OFFSET                       0x00000004
57 #define DMA_CONTROL_START_MSB                    1
58 #define DMA_CONTROL_START_LSB                    1
59 #define DMA_CONTROL_START_MASK                   0x00000002
60 #define DMA_CONTROL_START_GET(x)                 (((x) & DMA_CONTROL_START_MASK) >> DMA_CONTROL_START_LSB)
61 #define DMA_CONTROL_START_SET(x)                 (((x) << DMA_CONTROL_START_LSB) & DMA_CONTROL_START_MASK)
62 #define DMA_CONTROL_STOP_MSB                     0
63 #define DMA_CONTROL_STOP_LSB                     0
64 #define DMA_CONTROL_STOP_MASK                    0x00000001
65 #define DMA_CONTROL_STOP_GET(x)                  (((x) & DMA_CONTROL_STOP_MASK) >> DMA_CONTROL_STOP_LSB)
66 #define DMA_CONTROL_STOP_SET(x)                  (((x) << DMA_CONTROL_STOP_LSB) & DMA_CONTROL_STOP_MASK)
67
68 #define DMA_SRC_ADDRESS                          0x00000008
69 #define DMA_SRC_OFFSET                           0x00000008
70 #define DMA_SRC_ADDR_MSB                         31
71 #define DMA_SRC_ADDR_LSB                         2
72 #define DMA_SRC_ADDR_MASK                        0xfffffffc
73 #define DMA_SRC_ADDR_GET(x)                      (((x) & DMA_SRC_ADDR_MASK) >> DMA_SRC_ADDR_LSB)
74 #define DMA_SRC_ADDR_SET(x)                      (((x) << DMA_SRC_ADDR_LSB) & DMA_SRC_ADDR_MASK)
75
76 #define DMA_DEST_ADDRESS                         0x0000000c
77 #define DMA_DEST_OFFSET                          0x0000000c
78 #define DMA_DEST_ADDR_MSB                        31
79 #define DMA_DEST_ADDR_LSB                        2
80 #define DMA_DEST_ADDR_MASK                       0xfffffffc
81 #define DMA_DEST_ADDR_GET(x)                     (((x) & DMA_DEST_ADDR_MASK) >> DMA_DEST_ADDR_LSB)
82 #define DMA_DEST_ADDR_SET(x)                     (((x) << DMA_DEST_ADDR_LSB) & DMA_DEST_ADDR_MASK)
83
84 #define DMA_LENGTH_ADDRESS                       0x00000010
85 #define DMA_LENGTH_OFFSET                        0x00000010
86 #define DMA_LENGTH_WORDS_MSB                     11
87 #define DMA_LENGTH_WORDS_LSB                     0
88 #define DMA_LENGTH_WORDS_MASK                    0x00000fff
89 #define DMA_LENGTH_WORDS_GET(x)                  (((x) & DMA_LENGTH_WORDS_MASK) >> DMA_LENGTH_WORDS_LSB)
90 #define DMA_LENGTH_WORDS_SET(x)                  (((x) << DMA_LENGTH_WORDS_LSB) & DMA_LENGTH_WORDS_MASK)
91
92 #define VMC_BASE_ADDRESS                         0x00000014
93 #define VMC_BASE_OFFSET                          0x00000014
94 #define VMC_BASE_ADDR_MSB                        31
95 #define VMC_BASE_ADDR_LSB                        2
96 #define VMC_BASE_ADDR_MASK                       0xfffffffc
97 #define VMC_BASE_ADDR_GET(x)                     (((x) & VMC_BASE_ADDR_MASK) >> VMC_BASE_ADDR_LSB)
98 #define VMC_BASE_ADDR_SET(x)                     (((x) << VMC_BASE_ADDR_LSB) & VMC_BASE_ADDR_MASK)
99
100 #define INDIRECT_REG_ADDRESS                     0x00000018
101 #define INDIRECT_REG_OFFSET                      0x00000018
102 #define INDIRECT_REG_ID_MSB                      31
103 #define INDIRECT_REG_ID_LSB                      2
104 #define INDIRECT_REG_ID_MASK                     0xfffffffc
105 #define INDIRECT_REG_ID_GET(x)                   (((x) & INDIRECT_REG_ID_MASK) >> INDIRECT_REG_ID_LSB)
106 #define INDIRECT_REG_ID_SET(x)                   (((x) << INDIRECT_REG_ID_LSB) & INDIRECT_REG_ID_MASK)
107
108 #define INDIRECT_RETURN_ADDRESS                  0x0000001c
109 #define INDIRECT_RETURN_OFFSET                   0x0000001c
110 #define INDIRECT_RETURN_ADDR_MSB                 31
111 #define INDIRECT_RETURN_ADDR_LSB                 2
112 #define INDIRECT_RETURN_ADDR_MASK                0xfffffffc
113 #define INDIRECT_RETURN_ADDR_GET(x)              (((x) & INDIRECT_RETURN_ADDR_MASK) >> INDIRECT_RETURN_ADDR_LSB)
114 #define INDIRECT_RETURN_ADDR_SET(x)              (((x) << INDIRECT_RETURN_ADDR_LSB) & INDIRECT_RETURN_ADDR_MASK)
115
116 #define RDMA_REGION_0__ADDRESS                   0x00000020
117 #define RDMA_REGION_0__OFFSET                    0x00000020
118 #define RDMA_REGION_0__ADDR_MSB                  31
119 #define RDMA_REGION_0__ADDR_LSB                  13
120 #define RDMA_REGION_0__ADDR_MASK                 0xffffe000
121 #define RDMA_REGION_0__ADDR_GET(x)               (((x) & RDMA_REGION_0__ADDR_MASK) >> RDMA_REGION_0__ADDR_LSB)
122 #define RDMA_REGION_0__ADDR_SET(x)               (((x) << RDMA_REGION_0__ADDR_LSB) & RDMA_REGION_0__ADDR_MASK)
123 #define RDMA_REGION_0__LENGTH_MSB                12
124 #define RDMA_REGION_0__LENGTH_LSB                2
125 #define RDMA_REGION_0__LENGTH_MASK               0x00001ffc
126 #define RDMA_REGION_0__LENGTH_GET(x)             (((x) & RDMA_REGION_0__LENGTH_MASK) >> RDMA_REGION_0__LENGTH_LSB)
127 #define RDMA_REGION_0__LENGTH_SET(x)             (((x) << RDMA_REGION_0__LENGTH_LSB) & RDMA_REGION_0__LENGTH_MASK)
128 #define RDMA_REGION_0__INDI_MSB                  1
129 #define RDMA_REGION_0__INDI_LSB                  1
130 #define RDMA_REGION_0__INDI_MASK                 0x00000002
131 #define RDMA_REGION_0__INDI_GET(x)               (((x) & RDMA_REGION_0__INDI_MASK) >> RDMA_REGION_0__INDI_LSB)
132 #define RDMA_REGION_0__INDI_SET(x)               (((x) << RDMA_REGION_0__INDI_LSB) & RDMA_REGION_0__INDI_MASK)
133 #define RDMA_REGION_0__NEXT_MSB                  0
134 #define RDMA_REGION_0__NEXT_LSB                  0
135 #define RDMA_REGION_0__NEXT_MASK                 0x00000001
136 #define RDMA_REGION_0__NEXT_GET(x)               (((x) & RDMA_REGION_0__NEXT_MASK) >> RDMA_REGION_0__NEXT_LSB)
137 #define RDMA_REGION_0__NEXT_SET(x)               (((x) << RDMA_REGION_0__NEXT_LSB) & RDMA_REGION_0__NEXT_MASK)
138
139 #define RDMA_REGION_1__ADDRESS                   0x00000024
140 #define RDMA_REGION_1__OFFSET                    0x00000024
141 #define RDMA_REGION_1__ADDR_MSB                  31
142 #define RDMA_REGION_1__ADDR_LSB                  13
143 #define RDMA_REGION_1__ADDR_MASK                 0xffffe000
144 #define RDMA_REGION_1__ADDR_GET(x)               (((x) & RDMA_REGION_1__ADDR_MASK) >> RDMA_REGION_1__ADDR_LSB)
145 #define RDMA_REGION_1__ADDR_SET(x)               (((x) << RDMA_REGION_1__ADDR_LSB) & RDMA_REGION_1__ADDR_MASK)
146 #define RDMA_REGION_1__LENGTH_MSB                12
147 #define RDMA_REGION_1__LENGTH_LSB                2
148 #define RDMA_REGION_1__LENGTH_MASK               0x00001ffc
149 #define RDMA_REGION_1__LENGTH_GET(x)             (((x) & RDMA_REGION_1__LENGTH_MASK) >> RDMA_REGION_1__LENGTH_LSB)
150 #define RDMA_REGION_1__LENGTH_SET(x)             (((x) << RDMA_REGION_1__LENGTH_LSB) & RDMA_REGION_1__LENGTH_MASK)
151 #define RDMA_REGION_1__INDI_MSB                  1
152 #define RDMA_REGION_1__INDI_LSB                  1
153 #define RDMA_REGION_1__INDI_MASK                 0x00000002
154 #define RDMA_REGION_1__INDI_GET(x)               (((x) & RDMA_REGION_1__INDI_MASK) >> RDMA_REGION_1__INDI_LSB)
155 #define RDMA_REGION_1__INDI_SET(x)               (((x) << RDMA_REGION_1__INDI_LSB) & RDMA_REGION_1__INDI_MASK)
156 #define RDMA_REGION_1__NEXT_MSB                  0
157 #define RDMA_REGION_1__NEXT_LSB                  0
158 #define RDMA_REGION_1__NEXT_MASK                 0x00000001
159 #define RDMA_REGION_1__NEXT_GET(x)               (((x) & RDMA_REGION_1__NEXT_MASK) >> RDMA_REGION_1__NEXT_LSB)
160 #define RDMA_REGION_1__NEXT_SET(x)               (((x) << RDMA_REGION_1__NEXT_LSB) & RDMA_REGION_1__NEXT_MASK)
161
162 #define RDMA_REGION_2__ADDRESS                   0x00000028
163 #define RDMA_REGION_2__OFFSET                    0x00000028
164 #define RDMA_REGION_2__ADDR_MSB                  31
165 #define RDMA_REGION_2__ADDR_LSB                  13
166 #define RDMA_REGION_2__ADDR_MASK                 0xffffe000
167 #define RDMA_REGION_2__ADDR_GET(x)               (((x) & RDMA_REGION_2__ADDR_MASK) >> RDMA_REGION_2__ADDR_LSB)
168 #define RDMA_REGION_2__ADDR_SET(x)               (((x) << RDMA_REGION_2__ADDR_LSB) & RDMA_REGION_2__ADDR_MASK)
169 #define RDMA_REGION_2__LENGTH_MSB                12
170 #define RDMA_REGION_2__LENGTH_LSB                2
171 #define RDMA_REGION_2__LENGTH_MASK               0x00001ffc
172 #define RDMA_REGION_2__LENGTH_GET(x)             (((x) & RDMA_REGION_2__LENGTH_MASK) >> RDMA_REGION_2__LENGTH_LSB)
173 #define RDMA_REGION_2__LENGTH_SET(x)             (((x) << RDMA_REGION_2__LENGTH_LSB) & RDMA_REGION_2__LENGTH_MASK)
174 #define RDMA_REGION_2__INDI_MSB                  1
175 #define RDMA_REGION_2__INDI_LSB                  1
176 #define RDMA_REGION_2__INDI_MASK                 0x00000002
177 #define RDMA_REGION_2__INDI_GET(x)               (((x) & RDMA_REGION_2__INDI_MASK) >> RDMA_REGION_2__INDI_LSB)
178 #define RDMA_REGION_2__INDI_SET(x)               (((x) << RDMA_REGION_2__INDI_LSB) & RDMA_REGION_2__INDI_MASK)
179 #define RDMA_REGION_2__NEXT_MSB                  0
180 #define RDMA_REGION_2__NEXT_LSB                  0
181 #define RDMA_REGION_2__NEXT_MASK                 0x00000001
182 #define RDMA_REGION_2__NEXT_GET(x)               (((x) & RDMA_REGION_2__NEXT_MASK) >> RDMA_REGION_2__NEXT_LSB)
183 #define RDMA_REGION_2__NEXT_SET(x)               (((x) << RDMA_REGION_2__NEXT_LSB) & RDMA_REGION_2__NEXT_MASK)
184
185 #define RDMA_REGION_3__ADDRESS                   0x0000002c
186 #define RDMA_REGION_3__OFFSET                    0x0000002c
187 #define RDMA_REGION_3__ADDR_MSB                  31
188 #define RDMA_REGION_3__ADDR_LSB                  13
189 #define RDMA_REGION_3__ADDR_MASK                 0xffffe000
190 #define RDMA_REGION_3__ADDR_GET(x)               (((x) & RDMA_REGION_3__ADDR_MASK) >> RDMA_REGION_3__ADDR_LSB)
191 #define RDMA_REGION_3__ADDR_SET(x)               (((x) << RDMA_REGION_3__ADDR_LSB) & RDMA_REGION_3__ADDR_MASK)
192 #define RDMA_REGION_3__LENGTH_MSB                12
193 #define RDMA_REGION_3__LENGTH_LSB                2
194 #define RDMA_REGION_3__LENGTH_MASK               0x00001ffc
195 #define RDMA_REGION_3__LENGTH_GET(x)             (((x) & RDMA_REGION_3__LENGTH_MASK) >> RDMA_REGION_3__LENGTH_LSB)
196 #define RDMA_REGION_3__LENGTH_SET(x)             (((x) << RDMA_REGION_3__LENGTH_LSB) & RDMA_REGION_3__LENGTH_MASK)
197 #define RDMA_REGION_3__INDI_MSB                  1
198 #define RDMA_REGION_3__INDI_LSB                  1
199 #define RDMA_REGION_3__INDI_MASK                 0x00000002
200 #define RDMA_REGION_3__INDI_GET(x)               (((x) & RDMA_REGION_3__INDI_MASK) >> RDMA_REGION_3__INDI_LSB)
201 #define RDMA_REGION_3__INDI_SET(x)               (((x) << RDMA_REGION_3__INDI_LSB) & RDMA_REGION_3__INDI_MASK)
202 #define RDMA_REGION_3__NEXT_MSB                  0
203 #define RDMA_REGION_3__NEXT_LSB                  0
204 #define RDMA_REGION_3__NEXT_MASK                 0x00000001
205 #define RDMA_REGION_3__NEXT_GET(x)               (((x) & RDMA_REGION_3__NEXT_MASK) >> RDMA_REGION_3__NEXT_LSB)
206 #define RDMA_REGION_3__NEXT_SET(x)               (((x) << RDMA_REGION_3__NEXT_LSB) & RDMA_REGION_3__NEXT_MASK)
207
208 #define RDMA_REGION_4__ADDRESS                   0x00000030
209 #define RDMA_REGION_4__OFFSET                    0x00000030
210 #define RDMA_REGION_4__ADDR_MSB                  31
211 #define RDMA_REGION_4__ADDR_LSB                  13
212 #define RDMA_REGION_4__ADDR_MASK                 0xffffe000
213 #define RDMA_REGION_4__ADDR_GET(x)               (((x) & RDMA_REGION_4__ADDR_MASK) >> RDMA_REGION_4__ADDR_LSB)
214 #define RDMA_REGION_4__ADDR_SET(x)               (((x) << RDMA_REGION_4__ADDR_LSB) & RDMA_REGION_4__ADDR_MASK)
215 #define RDMA_REGION_4__LENGTH_MSB                12
216 #define RDMA_REGION_4__LENGTH_LSB                2
217 #define RDMA_REGION_4__LENGTH_MASK               0x00001ffc
218 #define RDMA_REGION_4__LENGTH_GET(x)             (((x) & RDMA_REGION_4__LENGTH_MASK) >> RDMA_REGION_4__LENGTH_LSB)
219 #define RDMA_REGION_4__LENGTH_SET(x)             (((x) << RDMA_REGION_4__LENGTH_LSB) & RDMA_REGION_4__LENGTH_MASK)
220 #define RDMA_REGION_4__INDI_MSB                  1
221 #define RDMA_REGION_4__INDI_LSB                  1
222 #define RDMA_REGION_4__INDI_MASK                 0x00000002
223 #define RDMA_REGION_4__INDI_GET(x)               (((x) & RDMA_REGION_4__INDI_MASK) >> RDMA_REGION_4__INDI_LSB)
224 #define RDMA_REGION_4__INDI_SET(x)               (((x) << RDMA_REGION_4__INDI_LSB) & RDMA_REGION_4__INDI_MASK)
225 #define RDMA_REGION_4__NEXT_MSB                  0
226 #define RDMA_REGION_4__NEXT_LSB                  0
227 #define RDMA_REGION_4__NEXT_MASK                 0x00000001
228 #define RDMA_REGION_4__NEXT_GET(x)               (((x) & RDMA_REGION_4__NEXT_MASK) >> RDMA_REGION_4__NEXT_LSB)
229 #define RDMA_REGION_4__NEXT_SET(x)               (((x) << RDMA_REGION_4__NEXT_LSB) & RDMA_REGION_4__NEXT_MASK)
230
231 #define RDMA_REGION_5__ADDRESS                   0x00000034
232 #define RDMA_REGION_5__OFFSET                    0x00000034
233 #define RDMA_REGION_5__ADDR_MSB                  31
234 #define RDMA_REGION_5__ADDR_LSB                  13
235 #define RDMA_REGION_5__ADDR_MASK                 0xffffe000
236 #define RDMA_REGION_5__ADDR_GET(x)               (((x) & RDMA_REGION_5__ADDR_MASK) >> RDMA_REGION_5__ADDR_LSB)
237 #define RDMA_REGION_5__ADDR_SET(x)               (((x) << RDMA_REGION_5__ADDR_LSB) & RDMA_REGION_5__ADDR_MASK)
238 #define RDMA_REGION_5__LENGTH_MSB                12
239 #define RDMA_REGION_5__LENGTH_LSB                2
240 #define RDMA_REGION_5__LENGTH_MASK               0x00001ffc
241 #define RDMA_REGION_5__LENGTH_GET(x)             (((x) & RDMA_REGION_5__LENGTH_MASK) >> RDMA_REGION_5__LENGTH_LSB)
242 #define RDMA_REGION_5__LENGTH_SET(x)             (((x) << RDMA_REGION_5__LENGTH_LSB) & RDMA_REGION_5__LENGTH_MASK)
243 #define RDMA_REGION_5__INDI_MSB                  1
244 #define RDMA_REGION_5__INDI_LSB                  1
245 #define RDMA_REGION_5__INDI_MASK                 0x00000002
246 #define RDMA_REGION_5__INDI_GET(x)               (((x) & RDMA_REGION_5__INDI_MASK) >> RDMA_REGION_5__INDI_LSB)
247 #define RDMA_REGION_5__INDI_SET(x)               (((x) << RDMA_REGION_5__INDI_LSB) & RDMA_REGION_5__INDI_MASK)
248 #define RDMA_REGION_5__NEXT_MSB                  0
249 #define RDMA_REGION_5__NEXT_LSB                  0
250 #define RDMA_REGION_5__NEXT_MASK                 0x00000001
251 #define RDMA_REGION_5__NEXT_GET(x)               (((x) & RDMA_REGION_5__NEXT_MASK) >> RDMA_REGION_5__NEXT_LSB)
252 #define RDMA_REGION_5__NEXT_SET(x)               (((x) << RDMA_REGION_5__NEXT_LSB) & RDMA_REGION_5__NEXT_MASK)
253
254 #define RDMA_REGION_6__ADDRESS                   0x00000038
255 #define RDMA_REGION_6__OFFSET                    0x00000038
256 #define RDMA_REGION_6__ADDR_MSB                  31
257 #define RDMA_REGION_6__ADDR_LSB                  13
258 #define RDMA_REGION_6__ADDR_MASK                 0xffffe000
259 #define RDMA_REGION_6__ADDR_GET(x)               (((x) & RDMA_REGION_6__ADDR_MASK) >> RDMA_REGION_6__ADDR_LSB)
260 #define RDMA_REGION_6__ADDR_SET(x)               (((x) << RDMA_REGION_6__ADDR_LSB) & RDMA_REGION_6__ADDR_MASK)
261 #define RDMA_REGION_6__LENGTH_MSB                12
262 #define RDMA_REGION_6__LENGTH_LSB                2
263 #define RDMA_REGION_6__LENGTH_MASK               0x00001ffc
264 #define RDMA_REGION_6__LENGTH_GET(x)             (((x) & RDMA_REGION_6__LENGTH_MASK) >> RDMA_REGION_6__LENGTH_LSB)
265 #define RDMA_REGION_6__LENGTH_SET(x)             (((x) << RDMA_REGION_6__LENGTH_LSB) & RDMA_REGION_6__LENGTH_MASK)
266 #define RDMA_REGION_6__INDI_MSB                  1
267 #define RDMA_REGION_6__INDI_LSB                  1
268 #define RDMA_REGION_6__INDI_MASK                 0x00000002
269 #define RDMA_REGION_6__INDI_GET(x)               (((x) & RDMA_REGION_6__INDI_MASK) >> RDMA_REGION_6__INDI_LSB)
270 #define RDMA_REGION_6__INDI_SET(x)               (((x) << RDMA_REGION_6__INDI_LSB) & RDMA_REGION_6__INDI_MASK)
271 #define RDMA_REGION_6__NEXT_MSB                  0
272 #define RDMA_REGION_6__NEXT_LSB                  0
273 #define RDMA_REGION_6__NEXT_MASK                 0x00000001
274 #define RDMA_REGION_6__NEXT_GET(x)               (((x) & RDMA_REGION_6__NEXT_MASK) >> RDMA_REGION_6__NEXT_LSB)
275 #define RDMA_REGION_6__NEXT_SET(x)               (((x) << RDMA_REGION_6__NEXT_LSB) & RDMA_REGION_6__NEXT_MASK)
276
277 #define RDMA_REGION_7__ADDRESS                   0x0000003c
278 #define RDMA_REGION_7__OFFSET                    0x0000003c
279 #define RDMA_REGION_7__ADDR_MSB                  31
280 #define RDMA_REGION_7__ADDR_LSB                  13
281 #define RDMA_REGION_7__ADDR_MASK                 0xffffe000
282 #define RDMA_REGION_7__ADDR_GET(x)               (((x) & RDMA_REGION_7__ADDR_MASK) >> RDMA_REGION_7__ADDR_LSB)
283 #define RDMA_REGION_7__ADDR_SET(x)               (((x) << RDMA_REGION_7__ADDR_LSB) & RDMA_REGION_7__ADDR_MASK)
284 #define RDMA_REGION_7__LENGTH_MSB                12
285 #define RDMA_REGION_7__LENGTH_LSB                2
286 #define RDMA_REGION_7__LENGTH_MASK               0x00001ffc
287 #define RDMA_REGION_7__LENGTH_GET(x)             (((x) & RDMA_REGION_7__LENGTH_MASK) >> RDMA_REGION_7__LENGTH_LSB)
288 #define RDMA_REGION_7__LENGTH_SET(x)             (((x) << RDMA_REGION_7__LENGTH_LSB) & RDMA_REGION_7__LENGTH_MASK)
289 #define RDMA_REGION_7__INDI_MSB                  1
290 #define RDMA_REGION_7__INDI_LSB                  1
291 #define RDMA_REGION_7__INDI_MASK                 0x00000002
292 #define RDMA_REGION_7__INDI_GET(x)               (((x) & RDMA_REGION_7__INDI_MASK) >> RDMA_REGION_7__INDI_LSB)
293 #define RDMA_REGION_7__INDI_SET(x)               (((x) << RDMA_REGION_7__INDI_LSB) & RDMA_REGION_7__INDI_MASK)
294 #define RDMA_REGION_7__NEXT_MSB                  0
295 #define RDMA_REGION_7__NEXT_LSB                  0
296 #define RDMA_REGION_7__NEXT_MASK                 0x00000001
297 #define RDMA_REGION_7__NEXT_GET(x)               (((x) & RDMA_REGION_7__NEXT_MASK) >> RDMA_REGION_7__NEXT_LSB)
298 #define RDMA_REGION_7__NEXT_SET(x)               (((x) << RDMA_REGION_7__NEXT_LSB) & RDMA_REGION_7__NEXT_MASK)
299
300 #define RDMA_REGION_8__ADDRESS                   0x00000040
301 #define RDMA_REGION_8__OFFSET                    0x00000040
302 #define RDMA_REGION_8__ADDR_MSB                  31
303 #define RDMA_REGION_8__ADDR_LSB                  13
304 #define RDMA_REGION_8__ADDR_MASK                 0xffffe000
305 #define RDMA_REGION_8__ADDR_GET(x)               (((x) & RDMA_REGION_8__ADDR_MASK) >> RDMA_REGION_8__ADDR_LSB)
306 #define RDMA_REGION_8__ADDR_SET(x)               (((x) << RDMA_REGION_8__ADDR_LSB) & RDMA_REGION_8__ADDR_MASK)
307 #define RDMA_REGION_8__LENGTH_MSB                12
308 #define RDMA_REGION_8__LENGTH_LSB                2
309 #define RDMA_REGION_8__LENGTH_MASK               0x00001ffc
310 #define RDMA_REGION_8__LENGTH_GET(x)             (((x) & RDMA_REGION_8__LENGTH_MASK) >> RDMA_REGION_8__LENGTH_LSB)
311 #define RDMA_REGION_8__LENGTH_SET(x)             (((x) << RDMA_REGION_8__LENGTH_LSB) & RDMA_REGION_8__LENGTH_MASK)
312 #define RDMA_REGION_8__INDI_MSB                  1
313 #define RDMA_REGION_8__INDI_LSB                  1
314 #define RDMA_REGION_8__INDI_MASK                 0x00000002
315 #define RDMA_REGION_8__INDI_GET(x)               (((x) & RDMA_REGION_8__INDI_MASK) >> RDMA_REGION_8__INDI_LSB)
316 #define RDMA_REGION_8__INDI_SET(x)               (((x) << RDMA_REGION_8__INDI_LSB) & RDMA_REGION_8__INDI_MASK)
317 #define RDMA_REGION_8__NEXT_MSB                  0
318 #define RDMA_REGION_8__NEXT_LSB                  0
319 #define RDMA_REGION_8__NEXT_MASK                 0x00000001
320 #define RDMA_REGION_8__NEXT_GET(x)               (((x) & RDMA_REGION_8__NEXT_MASK) >> RDMA_REGION_8__NEXT_LSB)
321 #define RDMA_REGION_8__NEXT_SET(x)               (((x) << RDMA_REGION_8__NEXT_LSB) & RDMA_REGION_8__NEXT_MASK)
322
323 #define RDMA_REGION_9__ADDRESS                   0x00000044
324 #define RDMA_REGION_9__OFFSET                    0x00000044
325 #define RDMA_REGION_9__ADDR_MSB                  31
326 #define RDMA_REGION_9__ADDR_LSB                  13
327 #define RDMA_REGION_9__ADDR_MASK                 0xffffe000
328 #define RDMA_REGION_9__ADDR_GET(x)               (((x) & RDMA_REGION_9__ADDR_MASK) >> RDMA_REGION_9__ADDR_LSB)
329 #define RDMA_REGION_9__ADDR_SET(x)               (((x) << RDMA_REGION_9__ADDR_LSB) & RDMA_REGION_9__ADDR_MASK)
330 #define RDMA_REGION_9__LENGTH_MSB                12
331 #define RDMA_REGION_9__LENGTH_LSB                2
332 #define RDMA_REGION_9__LENGTH_MASK               0x00001ffc
333 #define RDMA_REGION_9__LENGTH_GET(x)             (((x) & RDMA_REGION_9__LENGTH_MASK) >> RDMA_REGION_9__LENGTH_LSB)
334 #define RDMA_REGION_9__LENGTH_SET(x)             (((x) << RDMA_REGION_9__LENGTH_LSB) & RDMA_REGION_9__LENGTH_MASK)
335 #define RDMA_REGION_9__INDI_MSB                  1
336 #define RDMA_REGION_9__INDI_LSB                  1
337 #define RDMA_REGION_9__INDI_MASK                 0x00000002
338 #define RDMA_REGION_9__INDI_GET(x)               (((x) & RDMA_REGION_9__INDI_MASK) >> RDMA_REGION_9__INDI_LSB)
339 #define RDMA_REGION_9__INDI_SET(x)               (((x) << RDMA_REGION_9__INDI_LSB) & RDMA_REGION_9__INDI_MASK)
340 #define RDMA_REGION_9__NEXT_MSB                  0
341 #define RDMA_REGION_9__NEXT_LSB                  0
342 #define RDMA_REGION_9__NEXT_MASK                 0x00000001
343 #define RDMA_REGION_9__NEXT_GET(x)               (((x) & RDMA_REGION_9__NEXT_MASK) >> RDMA_REGION_9__NEXT_LSB)
344 #define RDMA_REGION_9__NEXT_SET(x)               (((x) << RDMA_REGION_9__NEXT_LSB) & RDMA_REGION_9__NEXT_MASK)
345
346 #define RDMA_REGION_10__ADDRESS                  0x00000048
347 #define RDMA_REGION_10__OFFSET                   0x00000048
348 #define RDMA_REGION_10__ADDR_MSB                 31
349 #define RDMA_REGION_10__ADDR_LSB                 13
350 #define RDMA_REGION_10__ADDR_MASK                0xffffe000
351 #define RDMA_REGION_10__ADDR_GET(x)              (((x) & RDMA_REGION_10__ADDR_MASK) >> RDMA_REGION_10__ADDR_LSB)
352 #define RDMA_REGION_10__ADDR_SET(x)              (((x) << RDMA_REGION_10__ADDR_LSB) & RDMA_REGION_10__ADDR_MASK)
353 #define RDMA_REGION_10__LENGTH_MSB               12
354 #define RDMA_REGION_10__LENGTH_LSB               2
355 #define RDMA_REGION_10__LENGTH_MASK              0x00001ffc
356 #define RDMA_REGION_10__LENGTH_GET(x)            (((x) & RDMA_REGION_10__LENGTH_MASK) >> RDMA_REGION_10__LENGTH_LSB)
357 #define RDMA_REGION_10__LENGTH_SET(x)            (((x) << RDMA_REGION_10__LENGTH_LSB) & RDMA_REGION_10__LENGTH_MASK)
358 #define RDMA_REGION_10__INDI_MSB                 1
359 #define RDMA_REGION_10__INDI_LSB                 1
360 #define RDMA_REGION_10__INDI_MASK                0x00000002
361 #define RDMA_REGION_10__INDI_GET(x)              (((x) & RDMA_REGION_10__INDI_MASK) >> RDMA_REGION_10__INDI_LSB)
362 #define RDMA_REGION_10__INDI_SET(x)              (((x) << RDMA_REGION_10__INDI_LSB) & RDMA_REGION_10__INDI_MASK)
363 #define RDMA_REGION_10__NEXT_MSB                 0
364 #define RDMA_REGION_10__NEXT_LSB                 0
365 #define RDMA_REGION_10__NEXT_MASK                0x00000001
366 #define RDMA_REGION_10__NEXT_GET(x)              (((x) & RDMA_REGION_10__NEXT_MASK) >> RDMA_REGION_10__NEXT_LSB)
367 #define RDMA_REGION_10__NEXT_SET(x)              (((x) << RDMA_REGION_10__NEXT_LSB) & RDMA_REGION_10__NEXT_MASK)
368
369 #define RDMA_REGION_11__ADDRESS                  0x0000004c
370 #define RDMA_REGION_11__OFFSET                   0x0000004c
371 #define RDMA_REGION_11__ADDR_MSB                 31
372 #define RDMA_REGION_11__ADDR_LSB                 13
373 #define RDMA_REGION_11__ADDR_MASK                0xffffe000
374 #define RDMA_REGION_11__ADDR_GET(x)              (((x) & RDMA_REGION_11__ADDR_MASK) >> RDMA_REGION_11__ADDR_LSB)
375 #define RDMA_REGION_11__ADDR_SET(x)              (((x) << RDMA_REGION_11__ADDR_LSB) & RDMA_REGION_11__ADDR_MASK)
376 #define RDMA_REGION_11__LENGTH_MSB               12
377 #define RDMA_REGION_11__LENGTH_LSB               2
378 #define RDMA_REGION_11__LENGTH_MASK              0x00001ffc
379 #define RDMA_REGION_11__LENGTH_GET(x)            (((x) & RDMA_REGION_11__LENGTH_MASK) >> RDMA_REGION_11__LENGTH_LSB)
380 #define RDMA_REGION_11__LENGTH_SET(x)            (((x) << RDMA_REGION_11__LENGTH_LSB) & RDMA_REGION_11__LENGTH_MASK)
381 #define RDMA_REGION_11__INDI_MSB                 1
382 #define RDMA_REGION_11__INDI_LSB                 1
383 #define RDMA_REGION_11__INDI_MASK                0x00000002
384 #define RDMA_REGION_11__INDI_GET(x)              (((x) & RDMA_REGION_11__INDI_MASK) >> RDMA_REGION_11__INDI_LSB)
385 #define RDMA_REGION_11__INDI_SET(x)              (((x) << RDMA_REGION_11__INDI_LSB) & RDMA_REGION_11__INDI_MASK)
386 #define RDMA_REGION_11__NEXT_MSB                 0
387 #define RDMA_REGION_11__NEXT_LSB                 0
388 #define RDMA_REGION_11__NEXT_MASK                0x00000001
389 #define RDMA_REGION_11__NEXT_GET(x)              (((x) & RDMA_REGION_11__NEXT_MASK) >> RDMA_REGION_11__NEXT_LSB)
390 #define RDMA_REGION_11__NEXT_SET(x)              (((x) << RDMA_REGION_11__NEXT_LSB) & RDMA_REGION_11__NEXT_MASK)
391
392 #define RDMA_REGION_12__ADDRESS                  0x00000050
393 #define RDMA_REGION_12__OFFSET                   0x00000050
394 #define RDMA_REGION_12__ADDR_MSB                 31
395 #define RDMA_REGION_12__ADDR_LSB                 13
396 #define RDMA_REGION_12__ADDR_MASK                0xffffe000
397 #define RDMA_REGION_12__ADDR_GET(x)              (((x) & RDMA_REGION_12__ADDR_MASK) >> RDMA_REGION_12__ADDR_LSB)
398 #define RDMA_REGION_12__ADDR_SET(x)              (((x) << RDMA_REGION_12__ADDR_LSB) & RDMA_REGION_12__ADDR_MASK)
399 #define RDMA_REGION_12__LENGTH_MSB               12
400 #define RDMA_REGION_12__LENGTH_LSB               2
401 #define RDMA_REGION_12__LENGTH_MASK              0x00001ffc
402 #define RDMA_REGION_12__LENGTH_GET(x)            (((x) & RDMA_REGION_12__LENGTH_MASK) >> RDMA_REGION_12__LENGTH_LSB)
403 #define RDMA_REGION_12__LENGTH_SET(x)            (((x) << RDMA_REGION_12__LENGTH_LSB) & RDMA_REGION_12__LENGTH_MASK)
404 #define RDMA_REGION_12__INDI_MSB                 1
405 #define RDMA_REGION_12__INDI_LSB                 1
406 #define RDMA_REGION_12__INDI_MASK                0x00000002
407 #define RDMA_REGION_12__INDI_GET(x)              (((x) & RDMA_REGION_12__INDI_MASK) >> RDMA_REGION_12__INDI_LSB)
408 #define RDMA_REGION_12__INDI_SET(x)              (((x) << RDMA_REGION_12__INDI_LSB) & RDMA_REGION_12__INDI_MASK)
409 #define RDMA_REGION_12__NEXT_MSB                 0
410 #define RDMA_REGION_12__NEXT_LSB                 0
411 #define RDMA_REGION_12__NEXT_MASK                0x00000001
412 #define RDMA_REGION_12__NEXT_GET(x)              (((x) & RDMA_REGION_12__NEXT_MASK) >> RDMA_REGION_12__NEXT_LSB)
413 #define RDMA_REGION_12__NEXT_SET(x)              (((x) << RDMA_REGION_12__NEXT_LSB) & RDMA_REGION_12__NEXT_MASK)
414
415 #define RDMA_REGION_13__ADDRESS                  0x00000054
416 #define RDMA_REGION_13__OFFSET                   0x00000054
417 #define RDMA_REGION_13__ADDR_MSB                 31
418 #define RDMA_REGION_13__ADDR_LSB                 13
419 #define RDMA_REGION_13__ADDR_MASK                0xffffe000
420 #define RDMA_REGION_13__ADDR_GET(x)              (((x) & RDMA_REGION_13__ADDR_MASK) >> RDMA_REGION_13__ADDR_LSB)
421 #define RDMA_REGION_13__ADDR_SET(x)              (((x) << RDMA_REGION_13__ADDR_LSB) & RDMA_REGION_13__ADDR_MASK)
422 #define RDMA_REGION_13__LENGTH_MSB               12
423 #define RDMA_REGION_13__LENGTH_LSB               2
424 #define RDMA_REGION_13__LENGTH_MASK              0x00001ffc
425 #define RDMA_REGION_13__LENGTH_GET(x)            (((x) & RDMA_REGION_13__LENGTH_MASK) >> RDMA_REGION_13__LENGTH_LSB)
426 #define RDMA_REGION_13__LENGTH_SET(x)            (((x) << RDMA_REGION_13__LENGTH_LSB) & RDMA_REGION_13__LENGTH_MASK)
427 #define RDMA_REGION_13__INDI_MSB                 1
428 #define RDMA_REGION_13__INDI_LSB                 1
429 #define RDMA_REGION_13__INDI_MASK                0x00000002
430 #define RDMA_REGION_13__INDI_GET(x)              (((x) & RDMA_REGION_13__INDI_MASK) >> RDMA_REGION_13__INDI_LSB)
431 #define RDMA_REGION_13__INDI_SET(x)              (((x) << RDMA_REGION_13__INDI_LSB) & RDMA_REGION_13__INDI_MASK)
432 #define RDMA_REGION_13__NEXT_MSB                 0
433 #define RDMA_REGION_13__NEXT_LSB                 0
434 #define RDMA_REGION_13__NEXT_MASK                0x00000001
435 #define RDMA_REGION_13__NEXT_GET(x)              (((x) & RDMA_REGION_13__NEXT_MASK) >> RDMA_REGION_13__NEXT_LSB)
436 #define RDMA_REGION_13__NEXT_SET(x)              (((x) << RDMA_REGION_13__NEXT_LSB) & RDMA_REGION_13__NEXT_MASK)
437
438 #define RDMA_REGION_14__ADDRESS                  0x00000058
439 #define RDMA_REGION_14__OFFSET                   0x00000058
440 #define RDMA_REGION_14__ADDR_MSB                 31
441 #define RDMA_REGION_14__ADDR_LSB                 13
442 #define RDMA_REGION_14__ADDR_MASK                0xffffe000
443 #define RDMA_REGION_14__ADDR_GET(x)              (((x) & RDMA_REGION_14__ADDR_MASK) >> RDMA_REGION_14__ADDR_LSB)
444 #define RDMA_REGION_14__ADDR_SET(x)              (((x) << RDMA_REGION_14__ADDR_LSB) & RDMA_REGION_14__ADDR_MASK)
445 #define RDMA_REGION_14__LENGTH_MSB               12
446 #define RDMA_REGION_14__LENGTH_LSB               2
447 #define RDMA_REGION_14__LENGTH_MASK              0x00001ffc
448 #define RDMA_REGION_14__LENGTH_GET(x)            (((x) & RDMA_REGION_14__LENGTH_MASK) >> RDMA_REGION_14__LENGTH_LSB)
449 #define RDMA_REGION_14__LENGTH_SET(x)            (((x) << RDMA_REGION_14__LENGTH_LSB) & RDMA_REGION_14__LENGTH_MASK)
450 #define RDMA_REGION_14__INDI_MSB                 1
451 #define RDMA_REGION_14__INDI_LSB                 1
452 #define RDMA_REGION_14__INDI_MASK                0x00000002
453 #define RDMA_REGION_14__INDI_GET(x)              (((x) & RDMA_REGION_14__INDI_MASK) >> RDMA_REGION_14__INDI_LSB)
454 #define RDMA_REGION_14__INDI_SET(x)              (((x) << RDMA_REGION_14__INDI_LSB) & RDMA_REGION_14__INDI_MASK)
455 #define RDMA_REGION_14__NEXT_MSB                 0
456 #define RDMA_REGION_14__NEXT_LSB                 0
457 #define RDMA_REGION_14__NEXT_MASK                0x00000001
458 #define RDMA_REGION_14__NEXT_GET(x)              (((x) & RDMA_REGION_14__NEXT_MASK) >> RDMA_REGION_14__NEXT_LSB)
459 #define RDMA_REGION_14__NEXT_SET(x)              (((x) << RDMA_REGION_14__NEXT_LSB) & RDMA_REGION_14__NEXT_MASK)
460
461 #define RDMA_REGION_15__ADDRESS                  0x0000005c
462 #define RDMA_REGION_15__OFFSET                   0x0000005c
463 #define RDMA_REGION_15__ADDR_MSB                 31
464 #define RDMA_REGION_15__ADDR_LSB                 13
465 #define RDMA_REGION_15__ADDR_MASK                0xffffe000
466 #define RDMA_REGION_15__ADDR_GET(x)              (((x) & RDMA_REGION_15__ADDR_MASK) >> RDMA_REGION_15__ADDR_LSB)
467 #define RDMA_REGION_15__ADDR_SET(x)              (((x) << RDMA_REGION_15__ADDR_LSB) & RDMA_REGION_15__ADDR_MASK)
468 #define RDMA_REGION_15__LENGTH_MSB               12
469 #define RDMA_REGION_15__LENGTH_LSB               2
470 #define RDMA_REGION_15__LENGTH_MASK              0x00001ffc
471 #define RDMA_REGION_15__LENGTH_GET(x)            (((x) & RDMA_REGION_15__LENGTH_MASK) >> RDMA_REGION_15__LENGTH_LSB)
472 #define RDMA_REGION_15__LENGTH_SET(x)            (((x) << RDMA_REGION_15__LENGTH_LSB) & RDMA_REGION_15__LENGTH_MASK)
473 #define RDMA_REGION_15__INDI_MSB                 1
474 #define RDMA_REGION_15__INDI_LSB                 1
475 #define RDMA_REGION_15__INDI_MASK                0x00000002
476 #define RDMA_REGION_15__INDI_GET(x)              (((x) & RDMA_REGION_15__INDI_MASK) >> RDMA_REGION_15__INDI_LSB)
477 #define RDMA_REGION_15__INDI_SET(x)              (((x) << RDMA_REGION_15__INDI_LSB) & RDMA_REGION_15__INDI_MASK)
478 #define RDMA_REGION_15__NEXT_MSB                 0
479 #define RDMA_REGION_15__NEXT_LSB                 0
480 #define RDMA_REGION_15__NEXT_MASK                0x00000001
481 #define RDMA_REGION_15__NEXT_GET(x)              (((x) & RDMA_REGION_15__NEXT_MASK) >> RDMA_REGION_15__NEXT_LSB)
482 #define RDMA_REGION_15__NEXT_SET(x)              (((x) << RDMA_REGION_15__NEXT_LSB) & RDMA_REGION_15__NEXT_MASK)
483
484 #define DMA_STATUS_ADDRESS                       0x00000060
485 #define DMA_STATUS_OFFSET                        0x00000060
486 #define DMA_STATUS_ERROR_CODE_MSB                14
487 #define DMA_STATUS_ERROR_CODE_LSB                4
488 #define DMA_STATUS_ERROR_CODE_MASK               0x00007ff0
489 #define DMA_STATUS_ERROR_CODE_GET(x)             (((x) & DMA_STATUS_ERROR_CODE_MASK) >> DMA_STATUS_ERROR_CODE_LSB)
490 #define DMA_STATUS_ERROR_CODE_SET(x)             (((x) << DMA_STATUS_ERROR_CODE_LSB) & DMA_STATUS_ERROR_CODE_MASK)
491 #define DMA_STATUS_ERROR_MSB                     3
492 #define DMA_STATUS_ERROR_LSB                     3
493 #define DMA_STATUS_ERROR_MASK                    0x00000008
494 #define DMA_STATUS_ERROR_GET(x)                  (((x) & DMA_STATUS_ERROR_MASK) >> DMA_STATUS_ERROR_LSB)
495 #define DMA_STATUS_ERROR_SET(x)                  (((x) << DMA_STATUS_ERROR_LSB) & DMA_STATUS_ERROR_MASK)
496 #define DMA_STATUS_DONE_MSB                      2
497 #define DMA_STATUS_DONE_LSB                      2
498 #define DMA_STATUS_DONE_MASK                     0x00000004
499 #define DMA_STATUS_DONE_GET(x)                   (((x) & DMA_STATUS_DONE_MASK) >> DMA_STATUS_DONE_LSB)
500 #define DMA_STATUS_DONE_SET(x)                   (((x) << DMA_STATUS_DONE_LSB) & DMA_STATUS_DONE_MASK)
501 #define DMA_STATUS_STOPPED_MSB                   1
502 #define DMA_STATUS_STOPPED_LSB                   1
503 #define DMA_STATUS_STOPPED_MASK                  0x00000002
504 #define DMA_STATUS_STOPPED_GET(x)                (((x) & DMA_STATUS_STOPPED_MASK) >> DMA_STATUS_STOPPED_LSB)
505 #define DMA_STATUS_STOPPED_SET(x)                (((x) << DMA_STATUS_STOPPED_LSB) & DMA_STATUS_STOPPED_MASK)
506 #define DMA_STATUS_RUNNING_MSB                   0
507 #define DMA_STATUS_RUNNING_LSB                   0
508 #define DMA_STATUS_RUNNING_MASK                  0x00000001
509 #define DMA_STATUS_RUNNING_GET(x)                (((x) & DMA_STATUS_RUNNING_MASK) >> DMA_STATUS_RUNNING_LSB)
510 #define DMA_STATUS_RUNNING_SET(x)                (((x) << DMA_STATUS_RUNNING_LSB) & DMA_STATUS_RUNNING_MASK)
511
512 #define DMA_INT_EN_ADDRESS                       0x00000064
513 #define DMA_INT_EN_OFFSET                        0x00000064
514 #define DMA_INT_EN_ERROR_ENA_MSB                 3
515 #define DMA_INT_EN_ERROR_ENA_LSB                 3
516 #define DMA_INT_EN_ERROR_ENA_MASK                0x00000008
517 #define DMA_INT_EN_ERROR_ENA_GET(x)              (((x) & DMA_INT_EN_ERROR_ENA_MASK) >> DMA_INT_EN_ERROR_ENA_LSB)
518 #define DMA_INT_EN_ERROR_ENA_SET(x)              (((x) << DMA_INT_EN_ERROR_ENA_LSB) & DMA_INT_EN_ERROR_ENA_MASK)
519 #define DMA_INT_EN_DONE_ENA_MSB                  2
520 #define DMA_INT_EN_DONE_ENA_LSB                  2
521 #define DMA_INT_EN_DONE_ENA_MASK                 0x00000004
522 #define DMA_INT_EN_DONE_ENA_GET(x)               (((x) & DMA_INT_EN_DONE_ENA_MASK) >> DMA_INT_EN_DONE_ENA_LSB)
523 #define DMA_INT_EN_DONE_ENA_SET(x)               (((x) << DMA_INT_EN_DONE_ENA_LSB) & DMA_INT_EN_DONE_ENA_MASK)
524 #define DMA_INT_EN_STOPPED_ENA_MSB               1
525 #define DMA_INT_EN_STOPPED_ENA_LSB               1
526 #define DMA_INT_EN_STOPPED_ENA_MASK              0x00000002
527 #define DMA_INT_EN_STOPPED_ENA_GET(x)            (((x) & DMA_INT_EN_STOPPED_ENA_MASK) >> DMA_INT_EN_STOPPED_ENA_LSB)
528 #define DMA_INT_EN_STOPPED_ENA_SET(x)            (((x) << DMA_INT_EN_STOPPED_ENA_LSB) & DMA_INT_EN_STOPPED_ENA_MASK)
529
530
531 #ifndef __ASSEMBLER__
532
533 typedef struct rdma_reg_reg_s {
534   volatile unsigned int dma_config;
535   volatile unsigned int dma_control;
536   volatile unsigned int dma_src;
537   volatile unsigned int dma_dest;
538   volatile unsigned int dma_length;
539   volatile unsigned int vmc_base;
540   volatile unsigned int indirect_reg;
541   volatile unsigned int indirect_return;
542   volatile unsigned int rdma_region_0_;
543   volatile unsigned int rdma_region_1_;
544   volatile unsigned int rdma_region_2_;
545   volatile unsigned int rdma_region_3_;
546   volatile unsigned int rdma_region_4_;
547   volatile unsigned int rdma_region_5_;
548   volatile unsigned int rdma_region_6_;
549   volatile unsigned int rdma_region_7_;
550   volatile unsigned int rdma_region_8_;
551   volatile unsigned int rdma_region_9_;
552   volatile unsigned int rdma_region_10_;
553   volatile unsigned int rdma_region_11_;
554   volatile unsigned int rdma_region_12_;
555   volatile unsigned int rdma_region_13_;
556   volatile unsigned int rdma_region_14_;
557   volatile unsigned int rdma_region_15_;
558   volatile unsigned int dma_status;
559   volatile unsigned int dma_int_en;
560 } rdma_reg_reg_t;
561
562 #endif /* __ASSEMBLER__ */
563
564 #endif /* _RDMA_REG_H_ */