]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blob - arch/blackfin/mach-bf533/include/mach/cdefBF532.h
Blackfin arch: move the PORT registers down
[linux-2.6-omap-h63xx.git] / arch / blackfin / mach-bf533 / include / mach / cdefBF532.h
1 /*
2  * File:         include/asm-blackfin/mach-bf533/cdefBF532.h
3  * Based on:
4  * Author:
5  *
6  * Created:
7  * Description:
8  *
9  * Rev:
10  *
11  * Modified:
12  *
13  * Bugs:         Enter bugs at http://blackfin.uclinux.org/
14  *
15  * This program is free software; you can redistribute it and/or modify
16  * it under the terms of the GNU General Public License as published by
17  * the Free Software Foundation; either version 2, or (at your option)
18  * any later version.
19  *
20  * This program is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23  * GNU General Public License for more details.
24  *
25  * You should have received a copy of the GNU General Public License
26  * along with this program; see the file COPYING.
27  * If not, write to the Free Software Foundation,
28  * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
29  */
30
31 #ifndef _CDEF_BF532_H
32 #define _CDEF_BF532_H
33
34 #include <asm/blackfin.h>
35
36 /*include all Core registers and bit definitions*/
37 #include "defBF532.h"
38
39 /*include core specific register pointer definitions*/
40 #include <asm/cdef_LPBlackfin.h>
41
42 /* Clock and System Control (0xFFC0 0400-0xFFC0 07FF) */
43 #define bfin_read_PLL_CTL()                  bfin_read16(PLL_CTL)
44 #define bfin_read_PLL_STAT()                 bfin_read16(PLL_STAT)
45 #define bfin_write_PLL_STAT(val)             bfin_write16(PLL_STAT,val)
46 #define bfin_read_PLL_LOCKCNT()              bfin_read16(PLL_LOCKCNT)
47 #define bfin_write_PLL_LOCKCNT(val)          bfin_write16(PLL_LOCKCNT,val)
48 #define bfin_read_CHIPID()                   bfin_read32(CHIPID)
49 #define bfin_read_PLL_DIV()                  bfin_read16(PLL_DIV)
50 #define bfin_write_PLL_DIV(val)              bfin_write16(PLL_DIV,val)
51 #define bfin_read_VR_CTL()                   bfin_read16(VR_CTL)
52
53 /* System Interrupt Controller (0xFFC0 0C00-0xFFC0 0FFF) */
54 #define bfin_read_SWRST()                    bfin_read16(SWRST)
55 #define bfin_write_SWRST(val)                bfin_write16(SWRST,val)
56 #define bfin_read_SYSCR()                    bfin_read16(SYSCR)
57 #define bfin_write_SYSCR(val)                bfin_write16(SYSCR,val)
58 #define bfin_read_SIC_IAR0()                 bfin_read32(SIC_IAR0)
59 #define bfin_write_SIC_IAR0(val)             bfin_write32(SIC_IAR0,val)
60 #define bfin_read_SIC_IAR1()                 bfin_read32(SIC_IAR1)
61 #define bfin_write_SIC_IAR1(val)             bfin_write32(SIC_IAR1,val)
62 #define bfin_read_SIC_IAR2()                 bfin_read32(SIC_IAR2)
63 #define bfin_write_SIC_IAR2(val)             bfin_write32(SIC_IAR2,val)
64 #define bfin_read_SIC_IAR3()                 bfin_read32(SIC_IAR3)
65 #define bfin_write_SIC_IAR3(val)             bfin_write32(SIC_IAR3,val)
66 #define bfin_read_SIC_IMASK()                bfin_read32(SIC_IMASK)
67 #define bfin_write_SIC_IMASK(val)            bfin_write32(SIC_IMASK,val)
68 #define bfin_read_SIC_ISR()                  bfin_read32(SIC_ISR)
69 #define bfin_write_SIC_ISR(val)              bfin_write32(SIC_ISR,val)
70 #define bfin_read_SIC_IWR()                  bfin_read32(SIC_IWR)
71 #define bfin_write_SIC_IWR(val)              bfin_write32(SIC_IWR,val)
72
73 /* Watchdog Timer (0xFFC0 1000-0xFFC0 13FF) */
74 #define bfin_read_WDOG_CTL()                 bfin_read16(WDOG_CTL)
75 #define bfin_write_WDOG_CTL(val)             bfin_write16(WDOG_CTL,val)
76 #define bfin_read_WDOG_CNT()                 bfin_read32(WDOG_CNT)
77 #define bfin_write_WDOG_CNT(val)             bfin_write32(WDOG_CNT,val)
78 #define bfin_read_WDOG_STAT()                bfin_read32(WDOG_STAT)
79 #define bfin_write_WDOG_STAT(val)            bfin_write32(WDOG_STAT,val)
80
81 /* Real Time Clock (0xFFC0 1400-0xFFC0 17FF) */
82 #define bfin_read_RTC_STAT()                 bfin_read32(RTC_STAT)
83 #define bfin_write_RTC_STAT(val)             bfin_write32(RTC_STAT,val)
84 #define bfin_read_RTC_ICTL()                 bfin_read16(RTC_ICTL)
85 #define bfin_write_RTC_ICTL(val)             bfin_write16(RTC_ICTL,val)
86 #define bfin_read_RTC_ISTAT()                bfin_read16(RTC_ISTAT)
87 #define bfin_write_RTC_ISTAT(val)            bfin_write16(RTC_ISTAT,val)
88 #define bfin_read_RTC_SWCNT()                bfin_read16(RTC_SWCNT)
89 #define bfin_write_RTC_SWCNT(val)            bfin_write16(RTC_SWCNT,val)
90 #define bfin_read_RTC_ALARM()                bfin_read32(RTC_ALARM)
91 #define bfin_write_RTC_ALARM(val)            bfin_write32(RTC_ALARM,val)
92 #define bfin_read_RTC_FAST()                 bfin_read16(RTC_FAST)
93 #define bfin_write_RTC_FAST(val)             bfin_write16(RTC_FAST,val)
94 #define bfin_read_RTC_PREN()                 bfin_read16(RTC_PREN)
95 #define bfin_write_RTC_PREN(val)             bfin_write16(RTC_PREN,val)
96
97 /* DMA Traffic controls */
98 #define bfin_read_DMA_TCPER()                bfin_read16(DMA_TCPER)
99 #define bfin_write_DMA_TCPER(val)            bfin_write16(DMA_TCPER,val)
100 #define bfin_read_DMA_TCCNT()                bfin_read16(DMA_TCCNT)
101 #define bfin_write_DMA_TCCNT(val)            bfin_write16(DMA_TCCNT,val)
102
103 /* Alternate deprecated register names (below) provided for backwards code compatibility */
104 #define bfin_read_DMA_TC_PER()               bfin_read16(DMA_TC_PER)
105 #define bfin_write_DMA_TC_PER(val)           bfin_write16(DMA_TC_PER,val)
106 #define bfin_read_DMA_TC_CNT()               bfin_read16(DMA_TC_CNT)
107 #define bfin_write_DMA_TC_CNT(val)           bfin_write16(DMA_TC_CNT,val)
108
109 /* General Purpose IO (0xFFC0 2400-0xFFC0 27FF) */
110 #define bfin_read_FIO_DIR()                  bfin_read16(FIO_DIR)
111 #define bfin_write_FIO_DIR(val)              bfin_write16(FIO_DIR,val)
112 #define bfin_read_FIO_MASKA_C()              bfin_read16(FIO_MASKA_C)
113 #define bfin_write_FIO_MASKA_C(val)          bfin_write16(FIO_MASKA_C,val)
114 #define bfin_read_FIO_MASKA_S()              bfin_read16(FIO_MASKA_S)
115 #define bfin_write_FIO_MASKA_S(val)          bfin_write16(FIO_MASKA_S,val)
116 #define bfin_read_FIO_MASKB_C()              bfin_read16(FIO_MASKB_C)
117 #define bfin_write_FIO_MASKB_C(val)          bfin_write16(FIO_MASKB_C,val)
118 #define bfin_read_FIO_MASKB_S()              bfin_read16(FIO_MASKB_S)
119 #define bfin_write_FIO_MASKB_S(val)          bfin_write16(FIO_MASKB_S,val)
120 #define bfin_read_FIO_POLAR()                bfin_read16(FIO_POLAR)
121 #define bfin_write_FIO_POLAR(val)            bfin_write16(FIO_POLAR,val)
122 #define bfin_read_FIO_EDGE()                 bfin_read16(FIO_EDGE)
123 #define bfin_write_FIO_EDGE(val)             bfin_write16(FIO_EDGE,val)
124 #define bfin_read_FIO_BOTH()                 bfin_read16(FIO_BOTH)
125 #define bfin_write_FIO_BOTH(val)             bfin_write16(FIO_BOTH,val)
126 #define bfin_read_FIO_INEN()                 bfin_read16(FIO_INEN)
127 #define bfin_write_FIO_INEN(val)             bfin_write16(FIO_INEN,val)
128 #define bfin_read_FIO_MASKA_D()              bfin_read16(FIO_MASKA_D)
129 #define bfin_write_FIO_MASKA_D(val)          bfin_write16(FIO_MASKA_D,val)
130 #define bfin_read_FIO_MASKA_T()              bfin_read16(FIO_MASKA_T)
131 #define bfin_write_FIO_MASKA_T(val)          bfin_write16(FIO_MASKA_T,val)
132 #define bfin_read_FIO_MASKB_D()              bfin_read16(FIO_MASKB_D)
133 #define bfin_write_FIO_MASKB_D(val)          bfin_write16(FIO_MASKB_D,val)
134 #define bfin_read_FIO_MASKB_T()              bfin_read16(FIO_MASKB_T)
135 #define bfin_write_FIO_MASKB_T(val)          bfin_write16(FIO_MASKB_T,val)
136
137 /* DMA Controller */
138 #define bfin_read_DMA0_CONFIG()              bfin_read16(DMA0_CONFIG)
139 #define bfin_write_DMA0_CONFIG(val)          bfin_write16(DMA0_CONFIG,val)
140 #define bfin_read_DMA0_NEXT_DESC_PTR()       bfin_read32(DMA0_NEXT_DESC_PTR)
141 #define bfin_write_DMA0_NEXT_DESC_PTR(val)   bfin_write32(DMA0_NEXT_DESC_PTR,val)
142 #define bfin_read_DMA0_START_ADDR()          bfin_read32(DMA0_START_ADDR)
143 #define bfin_write_DMA0_START_ADDR(val)      bfin_write32(DMA0_START_ADDR,val)
144 #define bfin_read_DMA0_X_COUNT()             bfin_read16(DMA0_X_COUNT)
145 #define bfin_write_DMA0_X_COUNT(val)         bfin_write16(DMA0_X_COUNT,val)
146 #define bfin_read_DMA0_Y_COUNT()             bfin_read16(DMA0_Y_COUNT)
147 #define bfin_write_DMA0_Y_COUNT(val)         bfin_write16(DMA0_Y_COUNT,val)
148 #define bfin_read_DMA0_X_MODIFY()            bfin_read16(DMA0_X_MODIFY)
149 #define bfin_write_DMA0_X_MODIFY(val)        bfin_write16(DMA0_X_MODIFY,val)
150 #define bfin_read_DMA0_Y_MODIFY()            bfin_read16(DMA0_Y_MODIFY)
151 #define bfin_write_DMA0_Y_MODIFY(val)        bfin_write16(DMA0_Y_MODIFY,val)
152 #define bfin_read_DMA0_CURR_DESC_PTR()       bfin_read32(DMA0_CURR_DESC_PTR)
153 #define bfin_write_DMA0_CURR_DESC_PTR(val)   bfin_write32(DMA0_CURR_DESC_PTR,val)
154 #define bfin_read_DMA0_CURR_ADDR()           bfin_read32(DMA0_CURR_ADDR)
155 #define bfin_write_DMA0_CURR_ADDR(val)       bfin_write32(DMA0_CURR_ADDR,val)
156 #define bfin_read_DMA0_CURR_X_COUNT()        bfin_read16(DMA0_CURR_X_COUNT)
157 #define bfin_write_DMA0_CURR_X_COUNT(val)    bfin_write16(DMA0_CURR_X_COUNT,val)
158 #define bfin_read_DMA0_CURR_Y_COUNT()        bfin_read16(DMA0_CURR_Y_COUNT)
159 #define bfin_write_DMA0_CURR_Y_COUNT(val)    bfin_write16(DMA0_CURR_Y_COUNT,val)
160 #define bfin_read_DMA0_IRQ_STATUS()          bfin_read16(DMA0_IRQ_STATUS)
161 #define bfin_write_DMA0_IRQ_STATUS(val)      bfin_write16(DMA0_IRQ_STATUS,val)
162 #define bfin_read_DMA0_PERIPHERAL_MAP()      bfin_read16(DMA0_PERIPHERAL_MAP)
163 #define bfin_write_DMA0_PERIPHERAL_MAP(val)  bfin_write16(DMA0_PERIPHERAL_MAP,val)
164
165 #define bfin_read_DMA1_CONFIG()              bfin_read16(DMA1_CONFIG)
166 #define bfin_write_DMA1_CONFIG(val)          bfin_write16(DMA1_CONFIG,val)
167 #define bfin_read_DMA1_NEXT_DESC_PTR()       bfin_read32(DMA1_NEXT_DESC_PTR)
168 #define bfin_write_DMA1_NEXT_DESC_PTR(val)   bfin_write32(DMA1_NEXT_DESC_PTR,val)
169 #define bfin_read_DMA1_START_ADDR()          bfin_read32(DMA1_START_ADDR)
170 #define bfin_write_DMA1_START_ADDR(val)      bfin_write32(DMA1_START_ADDR,val)
171 #define bfin_read_DMA1_X_COUNT()             bfin_read16(DMA1_X_COUNT)
172 #define bfin_write_DMA1_X_COUNT(val)         bfin_write16(DMA1_X_COUNT,val)
173 #define bfin_read_DMA1_Y_COUNT()             bfin_read16(DMA1_Y_COUNT)
174 #define bfin_write_DMA1_Y_COUNT(val)         bfin_write16(DMA1_Y_COUNT,val)
175 #define bfin_read_DMA1_X_MODIFY()            bfin_read16(DMA1_X_MODIFY)
176 #define bfin_write_DMA1_X_MODIFY(val)        bfin_write16(DMA1_X_MODIFY,val)
177 #define bfin_read_DMA1_Y_MODIFY()            bfin_read16(DMA1_Y_MODIFY)
178 #define bfin_write_DMA1_Y_MODIFY(val)        bfin_write16(DMA1_Y_MODIFY,val)
179 #define bfin_read_DMA1_CURR_DESC_PTR()       bfin_read32(DMA1_CURR_DESC_PTR)
180 #define bfin_write_DMA1_CURR_DESC_PTR(val)   bfin_write32(DMA1_CURR_DESC_PTR,val)
181 #define bfin_read_DMA1_CURR_ADDR()           bfin_read32(DMA1_CURR_ADDR)
182 #define bfin_write_DMA1_CURR_ADDR(val)       bfin_write32(DMA1_CURR_ADDR,val)
183 #define bfin_read_DMA1_CURR_X_COUNT()        bfin_read16(DMA1_CURR_X_COUNT)
184 #define bfin_write_DMA1_CURR_X_COUNT(val)    bfin_write16(DMA1_CURR_X_COUNT,val)
185 #define bfin_read_DMA1_CURR_Y_COUNT()        bfin_read16(DMA1_CURR_Y_COUNT)
186 #define bfin_write_DMA1_CURR_Y_COUNT(val)    bfin_write16(DMA1_CURR_Y_COUNT,val)
187 #define bfin_read_DMA1_IRQ_STATUS()          bfin_read16(DMA1_IRQ_STATUS)
188 #define bfin_write_DMA1_IRQ_STATUS(val)      bfin_write16(DMA1_IRQ_STATUS,val)
189 #define bfin_read_DMA1_PERIPHERAL_MAP()      bfin_read16(DMA1_PERIPHERAL_MAP)
190 #define bfin_write_DMA1_PERIPHERAL_MAP(val)  bfin_write16(DMA1_PERIPHERAL_MAP,val)
191
192 #define bfin_read_DMA2_CONFIG()              bfin_read16(DMA2_CONFIG)
193 #define bfin_write_DMA2_CONFIG(val)          bfin_write16(DMA2_CONFIG,val)
194 #define bfin_read_DMA2_NEXT_DESC_PTR()       bfin_read32(DMA2_NEXT_DESC_PTR)
195 #define bfin_write_DMA2_NEXT_DESC_PTR(val)   bfin_write32(DMA2_NEXT_DESC_PTR,val)
196 #define bfin_read_DMA2_START_ADDR()          bfin_read32(DMA2_START_ADDR)
197 #define bfin_write_DMA2_START_ADDR(val)      bfin_write32(DMA2_START_ADDR,val)
198 #define bfin_read_DMA2_X_COUNT()             bfin_read16(DMA2_X_COUNT)
199 #define bfin_write_DMA2_X_COUNT(val)         bfin_write16(DMA2_X_COUNT,val)
200 #define bfin_read_DMA2_Y_COUNT()             bfin_read16(DMA2_Y_COUNT)
201 #define bfin_write_DMA2_Y_COUNT(val)         bfin_write16(DMA2_Y_COUNT,val)
202 #define bfin_read_DMA2_X_MODIFY()            bfin_read16(DMA2_X_MODIFY)
203 #define bfin_write_DMA2_X_MODIFY(val)        bfin_write16(DMA2_X_MODIFY,val)
204 #define bfin_read_DMA2_Y_MODIFY()            bfin_read16(DMA2_Y_MODIFY)
205 #define bfin_write_DMA2_Y_MODIFY(val)        bfin_write16(DMA2_Y_MODIFY,val)
206 #define bfin_read_DMA2_CURR_DESC_PTR()       bfin_read32(DMA2_CURR_DESC_PTR)
207 #define bfin_write_DMA2_CURR_DESC_PTR(val)   bfin_write32(DMA2_CURR_DESC_PTR,val)
208 #define bfin_read_DMA2_CURR_ADDR()           bfin_read32(DMA2_CURR_ADDR)
209 #define bfin_write_DMA2_CURR_ADDR(val)       bfin_write32(DMA2_CURR_ADDR,val)
210 #define bfin_read_DMA2_CURR_X_COUNT()        bfin_read16(DMA2_CURR_X_COUNT)
211 #define bfin_write_DMA2_CURR_X_COUNT(val)    bfin_write16(DMA2_CURR_X_COUNT,val)
212 #define bfin_read_DMA2_CURR_Y_COUNT()        bfin_read16(DMA2_CURR_Y_COUNT)
213 #define bfin_write_DMA2_CURR_Y_COUNT(val)    bfin_write16(DMA2_CURR_Y_COUNT,val)
214 #define bfin_read_DMA2_IRQ_STATUS()          bfin_read16(DMA2_IRQ_STATUS)
215 #define bfin_write_DMA2_IRQ_STATUS(val)      bfin_write16(DMA2_IRQ_STATUS,val)
216 #define bfin_read_DMA2_PERIPHERAL_MAP()      bfin_read16(DMA2_PERIPHERAL_MAP)
217 #define bfin_write_DMA2_PERIPHERAL_MAP(val)  bfin_write16(DMA2_PERIPHERAL_MAP,val)
218
219 #define bfin_read_DMA3_CONFIG()              bfin_read16(DMA3_CONFIG)
220 #define bfin_write_DMA3_CONFIG(val)          bfin_write16(DMA3_CONFIG,val)
221 #define bfin_read_DMA3_NEXT_DESC_PTR()       bfin_read32(DMA3_NEXT_DESC_PTR)
222 #define bfin_write_DMA3_NEXT_DESC_PTR(val)   bfin_write32(DMA3_NEXT_DESC_PTR,val)
223 #define bfin_read_DMA3_START_ADDR()          bfin_read32(DMA3_START_ADDR)
224 #define bfin_write_DMA3_START_ADDR(val)      bfin_write32(DMA3_START_ADDR,val)
225 #define bfin_read_DMA3_X_COUNT()             bfin_read16(DMA3_X_COUNT)
226 #define bfin_write_DMA3_X_COUNT(val)         bfin_write16(DMA3_X_COUNT,val)
227 #define bfin_read_DMA3_Y_COUNT()             bfin_read16(DMA3_Y_COUNT)
228 #define bfin_write_DMA3_Y_COUNT(val)         bfin_write16(DMA3_Y_COUNT,val)
229 #define bfin_read_DMA3_X_MODIFY()            bfin_read16(DMA3_X_MODIFY)
230 #define bfin_write_DMA3_X_MODIFY(val)        bfin_write16(DMA3_X_MODIFY,val)
231 #define bfin_read_DMA3_Y_MODIFY()            bfin_read16(DMA3_Y_MODIFY)
232 #define bfin_write_DMA3_Y_MODIFY(val)        bfin_write16(DMA3_Y_MODIFY,val)
233 #define bfin_read_DMA3_CURR_DESC_PTR()       bfin_read32(DMA3_CURR_DESC_PTR)
234 #define bfin_write_DMA3_CURR_DESC_PTR(val)   bfin_write32(DMA3_CURR_DESC_PTR,val)
235 #define bfin_read_DMA3_CURR_ADDR()           bfin_read32(DMA3_CURR_ADDR)
236 #define bfin_write_DMA3_CURR_ADDR(val)       bfin_write32(DMA3_CURR_ADDR,val)
237 #define bfin_read_DMA3_CURR_X_COUNT()        bfin_read16(DMA3_CURR_X_COUNT)
238 #define bfin_write_DMA3_CURR_X_COUNT(val)    bfin_write16(DMA3_CURR_X_COUNT,val)
239 #define bfin_read_DMA3_CURR_Y_COUNT()        bfin_read16(DMA3_CURR_Y_COUNT)
240 #define bfin_write_DMA3_CURR_Y_COUNT(val)    bfin_write16(DMA3_CURR_Y_COUNT,val)
241 #define bfin_read_DMA3_IRQ_STATUS()          bfin_read16(DMA3_IRQ_STATUS)
242 #define bfin_write_DMA3_IRQ_STATUS(val)      bfin_write16(DMA3_IRQ_STATUS,val)
243 #define bfin_read_DMA3_PERIPHERAL_MAP()      bfin_read16(DMA3_PERIPHERAL_MAP)
244 #define bfin_write_DMA3_PERIPHERAL_MAP(val)  bfin_write16(DMA3_PERIPHERAL_MAP,val)
245
246 #define bfin_read_DMA4_CONFIG()              bfin_read16(DMA4_CONFIG)
247 #define bfin_write_DMA4_CONFIG(val)          bfin_write16(DMA4_CONFIG,val)
248 #define bfin_read_DMA4_NEXT_DESC_PTR()       bfin_read32(DMA4_NEXT_DESC_PTR)
249 #define bfin_write_DMA4_NEXT_DESC_PTR(val)   bfin_write32(DMA4_NEXT_DESC_PTR,val)
250 #define bfin_read_DMA4_START_ADDR()          bfin_read32(DMA4_START_ADDR)
251 #define bfin_write_DMA4_START_ADDR(val)      bfin_write32(DMA4_START_ADDR,val)
252 #define bfin_read_DMA4_X_COUNT()             bfin_read16(DMA4_X_COUNT)
253 #define bfin_write_DMA4_X_COUNT(val)         bfin_write16(DMA4_X_COUNT,val)
254 #define bfin_read_DMA4_Y_COUNT()             bfin_read16(DMA4_Y_COUNT)
255 #define bfin_write_DMA4_Y_COUNT(val)         bfin_write16(DMA4_Y_COUNT,val)
256 #define bfin_read_DMA4_X_MODIFY()            bfin_read16(DMA4_X_MODIFY)
257 #define bfin_write_DMA4_X_MODIFY(val)        bfin_write16(DMA4_X_MODIFY,val)
258 #define bfin_read_DMA4_Y_MODIFY()            bfin_read16(DMA4_Y_MODIFY)
259 #define bfin_write_DMA4_Y_MODIFY(val)        bfin_write16(DMA4_Y_MODIFY,val)
260 #define bfin_read_DMA4_CURR_DESC_PTR()       bfin_read32(DMA4_CURR_DESC_PTR)
261 #define bfin_write_DMA4_CURR_DESC_PTR(val)   bfin_write32(DMA4_CURR_DESC_PTR,val)
262 #define bfin_read_DMA4_CURR_ADDR()           bfin_read32(DMA4_CURR_ADDR)
263 #define bfin_write_DMA4_CURR_ADDR(val)       bfin_write32(DMA4_CURR_ADDR,val)
264 #define bfin_read_DMA4_CURR_X_COUNT()        bfin_read16(DMA4_CURR_X_COUNT)
265 #define bfin_write_DMA4_CURR_X_COUNT(val)    bfin_write16(DMA4_CURR_X_COUNT,val)
266 #define bfin_read_DMA4_CURR_Y_COUNT()        bfin_read16(DMA4_CURR_Y_COUNT)
267 #define bfin_write_DMA4_CURR_Y_COUNT(val)    bfin_write16(DMA4_CURR_Y_COUNT,val)
268 #define bfin_read_DMA4_IRQ_STATUS()          bfin_read16(DMA4_IRQ_STATUS)
269 #define bfin_write_DMA4_IRQ_STATUS(val)      bfin_write16(DMA4_IRQ_STATUS,val)
270 #define bfin_read_DMA4_PERIPHERAL_MAP()      bfin_read16(DMA4_PERIPHERAL_MAP)
271 #define bfin_write_DMA4_PERIPHERAL_MAP(val)  bfin_write16(DMA4_PERIPHERAL_MAP,val)
272
273 #define bfin_read_DMA5_CONFIG()              bfin_read16(DMA5_CONFIG)
274 #define bfin_write_DMA5_CONFIG(val)          bfin_write16(DMA5_CONFIG,val)
275 #define bfin_read_DMA5_NEXT_DESC_PTR()       bfin_read32(DMA5_NEXT_DESC_PTR)
276 #define bfin_write_DMA5_NEXT_DESC_PTR(val)   bfin_write32(DMA5_NEXT_DESC_PTR,val)
277 #define bfin_read_DMA5_START_ADDR()          bfin_read32(DMA5_START_ADDR)
278 #define bfin_write_DMA5_START_ADDR(val)      bfin_write32(DMA5_START_ADDR,val)
279 #define bfin_read_DMA5_X_COUNT()             bfin_read16(DMA5_X_COUNT)
280 #define bfin_write_DMA5_X_COUNT(val)         bfin_write16(DMA5_X_COUNT,val)
281 #define bfin_read_DMA5_Y_COUNT()             bfin_read16(DMA5_Y_COUNT)
282 #define bfin_write_DMA5_Y_COUNT(val)         bfin_write16(DMA5_Y_COUNT,val)
283 #define bfin_read_DMA5_X_MODIFY()            bfin_read16(DMA5_X_MODIFY)
284 #define bfin_write_DMA5_X_MODIFY(val)        bfin_write16(DMA5_X_MODIFY,val)
285 #define bfin_read_DMA5_Y_MODIFY()            bfin_read16(DMA5_Y_MODIFY)
286 #define bfin_write_DMA5_Y_MODIFY(val)        bfin_write16(DMA5_Y_MODIFY,val)
287 #define bfin_read_DMA5_CURR_DESC_PTR()       bfin_read32(DMA5_CURR_DESC_PTR)
288 #define bfin_write_DMA5_CURR_DESC_PTR(val)   bfin_write32(DMA5_CURR_DESC_PTR,val)
289 #define bfin_read_DMA5_CURR_ADDR()           bfin_read32(DMA5_CURR_ADDR)
290 #define bfin_write_DMA5_CURR_ADDR(val)       bfin_write32(DMA5_CURR_ADDR,val)
291 #define bfin_read_DMA5_CURR_X_COUNT()        bfin_read16(DMA5_CURR_X_COUNT)
292 #define bfin_write_DMA5_CURR_X_COUNT(val)    bfin_write16(DMA5_CURR_X_COUNT,val)
293 #define bfin_read_DMA5_CURR_Y_COUNT()        bfin_read16(DMA5_CURR_Y_COUNT)
294 #define bfin_write_DMA5_CURR_Y_COUNT(val)    bfin_write16(DMA5_CURR_Y_COUNT,val)
295 #define bfin_read_DMA5_IRQ_STATUS()          bfin_read16(DMA5_IRQ_STATUS)
296 #define bfin_write_DMA5_IRQ_STATUS(val)      bfin_write16(DMA5_IRQ_STATUS,val)
297 #define bfin_read_DMA5_PERIPHERAL_MAP()      bfin_read16(DMA5_PERIPHERAL_MAP)
298 #define bfin_write_DMA5_PERIPHERAL_MAP(val)  bfin_write16(DMA5_PERIPHERAL_MAP,val)
299
300 #define bfin_read_DMA6_CONFIG()              bfin_read16(DMA6_CONFIG)
301 #define bfin_write_DMA6_CONFIG(val)          bfin_write16(DMA6_CONFIG,val)
302 #define bfin_read_DMA6_NEXT_DESC_PTR()       bfin_read32(DMA6_NEXT_DESC_PTR)
303 #define bfin_write_DMA6_NEXT_DESC_PTR(val)   bfin_write32(DMA6_NEXT_DESC_PTR,val)
304 #define bfin_read_DMA6_START_ADDR()          bfin_read32(DMA6_START_ADDR)
305 #define bfin_write_DMA6_START_ADDR(val)      bfin_write32(DMA6_START_ADDR,val)
306 #define bfin_read_DMA6_X_COUNT()             bfin_read16(DMA6_X_COUNT)
307 #define bfin_write_DMA6_X_COUNT(val)         bfin_write16(DMA6_X_COUNT,val)
308 #define bfin_read_DMA6_Y_COUNT()             bfin_read16(DMA6_Y_COUNT)
309 #define bfin_write_DMA6_Y_COUNT(val)         bfin_write16(DMA6_Y_COUNT,val)
310 #define bfin_read_DMA6_X_MODIFY()            bfin_read16(DMA6_X_MODIFY)
311 #define bfin_write_DMA6_X_MODIFY(val)        bfin_write16(DMA6_X_MODIFY,val)
312 #define bfin_read_DMA6_Y_MODIFY()            bfin_read16(DMA6_Y_MODIFY)
313 #define bfin_write_DMA6_Y_MODIFY(val)        bfin_write16(DMA6_Y_MODIFY,val)
314 #define bfin_read_DMA6_CURR_DESC_PTR()       bfin_read32(DMA6_CURR_DESC_PTR)
315 #define bfin_write_DMA6_CURR_DESC_PTR(val)   bfin_write32(DMA6_CURR_DESC_PTR,val)
316 #define bfin_read_DMA6_CURR_ADDR()           bfin_read32(DMA6_CURR_ADDR)
317 #define bfin_write_DMA6_CURR_ADDR(val)       bfin_write32(DMA6_CURR_ADDR,val)
318 #define bfin_read_DMA6_CURR_X_COUNT()        bfin_read16(DMA6_CURR_X_COUNT)
319 #define bfin_write_DMA6_CURR_X_COUNT(val)    bfin_write16(DMA6_CURR_X_COUNT,val)
320 #define bfin_read_DMA6_CURR_Y_COUNT()        bfin_read16(DMA6_CURR_Y_COUNT)
321 #define bfin_write_DMA6_CURR_Y_COUNT(val)    bfin_write16(DMA6_CURR_Y_COUNT,val)
322 #define bfin_read_DMA6_IRQ_STATUS()          bfin_read16(DMA6_IRQ_STATUS)
323 #define bfin_write_DMA6_IRQ_STATUS(val)      bfin_write16(DMA6_IRQ_STATUS,val)
324 #define bfin_read_DMA6_PERIPHERAL_MAP()      bfin_read16(DMA6_PERIPHERAL_MAP)
325 #define bfin_write_DMA6_PERIPHERAL_MAP(val)  bfin_write16(DMA6_PERIPHERAL_MAP,val)
326
327 #define bfin_read_DMA7_CONFIG()              bfin_read16(DMA7_CONFIG)
328 #define bfin_write_DMA7_CONFIG(val)          bfin_write16(DMA7_CONFIG,val)
329 #define bfin_read_DMA7_NEXT_DESC_PTR()       bfin_read32(DMA7_NEXT_DESC_PTR)
330 #define bfin_write_DMA7_NEXT_DESC_PTR(val)   bfin_write32(DMA7_NEXT_DESC_PTR,val)
331 #define bfin_read_DMA7_START_ADDR()          bfin_read32(DMA7_START_ADDR)
332 #define bfin_write_DMA7_START_ADDR(val)      bfin_write32(DMA7_START_ADDR,val)
333 #define bfin_read_DMA7_X_COUNT()             bfin_read16(DMA7_X_COUNT)
334 #define bfin_write_DMA7_X_COUNT(val)         bfin_write16(DMA7_X_COUNT,val)
335 #define bfin_read_DMA7_Y_COUNT()             bfin_read16(DMA7_Y_COUNT)
336 #define bfin_write_DMA7_Y_COUNT(val)         bfin_write16(DMA7_Y_COUNT,val)
337 #define bfin_read_DMA7_X_MODIFY()            bfin_read16(DMA7_X_MODIFY)
338 #define bfin_write_DMA7_X_MODIFY(val)        bfin_write16(DMA7_X_MODIFY,val)
339 #define bfin_read_DMA7_Y_MODIFY()            bfin_read16(DMA7_Y_MODIFY)
340 #define bfin_write_DMA7_Y_MODIFY(val)        bfin_write16(DMA7_Y_MODIFY,val)
341 #define bfin_read_DMA7_CURR_DESC_PTR()       bfin_read32(DMA7_CURR_DESC_PTR)
342 #define bfin_write_DMA7_CURR_DESC_PTR(val)   bfin_write32(DMA7_CURR_DESC_PTR,val)
343 #define bfin_read_DMA7_CURR_ADDR()           bfin_read32(DMA7_CURR_ADDR)
344 #define bfin_write_DMA7_CURR_ADDR(val)       bfin_write32(DMA7_CURR_ADDR,val)
345 #define bfin_read_DMA7_CURR_X_COUNT()        bfin_read16(DMA7_CURR_X_COUNT)
346 #define bfin_write_DMA7_CURR_X_COUNT(val)    bfin_write16(DMA7_CURR_X_COUNT,val)
347 #define bfin_read_DMA7_CURR_Y_COUNT()        bfin_read16(DMA7_CURR_Y_COUNT)
348 #define bfin_write_DMA7_CURR_Y_COUNT(val)    bfin_write16(DMA7_CURR_Y_COUNT,val)
349 #define bfin_read_DMA7_IRQ_STATUS()          bfin_read16(DMA7_IRQ_STATUS)
350 #define bfin_write_DMA7_IRQ_STATUS(val)      bfin_write16(DMA7_IRQ_STATUS,val)
351 #define bfin_read_DMA7_PERIPHERAL_MAP()      bfin_read16(DMA7_PERIPHERAL_MAP)
352 #define bfin_write_DMA7_PERIPHERAL_MAP(val)  bfin_write16(DMA7_PERIPHERAL_MAP,val)
353
354 #define bfin_read_MDMA_D1_CONFIG()           bfin_read16(MDMA_D1_CONFIG)
355 #define bfin_write_MDMA_D1_CONFIG(val)       bfin_write16(MDMA_D1_CONFIG,val)
356 #define bfin_read_MDMA_D1_NEXT_DESC_PTR()    bfin_read32(MDMA_D1_NEXT_DESC_PTR)
357 #define bfin_write_MDMA_D1_NEXT_DESC_PTR(val) bfin_write32(MDMA_D1_NEXT_DESC_PTR,val)
358 #define bfin_read_MDMA_D1_START_ADDR()       bfin_read32(MDMA_D1_START_ADDR)
359 #define bfin_write_MDMA_D1_START_ADDR(val)   bfin_write32(MDMA_D1_START_ADDR,val)
360 #define bfin_read_MDMA_D1_X_COUNT()          bfin_read16(MDMA_D1_X_COUNT)
361 #define bfin_write_MDMA_D1_X_COUNT(val)      bfin_write16(MDMA_D1_X_COUNT,val)
362 #define bfin_read_MDMA_D1_Y_COUNT()          bfin_read16(MDMA_D1_Y_COUNT)
363 #define bfin_write_MDMA_D1_Y_COUNT(val)      bfin_write16(MDMA_D1_Y_COUNT,val)
364 #define bfin_read_MDMA_D1_X_MODIFY()         bfin_read16(MDMA_D1_X_MODIFY)
365 #define bfin_write_MDMA_D1_X_MODIFY(val)     bfin_write16(MDMA_D1_X_MODIFY,val)
366 #define bfin_read_MDMA_D1_Y_MODIFY()         bfin_read16(MDMA_D1_Y_MODIFY)
367 #define bfin_write_MDMA_D1_Y_MODIFY(val)     bfin_write16(MDMA_D1_Y_MODIFY,val)
368 #define bfin_read_MDMA_D1_CURR_DESC_PTR()    bfin_read32(MDMA_D1_CURR_DESC_PTR)
369 #define bfin_write_MDMA_D1_CURR_DESC_PTR(val) bfin_write32(MDMA_D1_CURR_DESC_PTR,val)
370 #define bfin_read_MDMA_D1_CURR_ADDR()        bfin_read32(MDMA_D1_CURR_ADDR)
371 #define bfin_write_MDMA_D1_CURR_ADDR(val)    bfin_write32(MDMA_D1_CURR_ADDR,val)
372 #define bfin_read_MDMA_D1_CURR_X_COUNT()     bfin_read16(MDMA_D1_CURR_X_COUNT)
373 #define bfin_write_MDMA_D1_CURR_X_COUNT(val) bfin_write16(MDMA_D1_CURR_X_COUNT,val)
374 #define bfin_read_MDMA_D1_CURR_Y_COUNT()     bfin_read16(MDMA_D1_CURR_Y_COUNT)
375 #define bfin_write_MDMA_D1_CURR_Y_COUNT(val) bfin_write16(MDMA_D1_CURR_Y_COUNT,val)
376 #define bfin_read_MDMA_D1_IRQ_STATUS()       bfin_read16(MDMA_D1_IRQ_STATUS)
377 #define bfin_write_MDMA_D1_IRQ_STATUS(val)   bfin_write16(MDMA_D1_IRQ_STATUS,val)
378 #define bfin_read_MDMA_D1_PERIPHERAL_MAP()   bfin_read16(MDMA_D1_PERIPHERAL_MAP)
379 #define bfin_write_MDMA_D1_PERIPHERAL_MAP(val) bfin_write16(MDMA_D1_PERIPHERAL_MAP,val)
380
381 #define bfin_read_MDMA_S1_CONFIG()           bfin_read16(MDMA_S1_CONFIG)
382 #define bfin_write_MDMA_S1_CONFIG(val)       bfin_write16(MDMA_S1_CONFIG,val)
383 #define bfin_read_MDMA_S1_NEXT_DESC_PTR()    bfin_read32(MDMA_S1_NEXT_DESC_PTR)
384 #define bfin_write_MDMA_S1_NEXT_DESC_PTR(val) bfin_write32(MDMA_S1_NEXT_DESC_PTR,val)
385 #define bfin_read_MDMA_S1_START_ADDR()       bfin_read32(MDMA_S1_START_ADDR)
386 #define bfin_write_MDMA_S1_START_ADDR(val)   bfin_write32(MDMA_S1_START_ADDR,val)
387 #define bfin_read_MDMA_S1_X_COUNT()          bfin_read16(MDMA_S1_X_COUNT)
388 #define bfin_write_MDMA_S1_X_COUNT(val)      bfin_write16(MDMA_S1_X_COUNT,val)
389 #define bfin_read_MDMA_S1_Y_COUNT()          bfin_read16(MDMA_S1_Y_COUNT)
390 #define bfin_write_MDMA_S1_Y_COUNT(val)      bfin_write16(MDMA_S1_Y_COUNT,val)
391 #define bfin_read_MDMA_S1_X_MODIFY()         bfin_read16(MDMA_S1_X_MODIFY)
392 #define bfin_write_MDMA_S1_X_MODIFY(val)     bfin_write16(MDMA_S1_X_MODIFY,val)
393 #define bfin_read_MDMA_S1_Y_MODIFY()         bfin_read16(MDMA_S1_Y_MODIFY)
394 #define bfin_write_MDMA_S1_Y_MODIFY(val)     bfin_write16(MDMA_S1_Y_MODIFY,val)
395 #define bfin_read_MDMA_S1_CURR_DESC_PTR()    bfin_read32(MDMA_S1_CURR_DESC_PTR)
396 #define bfin_write_MDMA_S1_CURR_DESC_PTR(val) bfin_write32(MDMA_S1_CURR_DESC_PTR,val)
397 #define bfin_read_MDMA_S1_CURR_ADDR()        bfin_read32(MDMA_S1_CURR_ADDR)
398 #define bfin_write_MDMA_S1_CURR_ADDR(val)    bfin_write32(MDMA_S1_CURR_ADDR,val)
399 #define bfin_read_MDMA_S1_CURR_X_COUNT()     bfin_read16(MDMA_S1_CURR_X_COUNT)
400 #define bfin_write_MDMA_S1_CURR_X_COUNT(val) bfin_write16(MDMA_S1_CURR_X_COUNT,val)
401 #define bfin_read_MDMA_S1_CURR_Y_COUNT()     bfin_read16(MDMA_S1_CURR_Y_COUNT)
402 #define bfin_write_MDMA_S1_CURR_Y_COUNT(val) bfin_write16(MDMA_S1_CURR_Y_COUNT,val)
403 #define bfin_read_MDMA_S1_IRQ_STATUS()       bfin_read16(MDMA_S1_IRQ_STATUS)
404 #define bfin_write_MDMA_S1_IRQ_STATUS(val)   bfin_write16(MDMA_S1_IRQ_STATUS,val)
405 #define bfin_read_MDMA_S1_PERIPHERAL_MAP()   bfin_read16(MDMA_S1_PERIPHERAL_MAP)
406 #define bfin_write_MDMA_S1_PERIPHERAL_MAP(val) bfin_write16(MDMA_S1_PERIPHERAL_MAP,val)
407
408 #define bfin_read_MDMA_D0_CONFIG()           bfin_read16(MDMA_D0_CONFIG)
409 #define bfin_write_MDMA_D0_CONFIG(val)       bfin_write16(MDMA_D0_CONFIG,val)
410 #define bfin_read_MDMA_D0_NEXT_DESC_PTR()    bfin_read32(MDMA_D0_NEXT_DESC_PTR)
411 #define bfin_write_MDMA_D0_NEXT_DESC_PTR(val) bfin_write32(MDMA_D0_NEXT_DESC_PTR,val)
412 #define bfin_read_MDMA_D0_START_ADDR()       bfin_read32(MDMA_D0_START_ADDR)
413 #define bfin_write_MDMA_D0_START_ADDR(val)   bfin_write32(MDMA_D0_START_ADDR,val)
414 #define bfin_read_MDMA_D0_X_COUNT()          bfin_read16(MDMA_D0_X_COUNT)
415 #define bfin_write_MDMA_D0_X_COUNT(val)      bfin_write16(MDMA_D0_X_COUNT,val)
416 #define bfin_read_MDMA_D0_Y_COUNT()          bfin_read16(MDMA_D0_Y_COUNT)
417 #define bfin_write_MDMA_D0_Y_COUNT(val)      bfin_write16(MDMA_D0_Y_COUNT,val)
418 #define bfin_read_MDMA_D0_X_MODIFY()         bfin_read16(MDMA_D0_X_MODIFY)
419 #define bfin_write_MDMA_D0_X_MODIFY(val)     bfin_write16(MDMA_D0_X_MODIFY,val)
420 #define bfin_read_MDMA_D0_Y_MODIFY()         bfin_read16(MDMA_D0_Y_MODIFY)
421 #define bfin_write_MDMA_D0_Y_MODIFY(val)     bfin_write16(MDMA_D0_Y_MODIFY,val)
422 #define bfin_read_MDMA_D0_CURR_DESC_PTR()    bfin_read32(MDMA_D0_CURR_DESC_PTR)
423 #define bfin_write_MDMA_D0_CURR_DESC_PTR(val) bfin_write32(MDMA_D0_CURR_DESC_PTR,val)
424 #define bfin_read_MDMA_D0_CURR_ADDR()        bfin_read32(MDMA_D0_CURR_ADDR)
425 #define bfin_write_MDMA_D0_CURR_ADDR(val)    bfin_write32(MDMA_D0_CURR_ADDR,val)
426 #define bfin_read_MDMA_D0_CURR_X_COUNT()     bfin_read16(MDMA_D0_CURR_X_COUNT)
427 #define bfin_write_MDMA_D0_CURR_X_COUNT(val) bfin_write16(MDMA_D0_CURR_X_COUNT,val)
428 #define bfin_read_MDMA_D0_CURR_Y_COUNT()     bfin_read16(MDMA_D0_CURR_Y_COUNT)
429 #define bfin_write_MDMA_D0_CURR_Y_COUNT(val) bfin_write16(MDMA_D0_CURR_Y_COUNT,val)
430 #define bfin_read_MDMA_D0_IRQ_STATUS()       bfin_read16(MDMA_D0_IRQ_STATUS)
431 #define bfin_write_MDMA_D0_IRQ_STATUS(val)   bfin_write16(MDMA_D0_IRQ_STATUS,val)
432 #define bfin_read_MDMA_D0_PERIPHERAL_MAP()   bfin_read16(MDMA_D0_PERIPHERAL_MAP)
433 #define bfin_write_MDMA_D0_PERIPHERAL_MAP(val) bfin_write16(MDMA_D0_PERIPHERAL_MAP,val)
434
435 #define bfin_read_MDMA_S0_CONFIG()           bfin_read16(MDMA_S0_CONFIG)
436 #define bfin_write_MDMA_S0_CONFIG(val)       bfin_write16(MDMA_S0_CONFIG,val)
437 #define bfin_read_MDMA_S0_NEXT_DESC_PTR()    bfin_read32(MDMA_S0_NEXT_DESC_PTR)
438 #define bfin_write_MDMA_S0_NEXT_DESC_PTR(val) bfin_write32(MDMA_S0_NEXT_DESC_PTR,val)
439 #define bfin_read_MDMA_S0_START_ADDR()       bfin_read32(MDMA_S0_START_ADDR)
440 #define bfin_write_MDMA_S0_START_ADDR(val)   bfin_write32(MDMA_S0_START_ADDR,val)
441 #define bfin_read_MDMA_S0_X_COUNT()          bfin_read16(MDMA_S0_X_COUNT)
442 #define bfin_write_MDMA_S0_X_COUNT(val)      bfin_write16(MDMA_S0_X_COUNT,val)
443 #define bfin_read_MDMA_S0_Y_COUNT()          bfin_read16(MDMA_S0_Y_COUNT)
444 #define bfin_write_MDMA_S0_Y_COUNT(val)      bfin_write16(MDMA_S0_Y_COUNT,val)
445 #define bfin_read_MDMA_S0_X_MODIFY()         bfin_read16(MDMA_S0_X_MODIFY)
446 #define bfin_write_MDMA_S0_X_MODIFY(val)     bfin_write16(MDMA_S0_X_MODIFY,val)
447 #define bfin_read_MDMA_S0_Y_MODIFY()         bfin_read16(MDMA_S0_Y_MODIFY)
448 #define bfin_write_MDMA_S0_Y_MODIFY(val)     bfin_write16(MDMA_S0_Y_MODIFY,val)
449 #define bfin_read_MDMA_S0_CURR_DESC_PTR()    bfin_read32(MDMA_S0_CURR_DESC_PTR)
450 #define bfin_write_MDMA_S0_CURR_DESC_PTR(val) bfin_write32(MDMA_S0_CURR_DESC_PTR,val)
451 #define bfin_read_MDMA_S0_CURR_ADDR()        bfin_read32(MDMA_S0_CURR_ADDR)
452 #define bfin_write_MDMA_S0_CURR_ADDR(val)    bfin_write32(MDMA_S0_CURR_ADDR,val)
453 #define bfin_read_MDMA_S0_CURR_X_COUNT()     bfin_read16(MDMA_S0_CURR_X_COUNT)
454 #define bfin_write_MDMA_S0_CURR_X_COUNT(val) bfin_write16(MDMA_S0_CURR_X_COUNT,val)
455 #define bfin_read_MDMA_S0_CURR_Y_COUNT()     bfin_read16(MDMA_S0_CURR_Y_COUNT)
456 #define bfin_write_MDMA_S0_CURR_Y_COUNT(val) bfin_write16(MDMA_S0_CURR_Y_COUNT,val)
457 #define bfin_read_MDMA_S0_IRQ_STATUS()       bfin_read16(MDMA_S0_IRQ_STATUS)
458 #define bfin_write_MDMA_S0_IRQ_STATUS(val)   bfin_write16(MDMA_S0_IRQ_STATUS,val)
459 #define bfin_read_MDMA_S0_PERIPHERAL_MAP()   bfin_read16(MDMA_S0_PERIPHERAL_MAP)
460 #define bfin_write_MDMA_S0_PERIPHERAL_MAP(val) bfin_write16(MDMA_S0_PERIPHERAL_MAP,val)
461
462 /* Aysnchronous Memory Controller - External Bus Interface Unit (0xFFC0 3C00-0xFFC0 3FFF) */
463 #define bfin_read_EBIU_AMGCTL()              bfin_read16(EBIU_AMGCTL)
464 #define bfin_write_EBIU_AMGCTL(val)          bfin_write16(EBIU_AMGCTL,val)
465 #define bfin_read_EBIU_AMBCTL0()             bfin_read32(EBIU_AMBCTL0)
466 #define bfin_write_EBIU_AMBCTL0(val)         bfin_write32(EBIU_AMBCTL0,val)
467 #define bfin_read_EBIU_AMBCTL1()             bfin_read32(EBIU_AMBCTL1)
468 #define bfin_write_EBIU_AMBCTL1(val)         bfin_write32(EBIU_AMBCTL1,val)
469
470 /* SDRAM Controller External Bus Interface Unit (0xFFC0 4C00-0xFFC0 4FFF) */
471 #define bfin_read_EBIU_SDGCTL()              bfin_read32(EBIU_SDGCTL)
472 #define bfin_write_EBIU_SDGCTL(val)          bfin_write32(EBIU_SDGCTL,val)
473 #define bfin_read_EBIU_SDRRC()               bfin_read16(EBIU_SDRRC)
474 #define bfin_write_EBIU_SDRRC(val)           bfin_write16(EBIU_SDRRC,val)
475 #define bfin_read_EBIU_SDSTAT()              bfin_read16(EBIU_SDSTAT)
476 #define bfin_write_EBIU_SDSTAT(val)          bfin_write16(EBIU_SDSTAT,val)
477 #define bfin_read_EBIU_SDBCTL()              bfin_read16(EBIU_SDBCTL)
478 #define bfin_write_EBIU_SDBCTL(val)          bfin_write16(EBIU_SDBCTL,val)
479
480 /* UART Controller */
481 #define bfin_read_UART_THR()                 bfin_read16(UART_THR)
482 #define bfin_write_UART_THR(val)             bfin_write16(UART_THR,val)
483 #define bfin_read_UART_RBR()                 bfin_read16(UART_RBR)
484 #define bfin_write_UART_RBR(val)             bfin_write16(UART_RBR,val)
485 #define bfin_read_UART_DLL()                 bfin_read16(UART_DLL)
486 #define bfin_write_UART_DLL(val)             bfin_write16(UART_DLL,val)
487 #define bfin_read_UART_IER()                 bfin_read16(UART_IER)
488 #define bfin_write_UART_IER(val)             bfin_write16(UART_IER,val)
489 #define bfin_read_UART_DLH()                 bfin_read16(UART_DLH)
490 #define bfin_write_UART_DLH(val)             bfin_write16(UART_DLH,val)
491 #define bfin_read_UART_IIR()                 bfin_read16(UART_IIR)
492 #define bfin_write_UART_IIR(val)             bfin_write16(UART_IIR,val)
493 #define bfin_read_UART_LCR()                 bfin_read16(UART_LCR)
494 #define bfin_write_UART_LCR(val)             bfin_write16(UART_LCR,val)
495 #define bfin_read_UART_MCR()                 bfin_read16(UART_MCR)
496 #define bfin_write_UART_MCR(val)             bfin_write16(UART_MCR,val)
497 #define bfin_read_UART_LSR()                 bfin_read16(UART_LSR)
498 #define bfin_write_UART_LSR(val)             bfin_write16(UART_LSR,val)
499 /*
500 #define UART_MSR
501 */
502 #define bfin_read_UART_SCR()                 bfin_read16(UART_SCR)
503 #define bfin_write_UART_SCR(val)             bfin_write16(UART_SCR,val)
504 #define bfin_read_UART_GCTL()                bfin_read16(UART_GCTL)
505 #define bfin_write_UART_GCTL(val)            bfin_write16(UART_GCTL,val)
506
507 /* SPI Controller */
508 #define bfin_read_SPI_CTL()                  bfin_read16(SPI_CTL)
509 #define bfin_write_SPI_CTL(val)              bfin_write16(SPI_CTL,val)
510 #define bfin_read_SPI_FLG()                  bfin_read16(SPI_FLG)
511 #define bfin_write_SPI_FLG(val)              bfin_write16(SPI_FLG,val)
512 #define bfin_read_SPI_STAT()                 bfin_read16(SPI_STAT)
513 #define bfin_write_SPI_STAT(val)             bfin_write16(SPI_STAT,val)
514 #define bfin_read_SPI_TDBR()                 bfin_read16(SPI_TDBR)
515 #define bfin_write_SPI_TDBR(val)             bfin_write16(SPI_TDBR,val)
516 #define bfin_read_SPI_RDBR()                 bfin_read16(SPI_RDBR)
517 #define bfin_write_SPI_RDBR(val)             bfin_write16(SPI_RDBR,val)
518 #define bfin_read_SPI_BAUD()                 bfin_read16(SPI_BAUD)
519 #define bfin_write_SPI_BAUD(val)             bfin_write16(SPI_BAUD,val)
520 #define bfin_read_SPI_SHADOW()               bfin_read16(SPI_SHADOW)
521 #define bfin_write_SPI_SHADOW(val)           bfin_write16(SPI_SHADOW,val)
522
523 /* TIMER 0, 1, 2 Registers */
524 #define bfin_read_TIMER0_CONFIG()            bfin_read16(TIMER0_CONFIG)
525 #define bfin_write_TIMER0_CONFIG(val)        bfin_write16(TIMER0_CONFIG,val)
526 #define bfin_read_TIMER0_COUNTER()           bfin_read32(TIMER0_COUNTER)
527 #define bfin_write_TIMER0_COUNTER(val)       bfin_write32(TIMER0_COUNTER,val)
528 #define bfin_read_TIMER0_PERIOD()            bfin_read32(TIMER0_PERIOD)
529 #define bfin_write_TIMER0_PERIOD(val)        bfin_write32(TIMER0_PERIOD,val)
530 #define bfin_read_TIMER0_WIDTH()             bfin_read32(TIMER0_WIDTH)
531 #define bfin_write_TIMER0_WIDTH(val)         bfin_write32(TIMER0_WIDTH,val)
532
533 #define bfin_read_TIMER1_CONFIG()            bfin_read16(TIMER1_CONFIG)
534 #define bfin_write_TIMER1_CONFIG(val)        bfin_write16(TIMER1_CONFIG,val)
535 #define bfin_read_TIMER1_COUNTER()           bfin_read32(TIMER1_COUNTER)
536 #define bfin_write_TIMER1_COUNTER(val)       bfin_write32(TIMER1_COUNTER,val)
537 #define bfin_read_TIMER1_PERIOD()            bfin_read32(TIMER1_PERIOD)
538 #define bfin_write_TIMER1_PERIOD(val)        bfin_write32(TIMER1_PERIOD,val)
539 #define bfin_read_TIMER1_WIDTH()             bfin_read32(TIMER1_WIDTH)
540 #define bfin_write_TIMER1_WIDTH(val)         bfin_write32(TIMER1_WIDTH,val)
541
542 #define bfin_read_TIMER2_CONFIG()            bfin_read16(TIMER2_CONFIG)
543 #define bfin_write_TIMER2_CONFIG(val)        bfin_write16(TIMER2_CONFIG,val)
544 #define bfin_read_TIMER2_COUNTER()           bfin_read32(TIMER2_COUNTER)
545 #define bfin_write_TIMER2_COUNTER(val)       bfin_write32(TIMER2_COUNTER,val)
546 #define bfin_read_TIMER2_PERIOD()            bfin_read32(TIMER2_PERIOD)
547 #define bfin_write_TIMER2_PERIOD(val)        bfin_write32(TIMER2_PERIOD,val)
548 #define bfin_read_TIMER2_WIDTH()             bfin_read32(TIMER2_WIDTH)
549 #define bfin_write_TIMER2_WIDTH(val)         bfin_write32(TIMER2_WIDTH,val)
550
551 #define bfin_read_TIMER_ENABLE()             bfin_read16(TIMER_ENABLE)
552 #define bfin_write_TIMER_ENABLE(val)         bfin_write16(TIMER_ENABLE,val)
553 #define bfin_read_TIMER_DISABLE()            bfin_read16(TIMER_DISABLE)
554 #define bfin_write_TIMER_DISABLE(val)        bfin_write16(TIMER_DISABLE,val)
555 #define bfin_read_TIMER_STATUS()             bfin_read16(TIMER_STATUS)
556 #define bfin_write_TIMER_STATUS(val)         bfin_write16(TIMER_STATUS,val)
557
558 /* SPORT0 Controller */
559 #define bfin_read_SPORT0_TCR1()              bfin_read16(SPORT0_TCR1)
560 #define bfin_write_SPORT0_TCR1(val)          bfin_write16(SPORT0_TCR1,val)
561 #define bfin_read_SPORT0_TCR2()              bfin_read16(SPORT0_TCR2)
562 #define bfin_write_SPORT0_TCR2(val)          bfin_write16(SPORT0_TCR2,val)
563 #define bfin_read_SPORT0_TCLKDIV()           bfin_read16(SPORT0_TCLKDIV)
564 #define bfin_write_SPORT0_TCLKDIV(val)       bfin_write16(SPORT0_TCLKDIV,val)
565 #define bfin_read_SPORT0_TFSDIV()            bfin_read16(SPORT0_TFSDIV)
566 #define bfin_write_SPORT0_TFSDIV(val)        bfin_write16(SPORT0_TFSDIV,val)
567 #define bfin_read_SPORT0_TX()                bfin_read32(SPORT0_TX)
568 #define bfin_write_SPORT0_TX(val)            bfin_write32(SPORT0_TX,val)
569 #define bfin_read_SPORT0_RX()                bfin_read32(SPORT0_RX)
570 #define bfin_write_SPORT0_RX(val)            bfin_write32(SPORT0_RX,val)
571 #define bfin_read_SPORT0_TX32()              bfin_read32(SPORT0_TX)
572 #define bfin_write_SPORT0_TX32(val)          bfin_write32(SPORT0_TX,val)
573 #define bfin_read_SPORT0_RX32()              bfin_read32(SPORT0_RX)
574 #define bfin_write_SPORT0_RX32(val)          bfin_write32(SPORT0_RX,val)
575 #define bfin_read_SPORT0_TX16()              bfin_read16(SPORT0_TX)
576 #define bfin_write_SPORT0_TX16(val)          bfin_write16(SPORT0_TX,val)
577 #define bfin_read_SPORT0_RX16()              bfin_read16(SPORT0_RX)
578 #define bfin_write_SPORT0_RX16(val)          bfin_write16(SPORT0_RX,val)
579 #define bfin_read_SPORT0_RCR1()              bfin_read16(SPORT0_RCR1)
580 #define bfin_write_SPORT0_RCR1(val)          bfin_write16(SPORT0_RCR1,val)
581 #define bfin_read_SPORT0_RCR2()              bfin_read16(SPORT0_RCR2)
582 #define bfin_write_SPORT0_RCR2(val)          bfin_write16(SPORT0_RCR2,val)
583 #define bfin_read_SPORT0_RCLKDIV()           bfin_read16(SPORT0_RCLKDIV)
584 #define bfin_write_SPORT0_RCLKDIV(val)       bfin_write16(SPORT0_RCLKDIV,val)
585 #define bfin_read_SPORT0_RFSDIV()            bfin_read16(SPORT0_RFSDIV)
586 #define bfin_write_SPORT0_RFSDIV(val)        bfin_write16(SPORT0_RFSDIV,val)
587 #define bfin_read_SPORT0_STAT()              bfin_read16(SPORT0_STAT)
588 #define bfin_write_SPORT0_STAT(val)          bfin_write16(SPORT0_STAT,val)
589 #define bfin_read_SPORT0_CHNL()              bfin_read16(SPORT0_CHNL)
590 #define bfin_write_SPORT0_CHNL(val)          bfin_write16(SPORT0_CHNL,val)
591 #define bfin_read_SPORT0_MCMC1()             bfin_read16(SPORT0_MCMC1)
592 #define bfin_write_SPORT0_MCMC1(val)         bfin_write16(SPORT0_MCMC1,val)
593 #define bfin_read_SPORT0_MCMC2()             bfin_read16(SPORT0_MCMC2)
594 #define bfin_write_SPORT0_MCMC2(val)         bfin_write16(SPORT0_MCMC2,val)
595 #define bfin_read_SPORT0_MTCS0()             bfin_read32(SPORT0_MTCS0)
596 #define bfin_write_SPORT0_MTCS0(val)         bfin_write32(SPORT0_MTCS0,val)
597 #define bfin_read_SPORT0_MTCS1()             bfin_read32(SPORT0_MTCS1)
598 #define bfin_write_SPORT0_MTCS1(val)         bfin_write32(SPORT0_MTCS1,val)
599 #define bfin_read_SPORT0_MTCS2()             bfin_read32(SPORT0_MTCS2)
600 #define bfin_write_SPORT0_MTCS2(val)         bfin_write32(SPORT0_MTCS2,val)
601 #define bfin_read_SPORT0_MTCS3()             bfin_read32(SPORT0_MTCS3)
602 #define bfin_write_SPORT0_MTCS3(val)         bfin_write32(SPORT0_MTCS3,val)
603 #define bfin_read_SPORT0_MRCS0()             bfin_read32(SPORT0_MRCS0)
604 #define bfin_write_SPORT0_MRCS0(val)         bfin_write32(SPORT0_MRCS0,val)
605 #define bfin_read_SPORT0_MRCS1()             bfin_read32(SPORT0_MRCS1)
606 #define bfin_write_SPORT0_MRCS1(val)         bfin_write32(SPORT0_MRCS1,val)
607 #define bfin_read_SPORT0_MRCS2()             bfin_read32(SPORT0_MRCS2)
608 #define bfin_write_SPORT0_MRCS2(val)         bfin_write32(SPORT0_MRCS2,val)
609 #define bfin_read_SPORT0_MRCS3()             bfin_read32(SPORT0_MRCS3)
610 #define bfin_write_SPORT0_MRCS3(val)         bfin_write32(SPORT0_MRCS3,val)
611
612 /* SPORT1 Controller */
613 #define bfin_read_SPORT1_TCR1()              bfin_read16(SPORT1_TCR1)
614 #define bfin_write_SPORT1_TCR1(val)          bfin_write16(SPORT1_TCR1,val)
615 #define bfin_read_SPORT1_TCR2()              bfin_read16(SPORT1_TCR2)
616 #define bfin_write_SPORT1_TCR2(val)          bfin_write16(SPORT1_TCR2,val)
617 #define bfin_read_SPORT1_TCLKDIV()           bfin_read16(SPORT1_TCLKDIV)
618 #define bfin_write_SPORT1_TCLKDIV(val)       bfin_write16(SPORT1_TCLKDIV,val)
619 #define bfin_read_SPORT1_TFSDIV()            bfin_read16(SPORT1_TFSDIV)
620 #define bfin_write_SPORT1_TFSDIV(val)        bfin_write16(SPORT1_TFSDIV,val)
621 #define bfin_read_SPORT1_TX()                bfin_read32(SPORT1_TX)
622 #define bfin_write_SPORT1_TX(val)            bfin_write32(SPORT1_TX,val)
623 #define bfin_read_SPORT1_RX()                bfin_read32(SPORT1_RX)
624 #define bfin_write_SPORT1_RX(val)            bfin_write32(SPORT1_RX,val)
625 #define bfin_read_SPORT1_TX32()              bfin_read32(SPORT1_TX)
626 #define bfin_write_SPORT1_TX32(val)          bfin_write32(SPORT1_TX,val)
627 #define bfin_read_SPORT1_RX32()              bfin_read32(SPORT1_RX)
628 #define bfin_write_SPORT1_RX32(val)          bfin_write32(SPORT1_RX,val)
629 #define bfin_read_SPORT1_TX16()              bfin_read16(SPORT1_TX)
630 #define bfin_write_SPORT1_TX16(val)          bfin_write16(SPORT1_TX,val)
631 #define bfin_read_SPORT1_RX16()              bfin_read16(SPORT1_RX)
632 #define bfin_write_SPORT1_RX16(val)          bfin_write16(SPORT1_RX,val)
633 #define bfin_read_SPORT1_RCR1()              bfin_read16(SPORT1_RCR1)
634 #define bfin_write_SPORT1_RCR1(val)          bfin_write16(SPORT1_RCR1,val)
635 #define bfin_read_SPORT1_RCR2()              bfin_read16(SPORT1_RCR2)
636 #define bfin_write_SPORT1_RCR2(val)          bfin_write16(SPORT1_RCR2,val)
637 #define bfin_read_SPORT1_RCLKDIV()           bfin_read16(SPORT1_RCLKDIV)
638 #define bfin_write_SPORT1_RCLKDIV(val)       bfin_write16(SPORT1_RCLKDIV,val)
639 #define bfin_read_SPORT1_RFSDIV()            bfin_read16(SPORT1_RFSDIV)
640 #define bfin_write_SPORT1_RFSDIV(val)        bfin_write16(SPORT1_RFSDIV,val)
641 #define bfin_read_SPORT1_STAT()              bfin_read16(SPORT1_STAT)
642 #define bfin_write_SPORT1_STAT(val)          bfin_write16(SPORT1_STAT,val)
643 #define bfin_read_SPORT1_CHNL()              bfin_read16(SPORT1_CHNL)
644 #define bfin_write_SPORT1_CHNL(val)          bfin_write16(SPORT1_CHNL,val)
645 #define bfin_read_SPORT1_MCMC1()             bfin_read16(SPORT1_MCMC1)
646 #define bfin_write_SPORT1_MCMC1(val)         bfin_write16(SPORT1_MCMC1,val)
647 #define bfin_read_SPORT1_MCMC2()             bfin_read16(SPORT1_MCMC2)
648 #define bfin_write_SPORT1_MCMC2(val)         bfin_write16(SPORT1_MCMC2,val)
649 #define bfin_read_SPORT1_MTCS0()             bfin_read32(SPORT1_MTCS0)
650 #define bfin_write_SPORT1_MTCS0(val)         bfin_write32(SPORT1_MTCS0,val)
651 #define bfin_read_SPORT1_MTCS1()             bfin_read32(SPORT1_MTCS1)
652 #define bfin_write_SPORT1_MTCS1(val)         bfin_write32(SPORT1_MTCS1,val)
653 #define bfin_read_SPORT1_MTCS2()             bfin_read32(SPORT1_MTCS2)
654 #define bfin_write_SPORT1_MTCS2(val)         bfin_write32(SPORT1_MTCS2,val)
655 #define bfin_read_SPORT1_MTCS3()             bfin_read32(SPORT1_MTCS3)
656 #define bfin_write_SPORT1_MTCS3(val)         bfin_write32(SPORT1_MTCS3,val)
657 #define bfin_read_SPORT1_MRCS0()             bfin_read32(SPORT1_MRCS0)
658 #define bfin_write_SPORT1_MRCS0(val)         bfin_write32(SPORT1_MRCS0,val)
659 #define bfin_read_SPORT1_MRCS1()             bfin_read32(SPORT1_MRCS1)
660 #define bfin_write_SPORT1_MRCS1(val)         bfin_write32(SPORT1_MRCS1,val)
661 #define bfin_read_SPORT1_MRCS2()             bfin_read32(SPORT1_MRCS2)
662 #define bfin_write_SPORT1_MRCS2(val)         bfin_write32(SPORT1_MRCS2,val)
663 #define bfin_read_SPORT1_MRCS3()             bfin_read32(SPORT1_MRCS3)
664 #define bfin_write_SPORT1_MRCS3(val)         bfin_write32(SPORT1_MRCS3,val)
665
666 /* Parallel Peripheral Interface (PPI) */
667 #define bfin_read_PPI_CONTROL()              bfin_read16(PPI_CONTROL)
668 #define bfin_write_PPI_CONTROL(val)          bfin_write16(PPI_CONTROL,val)
669 #define bfin_read_PPI_STATUS()               bfin_read16(PPI_STATUS)
670 #define bfin_write_PPI_STATUS(val)           bfin_write16(PPI_STATUS,val)
671 #define bfin_clear_PPI_STATUS()              bfin_read_PPI_STATUS()
672 #define bfin_read_PPI_DELAY()                bfin_read16(PPI_DELAY)
673 #define bfin_write_PPI_DELAY(val)            bfin_write16(PPI_DELAY,val)
674 #define bfin_read_PPI_COUNT()                bfin_read16(PPI_COUNT)
675 #define bfin_write_PPI_COUNT(val)            bfin_write16(PPI_COUNT,val)
676 #define bfin_read_PPI_FRAME()                bfin_read16(PPI_FRAME)
677 #define bfin_write_PPI_FRAME(val)            bfin_write16(PPI_FRAME,val)
678
679 /* These need to be last due to the cdef/linux inter-dependencies */
680 #include <asm/system.h>
681
682 #if ANOMALY_05000311
683 #define BFIN_WRITE_FIO_FLAG(name) \
684 static inline void bfin_write_FIO_FLAG_##name(unsigned short val) \
685 { \
686         unsigned long flags; \
687         local_irq_save(flags); \
688         bfin_write16(FIO_FLAG_##name, val); \
689         bfin_read_CHIPID(); \
690         local_irq_restore(flags); \
691 }
692 BFIN_WRITE_FIO_FLAG(D)
693 BFIN_WRITE_FIO_FLAG(C)
694 BFIN_WRITE_FIO_FLAG(S)
695 BFIN_WRITE_FIO_FLAG(T)
696
697 #define BFIN_READ_FIO_FLAG(name) \
698 static inline u16 bfin_read_FIO_FLAG_##name(void) \
699 { \
700         unsigned long flags; \
701         u16 ret; \
702         local_irq_save(flags); \
703         ret = bfin_read16(FIO_FLAG_##name); \
704         bfin_read_CHIPID(); \
705         local_irq_restore(flags); \
706         return ret; \
707 }
708 BFIN_READ_FIO_FLAG(D)
709 BFIN_READ_FIO_FLAG(C)
710 BFIN_READ_FIO_FLAG(S)
711 BFIN_READ_FIO_FLAG(T)
712
713 #else
714 #define bfin_write_FIO_FLAG_D(val)           bfin_write16(FIO_FLAG_D, val)
715 #define bfin_write_FIO_FLAG_C(val)           bfin_write16(FIO_FLAG_C, val)
716 #define bfin_write_FIO_FLAG_S(val)           bfin_write16(FIO_FLAG_S, val)
717 #define bfin_write_FIO_FLAG_T(val)           bfin_write16(FIO_FLAG_T, val)
718 #define bfin_read_FIO_FLAG_T()               bfin_read16(FIO_FLAG_T)
719 #define bfin_read_FIO_FLAG_C()               bfin_read16(FIO_FLAG_C)
720 #define bfin_read_FIO_FLAG_S()               bfin_read16(FIO_FLAG_S)
721 #define bfin_read_FIO_FLAG_D()               bfin_read16(FIO_FLAG_D)
722 #endif
723
724 /* Writing to PLL_CTL initiates a PLL relock sequence. */
725 static __inline__ void bfin_write_PLL_CTL(unsigned int val)
726 {
727         unsigned long flags, iwr;
728
729         if (val == bfin_read_PLL_CTL())
730                 return;
731
732         local_irq_save(flags);
733         /* Enable the PLL Wakeup bit in SIC IWR */
734         iwr = bfin_read32(SIC_IWR);
735         /* Only allow PPL Wakeup) */
736         bfin_write32(SIC_IWR, IWR_ENABLE(0));
737
738         bfin_write16(PLL_CTL, val);
739         SSYNC();
740         asm("IDLE;");
741
742         bfin_write32(SIC_IWR, iwr);
743         local_irq_restore(flags);
744 }
745
746 /* Writing to VR_CTL initiates a PLL relock sequence. */
747 static __inline__ void bfin_write_VR_CTL(unsigned int val)
748 {
749         unsigned long flags, iwr;
750
751         if (val == bfin_read_VR_CTL())
752                 return;
753
754         local_irq_save(flags);
755         /* Enable the PLL Wakeup bit in SIC IWR */
756         iwr = bfin_read32(SIC_IWR);
757         /* Only allow PPL Wakeup) */
758         bfin_write32(SIC_IWR, IWR_ENABLE(0));
759
760         bfin_write16(VR_CTL, val);
761         SSYNC();
762         asm("IDLE;");
763
764         bfin_write32(SIC_IWR, iwr);
765         local_irq_restore(flags);
766 }
767
768 #endif                          /* _CDEF_BF532_H */