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