cdefBF51x_base.h 65 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111
  1. /*
  2. * Copyright 2008 Analog Devices Inc.
  3. *
  4. * Licensed under the GPL-2 or later
  5. */
  6. #ifndef _CDEF_BF52X_H
  7. #define _CDEF_BF52X_H
  8. #include <asm/blackfin.h>
  9. #include "defBF51x_base.h"
  10. /* Include core specific register pointer definitions */
  11. #include <asm/cdef_LPBlackfin.h>
  12. /* ==== begin from cdefBF534.h ==== */
  13. /* Clock and System Control (0xFFC00000 - 0xFFC000FF) */
  14. #define bfin_read_PLL_CTL() bfin_read16(PLL_CTL)
  15. #define bfin_read_PLL_DIV() bfin_read16(PLL_DIV)
  16. #define bfin_write_PLL_DIV(val) bfin_write16(PLL_DIV, val)
  17. #define bfin_read_VR_CTL() bfin_read16(VR_CTL)
  18. #define bfin_read_PLL_STAT() bfin_read16(PLL_STAT)
  19. #define bfin_write_PLL_STAT(val) bfin_write16(PLL_STAT, val)
  20. #define bfin_read_PLL_LOCKCNT() bfin_read16(PLL_LOCKCNT)
  21. #define bfin_write_PLL_LOCKCNT(val) bfin_write16(PLL_LOCKCNT, val)
  22. #define bfin_read_CHIPID() bfin_read32(CHIPID)
  23. #define bfin_write_CHIPID(val) bfin_write32(CHIPID, val)
  24. /* System Interrupt Controller (0xFFC00100 - 0xFFC001FF) */
  25. #define bfin_read_SWRST() bfin_read16(SWRST)
  26. #define bfin_write_SWRST(val) bfin_write16(SWRST, val)
  27. #define bfin_read_SYSCR() bfin_read16(SYSCR)
  28. #define bfin_write_SYSCR(val) bfin_write16(SYSCR, val)
  29. #define bfin_read_SIC_RVECT() bfin_read32(SIC_RVECT)
  30. #define bfin_write_SIC_RVECT(val) bfin_write32(SIC_RVECT, val)
  31. #define bfin_read_SIC_IMASK0() bfin_read32(SIC_IMASK0)
  32. #define bfin_write_SIC_IMASK0(val) bfin_write32(SIC_IMASK0, val)
  33. #define bfin_read_SIC_IMASK(x) bfin_read32(SIC_IMASK0 + (x << 6))
  34. #define bfin_write_SIC_IMASK(x, val) bfin_write32((SIC_IMASK0 + (x << 6)), val)
  35. #define bfin_read_SIC_IAR0() bfin_read32(SIC_IAR0)
  36. #define bfin_write_SIC_IAR0(val) bfin_write32(SIC_IAR0, val)
  37. #define bfin_read_SIC_IAR1() bfin_read32(SIC_IAR1)
  38. #define bfin_write_SIC_IAR1(val) bfin_write32(SIC_IAR1, val)
  39. #define bfin_read_SIC_IAR2() bfin_read32(SIC_IAR2)
  40. #define bfin_write_SIC_IAR2(val) bfin_write32(SIC_IAR2, val)
  41. #define bfin_read_SIC_IAR3() bfin_read32(SIC_IAR3)
  42. #define bfin_write_SIC_IAR3(val) bfin_write32(SIC_IAR3, val)
  43. #define bfin_read_SIC_ISR0() bfin_read32(SIC_ISR0)
  44. #define bfin_write_SIC_ISR0(val) bfin_write32(SIC_ISR0, val)
  45. #define bfin_read_SIC_ISR(x) bfin_read32(SIC_ISR0 + (x << 6))
  46. #define bfin_write_SIC_ISR(x, val) bfin_write32((SIC_ISR0 + (x << 6)), val)
  47. #define bfin_read_SIC_IWR0() bfin_read32(SIC_IWR0)
  48. #define bfin_write_SIC_IWR0(val) bfin_write32(SIC_IWR0, val)
  49. #define bfin_read_SIC_IWR(x) bfin_read32(SIC_IWR0 + (x << 6))
  50. #define bfin_write_SIC_IWR(x, val) bfin_write32((SIC_IWR0 + (x << 6)), val)
  51. /* SIC Additions to ADSP-BF51x (0xFFC0014C - 0xFFC00162) */
  52. #define bfin_read_SIC_IMASK1() bfin_read32(SIC_IMASK1)
  53. #define bfin_write_SIC_IMASK1(val) bfin_write32(SIC_IMASK1, val)
  54. #define bfin_read_SIC_IAR4() bfin_read32(SIC_IAR4)
  55. #define bfin_write_SIC_IAR4(val) bfin_write32(SIC_IAR4, val)
  56. #define bfin_read_SIC_IAR5() bfin_read32(SIC_IAR5)
  57. #define bfin_write_SIC_IAR5(val) bfin_write32(SIC_IAR5, val)
  58. #define bfin_read_SIC_IAR6() bfin_read32(SIC_IAR6)
  59. #define bfin_write_SIC_IAR6(val) bfin_write32(SIC_IAR6, val)
  60. #define bfin_read_SIC_IAR7() bfin_read32(SIC_IAR7)
  61. #define bfin_write_SIC_IAR7(val) bfin_write32(SIC_IAR7, val)
  62. #define bfin_read_SIC_ISR1() bfin_read32(SIC_ISR1)
  63. #define bfin_write_SIC_ISR1(val) bfin_write32(SIC_ISR1, val)
  64. #define bfin_read_SIC_IWR1() bfin_read32(SIC_IWR1)
  65. #define bfin_write_SIC_IWR1(val) bfin_write32(SIC_IWR1, val)
  66. /* Watchdog Timer (0xFFC00200 - 0xFFC002FF) */
  67. #define bfin_read_WDOG_CTL() bfin_read16(WDOG_CTL)
  68. #define bfin_write_WDOG_CTL(val) bfin_write16(WDOG_CTL, val)
  69. #define bfin_read_WDOG_CNT() bfin_read32(WDOG_CNT)
  70. #define bfin_write_WDOG_CNT(val) bfin_write32(WDOG_CNT, val)
  71. #define bfin_read_WDOG_STAT() bfin_read32(WDOG_STAT)
  72. #define bfin_write_WDOG_STAT(val) bfin_write32(WDOG_STAT, val)
  73. /* Real Time Clock (0xFFC00300 - 0xFFC003FF) */
  74. #define bfin_read_RTC_STAT() bfin_read32(RTC_STAT)
  75. #define bfin_write_RTC_STAT(val) bfin_write32(RTC_STAT, val)
  76. #define bfin_read_RTC_ICTL() bfin_read16(RTC_ICTL)
  77. #define bfin_write_RTC_ICTL(val) bfin_write16(RTC_ICTL, val)
  78. #define bfin_read_RTC_ISTAT() bfin_read16(RTC_ISTAT)
  79. #define bfin_write_RTC_ISTAT(val) bfin_write16(RTC_ISTAT, val)
  80. #define bfin_read_RTC_SWCNT() bfin_read16(RTC_SWCNT)
  81. #define bfin_write_RTC_SWCNT(val) bfin_write16(RTC_SWCNT, val)
  82. #define bfin_read_RTC_ALARM() bfin_read32(RTC_ALARM)
  83. #define bfin_write_RTC_ALARM(val) bfin_write32(RTC_ALARM, val)
  84. #define bfin_read_RTC_FAST() bfin_read16(RTC_FAST)
  85. #define bfin_write_RTC_FAST(val) bfin_write16(RTC_FAST, val)
  86. #define bfin_read_RTC_PREN() bfin_read16(RTC_PREN)
  87. #define bfin_write_RTC_PREN(val) bfin_write16(RTC_PREN, val)
  88. /* UART0 Controller (0xFFC00400 - 0xFFC004FF) */
  89. #define bfin_read_UART0_THR() bfin_read16(UART0_THR)
  90. #define bfin_write_UART0_THR(val) bfin_write16(UART0_THR, val)
  91. #define bfin_read_UART0_RBR() bfin_read16(UART0_RBR)
  92. #define bfin_write_UART0_RBR(val) bfin_write16(UART0_RBR, val)
  93. #define bfin_read_UART0_DLL() bfin_read16(UART0_DLL)
  94. #define bfin_write_UART0_DLL(val) bfin_write16(UART0_DLL, val)
  95. #define bfin_read_UART0_IER() bfin_read16(UART0_IER)
  96. #define bfin_write_UART0_IER(val) bfin_write16(UART0_IER, val)
  97. #define bfin_read_UART0_DLH() bfin_read16(UART0_DLH)
  98. #define bfin_write_UART0_DLH(val) bfin_write16(UART0_DLH, val)
  99. #define bfin_read_UART0_IIR() bfin_read16(UART0_IIR)
  100. #define bfin_write_UART0_IIR(val) bfin_write16(UART0_IIR, val)
  101. #define bfin_read_UART0_LCR() bfin_read16(UART0_LCR)
  102. #define bfin_write_UART0_LCR(val) bfin_write16(UART0_LCR, val)
  103. #define bfin_read_UART0_MCR() bfin_read16(UART0_MCR)
  104. #define bfin_write_UART0_MCR(val) bfin_write16(UART0_MCR, val)
  105. #define bfin_read_UART0_LSR() bfin_read16(UART0_LSR)
  106. #define bfin_write_UART0_LSR(val) bfin_write16(UART0_LSR, val)
  107. #define bfin_read_UART0_MSR() bfin_read16(UART0_MSR)
  108. #define bfin_write_UART0_MSR(val) bfin_write16(UART0_MSR, val)
  109. #define bfin_read_UART0_SCR() bfin_read16(UART0_SCR)
  110. #define bfin_write_UART0_SCR(val) bfin_write16(UART0_SCR, val)
  111. #define bfin_read_UART0_GCTL() bfin_read16(UART0_GCTL)
  112. #define bfin_write_UART0_GCTL(val) bfin_write16(UART0_GCTL, val)
  113. /* TIMER0-7 Registers (0xFFC00600 - 0xFFC006FF) */
  114. #define bfin_read_TIMER0_CONFIG() bfin_read16(TIMER0_CONFIG)
  115. #define bfin_write_TIMER0_CONFIG(val) bfin_write16(TIMER0_CONFIG, val)
  116. #define bfin_read_TIMER0_COUNTER() bfin_read32(TIMER0_COUNTER)
  117. #define bfin_write_TIMER0_COUNTER(val) bfin_write32(TIMER0_COUNTER, val)
  118. #define bfin_read_TIMER0_PERIOD() bfin_read32(TIMER0_PERIOD)
  119. #define bfin_write_TIMER0_PERIOD(val) bfin_write32(TIMER0_PERIOD, val)
  120. #define bfin_read_TIMER0_WIDTH() bfin_read32(TIMER0_WIDTH)
  121. #define bfin_write_TIMER0_WIDTH(val) bfin_write32(TIMER0_WIDTH, val)
  122. #define bfin_read_TIMER1_CONFIG() bfin_read16(TIMER1_CONFIG)
  123. #define bfin_write_TIMER1_CONFIG(val) bfin_write16(TIMER1_CONFIG, val)
  124. #define bfin_read_TIMER1_COUNTER() bfin_read32(TIMER1_COUNTER)
  125. #define bfin_write_TIMER1_COUNTER(val) bfin_write32(TIMER1_COUNTER, val)
  126. #define bfin_read_TIMER1_PERIOD() bfin_read32(TIMER1_PERIOD)
  127. #define bfin_write_TIMER1_PERIOD(val) bfin_write32(TIMER1_PERIOD, val)
  128. #define bfin_read_TIMER1_WIDTH() bfin_read32(TIMER1_WIDTH)
  129. #define bfin_write_TIMER1_WIDTH(val) bfin_write32(TIMER1_WIDTH, val)
  130. #define bfin_read_TIMER2_CONFIG() bfin_read16(TIMER2_CONFIG)
  131. #define bfin_write_TIMER2_CONFIG(val) bfin_write16(TIMER2_CONFIG, val)
  132. #define bfin_read_TIMER2_COUNTER() bfin_read32(TIMER2_COUNTER)
  133. #define bfin_write_TIMER2_COUNTER(val) bfin_write32(TIMER2_COUNTER, val)
  134. #define bfin_read_TIMER2_PERIOD() bfin_read32(TIMER2_PERIOD)
  135. #define bfin_write_TIMER2_PERIOD(val) bfin_write32(TIMER2_PERIOD, val)
  136. #define bfin_read_TIMER2_WIDTH() bfin_read32(TIMER2_WIDTH)
  137. #define bfin_write_TIMER2_WIDTH(val) bfin_write32(TIMER2_WIDTH, val)
  138. #define bfin_read_TIMER3_CONFIG() bfin_read16(TIMER3_CONFIG)
  139. #define bfin_write_TIMER3_CONFIG(val) bfin_write16(TIMER3_CONFIG, val)
  140. #define bfin_read_TIMER3_COUNTER() bfin_read32(TIMER3_COUNTER)
  141. #define bfin_write_TIMER3_COUNTER(val) bfin_write32(TIMER3_COUNTER, val)
  142. #define bfin_read_TIMER3_PERIOD() bfin_read32(TIMER3_PERIOD)
  143. #define bfin_write_TIMER3_PERIOD(val) bfin_write32(TIMER3_PERIOD, val)
  144. #define bfin_read_TIMER3_WIDTH() bfin_read32(TIMER3_WIDTH)
  145. #define bfin_write_TIMER3_WIDTH(val) bfin_write32(TIMER3_WIDTH, val)
  146. #define bfin_read_TIMER4_CONFIG() bfin_read16(TIMER4_CONFIG)
  147. #define bfin_write_TIMER4_CONFIG(val) bfin_write16(TIMER4_CONFIG, val)
  148. #define bfin_read_TIMER4_COUNTER() bfin_read32(TIMER4_COUNTER)
  149. #define bfin_write_TIMER4_COUNTER(val) bfin_write32(TIMER4_COUNTER, val)
  150. #define bfin_read_TIMER4_PERIOD() bfin_read32(TIMER4_PERIOD)
  151. #define bfin_write_TIMER4_PERIOD(val) bfin_write32(TIMER4_PERIOD, val)
  152. #define bfin_read_TIMER4_WIDTH() bfin_read32(TIMER4_WIDTH)
  153. #define bfin_write_TIMER4_WIDTH(val) bfin_write32(TIMER4_WIDTH, val)
  154. #define bfin_read_TIMER5_CONFIG() bfin_read16(TIMER5_CONFIG)
  155. #define bfin_write_TIMER5_CONFIG(val) bfin_write16(TIMER5_CONFIG, val)
  156. #define bfin_read_TIMER5_COUNTER() bfin_read32(TIMER5_COUNTER)
  157. #define bfin_write_TIMER5_COUNTER(val) bfin_write32(TIMER5_COUNTER, val)
  158. #define bfin_read_TIMER5_PERIOD() bfin_read32(TIMER5_PERIOD)
  159. #define bfin_write_TIMER5_PERIOD(val) bfin_write32(TIMER5_PERIOD, val)
  160. #define bfin_read_TIMER5_WIDTH() bfin_read32(TIMER5_WIDTH)
  161. #define bfin_write_TIMER5_WIDTH(val) bfin_write32(TIMER5_WIDTH, val)
  162. #define bfin_read_TIMER6_CONFIG() bfin_read16(TIMER6_CONFIG)
  163. #define bfin_write_TIMER6_CONFIG(val) bfin_write16(TIMER6_CONFIG, val)
  164. #define bfin_read_TIMER6_COUNTER() bfin_read32(TIMER6_COUNTER)
  165. #define bfin_write_TIMER6_COUNTER(val) bfin_write32(TIMER6_COUNTER, val)
  166. #define bfin_read_TIMER6_PERIOD() bfin_read32(TIMER6_PERIOD)
  167. #define bfin_write_TIMER6_PERIOD(val) bfin_write32(TIMER6_PERIOD, val)
  168. #define bfin_read_TIMER6_WIDTH() bfin_read32(TIMER6_WIDTH)
  169. #define bfin_write_TIMER6_WIDTH(val) bfin_write32(TIMER6_WIDTH, val)
  170. #define bfin_read_TIMER7_CONFIG() bfin_read16(TIMER7_CONFIG)
  171. #define bfin_write_TIMER7_CONFIG(val) bfin_write16(TIMER7_CONFIG, val)
  172. #define bfin_read_TIMER7_COUNTER() bfin_read32(TIMER7_COUNTER)
  173. #define bfin_write_TIMER7_COUNTER(val) bfin_write32(TIMER7_COUNTER, val)
  174. #define bfin_read_TIMER7_PERIOD() bfin_read32(TIMER7_PERIOD)
  175. #define bfin_write_TIMER7_PERIOD(val) bfin_write32(TIMER7_PERIOD, val)
  176. #define bfin_read_TIMER7_WIDTH() bfin_read32(TIMER7_WIDTH)
  177. #define bfin_write_TIMER7_WIDTH(val) bfin_write32(TIMER7_WIDTH, val)
  178. #define bfin_read_TIMER_ENABLE() bfin_read16(TIMER_ENABLE)
  179. #define bfin_write_TIMER_ENABLE(val) bfin_write16(TIMER_ENABLE, val)
  180. #define bfin_read_TIMER_DISABLE() bfin_read16(TIMER_DISABLE)
  181. #define bfin_write_TIMER_DISABLE(val) bfin_write16(TIMER_DISABLE, val)
  182. #define bfin_read_TIMER_STATUS() bfin_read32(TIMER_STATUS)
  183. #define bfin_write_TIMER_STATUS(val) bfin_write32(TIMER_STATUS, val)
  184. /* General Purpose I/O Port F (0xFFC00700 - 0xFFC007FF) */
  185. #define bfin_read_PORTFIO() bfin_read16(PORTFIO)
  186. #define bfin_write_PORTFIO(val) bfin_write16(PORTFIO, val)
  187. #define bfin_read_PORTFIO_CLEAR() bfin_read16(PORTFIO_CLEAR)
  188. #define bfin_write_PORTFIO_CLEAR(val) bfin_write16(PORTFIO_CLEAR, val)
  189. #define bfin_read_PORTFIO_SET() bfin_read16(PORTFIO_SET)
  190. #define bfin_write_PORTFIO_SET(val) bfin_write16(PORTFIO_SET, val)
  191. #define bfin_read_PORTFIO_TOGGLE() bfin_read16(PORTFIO_TOGGLE)
  192. #define bfin_write_PORTFIO_TOGGLE(val) bfin_write16(PORTFIO_TOGGLE, val)
  193. #define bfin_read_PORTFIO_MASKA() bfin_read16(PORTFIO_MASKA)
  194. #define bfin_write_PORTFIO_MASKA(val) bfin_write16(PORTFIO_MASKA, val)
  195. #define bfin_read_PORTFIO_MASKA_CLEAR() bfin_read16(PORTFIO_MASKA_CLEAR)
  196. #define bfin_write_PORTFIO_MASKA_CLEAR(val) bfin_write16(PORTFIO_MASKA_CLEAR, val)
  197. #define bfin_read_PORTFIO_MASKA_SET() bfin_read16(PORTFIO_MASKA_SET)
  198. #define bfin_write_PORTFIO_MASKA_SET(val) bfin_write16(PORTFIO_MASKA_SET, val)
  199. #define bfin_read_PORTFIO_MASKA_TOGGLE() bfin_read16(PORTFIO_MASKA_TOGGLE)
  200. #define bfin_write_PORTFIO_MASKA_TOGGLE(val) bfin_write16(PORTFIO_MASKA_TOGGLE, val)
  201. #define bfin_read_PORTFIO_MASKB() bfin_read16(PORTFIO_MASKB)
  202. #define bfin_write_PORTFIO_MASKB(val) bfin_write16(PORTFIO_MASKB, val)
  203. #define bfin_read_PORTFIO_MASKB_CLEAR() bfin_read16(PORTFIO_MASKB_CLEAR)
  204. #define bfin_write_PORTFIO_MASKB_CLEAR(val) bfin_write16(PORTFIO_MASKB_CLEAR, val)
  205. #define bfin_read_PORTFIO_MASKB_SET() bfin_read16(PORTFIO_MASKB_SET)
  206. #define bfin_write_PORTFIO_MASKB_SET(val) bfin_write16(PORTFIO_MASKB_SET, val)
  207. #define bfin_read_PORTFIO_MASKB_TOGGLE() bfin_read16(PORTFIO_MASKB_TOGGLE)
  208. #define bfin_write_PORTFIO_MASKB_TOGGLE(val) bfin_write16(PORTFIO_MASKB_TOGGLE, val)
  209. #define bfin_read_PORTFIO_DIR() bfin_read16(PORTFIO_DIR)
  210. #define bfin_write_PORTFIO_DIR(val) bfin_write16(PORTFIO_DIR, val)
  211. #define bfin_read_PORTFIO_POLAR() bfin_read16(PORTFIO_POLAR)
  212. #define bfin_write_PORTFIO_POLAR(val) bfin_write16(PORTFIO_POLAR, val)
  213. #define bfin_read_PORTFIO_EDGE() bfin_read16(PORTFIO_EDGE)
  214. #define bfin_write_PORTFIO_EDGE(val) bfin_write16(PORTFIO_EDGE, val)
  215. #define bfin_read_PORTFIO_BOTH() bfin_read16(PORTFIO_BOTH)
  216. #define bfin_write_PORTFIO_BOTH(val) bfin_write16(PORTFIO_BOTH, val)
  217. #define bfin_read_PORTFIO_INEN() bfin_read16(PORTFIO_INEN)
  218. #define bfin_write_PORTFIO_INEN(val) bfin_write16(PORTFIO_INEN, val)
  219. /* SPORT0 Controller (0xFFC00800 - 0xFFC008FF) */
  220. #define bfin_read_SPORT0_TCR1() bfin_read16(SPORT0_TCR1)
  221. #define bfin_write_SPORT0_TCR1(val) bfin_write16(SPORT0_TCR1, val)
  222. #define bfin_read_SPORT0_TCR2() bfin_read16(SPORT0_TCR2)
  223. #define bfin_write_SPORT0_TCR2(val) bfin_write16(SPORT0_TCR2, val)
  224. #define bfin_read_SPORT0_TCLKDIV() bfin_read16(SPORT0_TCLKDIV)
  225. #define bfin_write_SPORT0_TCLKDIV(val) bfin_write16(SPORT0_TCLKDIV, val)
  226. #define bfin_read_SPORT0_TFSDIV() bfin_read16(SPORT0_TFSDIV)
  227. #define bfin_write_SPORT0_TFSDIV(val) bfin_write16(SPORT0_TFSDIV, val)
  228. #define bfin_read_SPORT0_TX() bfin_read32(SPORT0_TX)
  229. #define bfin_write_SPORT0_TX(val) bfin_write32(SPORT0_TX, val)
  230. #define bfin_read_SPORT0_RX() bfin_read32(SPORT0_RX)
  231. #define bfin_write_SPORT0_RX(val) bfin_write32(SPORT0_RX, val)
  232. #define bfin_read_SPORT0_TX32() bfin_read32(SPORT0_TX32)
  233. #define bfin_write_SPORT0_TX32(val) bfin_write32(SPORT0_TX32, val)
  234. #define bfin_read_SPORT0_RX32() bfin_read32(SPORT0_RX32)
  235. #define bfin_write_SPORT0_RX32(val) bfin_write32(SPORT0_RX32, val)
  236. #define bfin_read_SPORT0_TX16() bfin_read16(SPORT0_TX16)
  237. #define bfin_write_SPORT0_TX16(val) bfin_write16(SPORT0_TX16, val)
  238. #define bfin_read_SPORT0_RX16() bfin_read16(SPORT0_RX16)
  239. #define bfin_write_SPORT0_RX16(val) bfin_write16(SPORT0_RX16, val)
  240. #define bfin_read_SPORT0_RCR1() bfin_read16(SPORT0_RCR1)
  241. #define bfin_write_SPORT0_RCR1(val) bfin_write16(SPORT0_RCR1, val)
  242. #define bfin_read_SPORT0_RCR2() bfin_read16(SPORT0_RCR2)
  243. #define bfin_write_SPORT0_RCR2(val) bfin_write16(SPORT0_RCR2, val)
  244. #define bfin_read_SPORT0_RCLKDIV() bfin_read16(SPORT0_RCLKDIV)
  245. #define bfin_write_SPORT0_RCLKDIV(val) bfin_write16(SPORT0_RCLKDIV, val)
  246. #define bfin_read_SPORT0_RFSDIV() bfin_read16(SPORT0_RFSDIV)
  247. #define bfin_write_SPORT0_RFSDIV(val) bfin_write16(SPORT0_RFSDIV, val)
  248. #define bfin_read_SPORT0_STAT() bfin_read16(SPORT0_STAT)
  249. #define bfin_write_SPORT0_STAT(val) bfin_write16(SPORT0_STAT, val)
  250. #define bfin_read_SPORT0_CHNL() bfin_read16(SPORT0_CHNL)
  251. #define bfin_write_SPORT0_CHNL(val) bfin_write16(SPORT0_CHNL, val)
  252. #define bfin_read_SPORT0_MCMC1() bfin_read16(SPORT0_MCMC1)
  253. #define bfin_write_SPORT0_MCMC1(val) bfin_write16(SPORT0_MCMC1, val)
  254. #define bfin_read_SPORT0_MCMC2() bfin_read16(SPORT0_MCMC2)
  255. #define bfin_write_SPORT0_MCMC2(val) bfin_write16(SPORT0_MCMC2, val)
  256. #define bfin_read_SPORT0_MTCS0() bfin_read32(SPORT0_MTCS0)
  257. #define bfin_write_SPORT0_MTCS0(val) bfin_write32(SPORT0_MTCS0, val)
  258. #define bfin_read_SPORT0_MTCS1() bfin_read32(SPORT0_MTCS1)
  259. #define bfin_write_SPORT0_MTCS1(val) bfin_write32(SPORT0_MTCS1, val)
  260. #define bfin_read_SPORT0_MTCS2() bfin_read32(SPORT0_MTCS2)
  261. #define bfin_write_SPORT0_MTCS2(val) bfin_write32(SPORT0_MTCS2, val)
  262. #define bfin_read_SPORT0_MTCS3() bfin_read32(SPORT0_MTCS3)
  263. #define bfin_write_SPORT0_MTCS3(val) bfin_write32(SPORT0_MTCS3, val)
  264. #define bfin_read_SPORT0_MRCS0() bfin_read32(SPORT0_MRCS0)
  265. #define bfin_write_SPORT0_MRCS0(val) bfin_write32(SPORT0_MRCS0, val)
  266. #define bfin_read_SPORT0_MRCS1() bfin_read32(SPORT0_MRCS1)
  267. #define bfin_write_SPORT0_MRCS1(val) bfin_write32(SPORT0_MRCS1, val)
  268. #define bfin_read_SPORT0_MRCS2() bfin_read32(SPORT0_MRCS2)
  269. #define bfin_write_SPORT0_MRCS2(val) bfin_write32(SPORT0_MRCS2, val)
  270. #define bfin_read_SPORT0_MRCS3() bfin_read32(SPORT0_MRCS3)
  271. #define bfin_write_SPORT0_MRCS3(val) bfin_write32(SPORT0_MRCS3, val)
  272. /* SPORT1 Controller (0xFFC00900 - 0xFFC009FF) */
  273. #define bfin_read_SPORT1_TCR1() bfin_read16(SPORT1_TCR1)
  274. #define bfin_write_SPORT1_TCR1(val) bfin_write16(SPORT1_TCR1, val)
  275. #define bfin_read_SPORT1_TCR2() bfin_read16(SPORT1_TCR2)
  276. #define bfin_write_SPORT1_TCR2(val) bfin_write16(SPORT1_TCR2, val)
  277. #define bfin_read_SPORT1_TCLKDIV() bfin_read16(SPORT1_TCLKDIV)
  278. #define bfin_write_SPORT1_TCLKDIV(val) bfin_write16(SPORT1_TCLKDIV, val)
  279. #define bfin_read_SPORT1_TFSDIV() bfin_read16(SPORT1_TFSDIV)
  280. #define bfin_write_SPORT1_TFSDIV(val) bfin_write16(SPORT1_TFSDIV, val)
  281. #define bfin_read_SPORT1_TX() bfin_read32(SPORT1_TX)
  282. #define bfin_write_SPORT1_TX(val) bfin_write32(SPORT1_TX, val)
  283. #define bfin_read_SPORT1_RX() bfin_read32(SPORT1_RX)
  284. #define bfin_write_SPORT1_RX(val) bfin_write32(SPORT1_RX, val)
  285. #define bfin_read_SPORT1_TX32() bfin_read32(SPORT1_TX32)
  286. #define bfin_write_SPORT1_TX32(val) bfin_write32(SPORT1_TX32, val)
  287. #define bfin_read_SPORT1_RX32() bfin_read32(SPORT1_RX32)
  288. #define bfin_write_SPORT1_RX32(val) bfin_write32(SPORT1_RX32, val)
  289. #define bfin_read_SPORT1_TX16() bfin_read16(SPORT1_TX16)
  290. #define bfin_write_SPORT1_TX16(val) bfin_write16(SPORT1_TX16, val)
  291. #define bfin_read_SPORT1_RX16() bfin_read16(SPORT1_RX16)
  292. #define bfin_write_SPORT1_RX16(val) bfin_write16(SPORT1_RX16, val)
  293. #define bfin_read_SPORT1_RCR1() bfin_read16(SPORT1_RCR1)
  294. #define bfin_write_SPORT1_RCR1(val) bfin_write16(SPORT1_RCR1, val)
  295. #define bfin_read_SPORT1_RCR2() bfin_read16(SPORT1_RCR2)
  296. #define bfin_write_SPORT1_RCR2(val) bfin_write16(SPORT1_RCR2, val)
  297. #define bfin_read_SPORT1_RCLKDIV() bfin_read16(SPORT1_RCLKDIV)
  298. #define bfin_write_SPORT1_RCLKDIV(val) bfin_write16(SPORT1_RCLKDIV, val)
  299. #define bfin_read_SPORT1_RFSDIV() bfin_read16(SPORT1_RFSDIV)
  300. #define bfin_write_SPORT1_RFSDIV(val) bfin_write16(SPORT1_RFSDIV, val)
  301. #define bfin_read_SPORT1_STAT() bfin_read16(SPORT1_STAT)
  302. #define bfin_write_SPORT1_STAT(val) bfin_write16(SPORT1_STAT, val)
  303. #define bfin_read_SPORT1_CHNL() bfin_read16(SPORT1_CHNL)
  304. #define bfin_write_SPORT1_CHNL(val) bfin_write16(SPORT1_CHNL, val)
  305. #define bfin_read_SPORT1_MCMC1() bfin_read16(SPORT1_MCMC1)
  306. #define bfin_write_SPORT1_MCMC1(val) bfin_write16(SPORT1_MCMC1, val)
  307. #define bfin_read_SPORT1_MCMC2() bfin_read16(SPORT1_MCMC2)
  308. #define bfin_write_SPORT1_MCMC2(val) bfin_write16(SPORT1_MCMC2, val)
  309. #define bfin_read_SPORT1_MTCS0() bfin_read32(SPORT1_MTCS0)
  310. #define bfin_write_SPORT1_MTCS0(val) bfin_write32(SPORT1_MTCS0, val)
  311. #define bfin_read_SPORT1_MTCS1() bfin_read32(SPORT1_MTCS1)
  312. #define bfin_write_SPORT1_MTCS1(val) bfin_write32(SPORT1_MTCS1, val)
  313. #define bfin_read_SPORT1_MTCS2() bfin_read32(SPORT1_MTCS2)
  314. #define bfin_write_SPORT1_MTCS2(val) bfin_write32(SPORT1_MTCS2, val)
  315. #define bfin_read_SPORT1_MTCS3() bfin_read32(SPORT1_MTCS3)
  316. #define bfin_write_SPORT1_MTCS3(val) bfin_write32(SPORT1_MTCS3, val)
  317. #define bfin_read_SPORT1_MRCS0() bfin_read32(SPORT1_MRCS0)
  318. #define bfin_write_SPORT1_MRCS0(val) bfin_write32(SPORT1_MRCS0, val)
  319. #define bfin_read_SPORT1_MRCS1() bfin_read32(SPORT1_MRCS1)
  320. #define bfin_write_SPORT1_MRCS1(val) bfin_write32(SPORT1_MRCS1, val)
  321. #define bfin_read_SPORT1_MRCS2() bfin_read32(SPORT1_MRCS2)
  322. #define bfin_write_SPORT1_MRCS2(val) bfin_write32(SPORT1_MRCS2, val)
  323. #define bfin_read_SPORT1_MRCS3() bfin_read32(SPORT1_MRCS3)
  324. #define bfin_write_SPORT1_MRCS3(val) bfin_write32(SPORT1_MRCS3, val)
  325. /* External Bus Interface Unit (0xFFC00A00 - 0xFFC00AFF) */
  326. #define bfin_read_EBIU_AMGCTL() bfin_read16(EBIU_AMGCTL)
  327. #define bfin_write_EBIU_AMGCTL(val) bfin_write16(EBIU_AMGCTL, val)
  328. #define bfin_read_EBIU_AMBCTL0() bfin_read32(EBIU_AMBCTL0)
  329. #define bfin_write_EBIU_AMBCTL0(val) bfin_write32(EBIU_AMBCTL0, val)
  330. #define bfin_read_EBIU_AMBCTL1() bfin_read32(EBIU_AMBCTL1)
  331. #define bfin_write_EBIU_AMBCTL1(val) bfin_write32(EBIU_AMBCTL1, val)
  332. #define bfin_read_EBIU_SDGCTL() bfin_read32(EBIU_SDGCTL)
  333. #define bfin_write_EBIU_SDGCTL(val) bfin_write32(EBIU_SDGCTL, val)
  334. #define bfin_read_EBIU_SDBCTL() bfin_read16(EBIU_SDBCTL)
  335. #define bfin_write_EBIU_SDBCTL(val) bfin_write16(EBIU_SDBCTL, val)
  336. #define bfin_read_EBIU_SDRRC() bfin_read16(EBIU_SDRRC)
  337. #define bfin_write_EBIU_SDRRC(val) bfin_write16(EBIU_SDRRC, val)
  338. #define bfin_read_EBIU_SDSTAT() bfin_read16(EBIU_SDSTAT)
  339. #define bfin_write_EBIU_SDSTAT(val) bfin_write16(EBIU_SDSTAT, val)
  340. /* DMA Traffic Control Registers */
  341. #define bfin_read_DMA_TC_PER() bfin_read16(DMA_TC_PER)
  342. #define bfin_write_DMA_TC_PER(val) bfin_write16(DMA_TC_PER, val)
  343. #define bfin_read_DMA_TC_CNT() bfin_read16(DMA_TC_CNT)
  344. #define bfin_write_DMA_TC_CNT(val) bfin_write16(DMA_TC_CNT, val)
  345. /* Alternate deprecated register names (below) provided for backwards code compatibility */
  346. #define bfin_read_DMA_TCPER() bfin_read16(DMA_TCPER)
  347. #define bfin_write_DMA_TCPER(val) bfin_write16(DMA_TCPER, val)
  348. #define bfin_read_DMA_TCCNT() bfin_read16(DMA_TCCNT)
  349. #define bfin_write_DMA_TCCNT(val) bfin_write16(DMA_TCCNT, val)
  350. /* DMA Controller */
  351. #define bfin_read_DMA0_CONFIG() bfin_read16(DMA0_CONFIG)
  352. #define bfin_write_DMA0_CONFIG(val) bfin_write16(DMA0_CONFIG, val)
  353. #define bfin_read_DMA0_NEXT_DESC_PTR() bfin_read32(DMA0_NEXT_DESC_PTR)
  354. #define bfin_write_DMA0_NEXT_DESC_PTR(val) bfin_write32(DMA0_NEXT_DESC_PTR, val)
  355. #define bfin_read_DMA0_START_ADDR() bfin_read32(DMA0_START_ADDR)
  356. #define bfin_write_DMA0_START_ADDR(val) bfin_write32(DMA0_START_ADDR, val)
  357. #define bfin_read_DMA0_X_COUNT() bfin_read16(DMA0_X_COUNT)
  358. #define bfin_write_DMA0_X_COUNT(val) bfin_write16(DMA0_X_COUNT, val)
  359. #define bfin_read_DMA0_Y_COUNT() bfin_read16(DMA0_Y_COUNT)
  360. #define bfin_write_DMA0_Y_COUNT(val) bfin_write16(DMA0_Y_COUNT, val)
  361. #define bfin_read_DMA0_X_MODIFY() bfin_read16(DMA0_X_MODIFY)
  362. #define bfin_write_DMA0_X_MODIFY(val) bfin_write16(DMA0_X_MODIFY, val)
  363. #define bfin_read_DMA0_Y_MODIFY() bfin_read16(DMA0_Y_MODIFY)
  364. #define bfin_write_DMA0_Y_MODIFY(val) bfin_write16(DMA0_Y_MODIFY, val)
  365. #define bfin_read_DMA0_CURR_DESC_PTR() bfin_read32(DMA0_CURR_DESC_PTR)
  366. #define bfin_write_DMA0_CURR_DESC_PTR(val) bfin_write32(DMA0_CURR_DESC_PTR, val)
  367. #define bfin_read_DMA0_CURR_ADDR() bfin_read32(DMA0_CURR_ADDR)
  368. #define bfin_write_DMA0_CURR_ADDR(val) bfin_write32(DMA0_CURR_ADDR, val)
  369. #define bfin_read_DMA0_CURR_X_COUNT() bfin_read16(DMA0_CURR_X_COUNT)
  370. #define bfin_write_DMA0_CURR_X_COUNT(val) bfin_write16(DMA0_CURR_X_COUNT, val)
  371. #define bfin_read_DMA0_CURR_Y_COUNT() bfin_read16(DMA0_CURR_Y_COUNT)
  372. #define bfin_write_DMA0_CURR_Y_COUNT(val) bfin_write16(DMA0_CURR_Y_COUNT, val)
  373. #define bfin_read_DMA0_IRQ_STATUS() bfin_read16(DMA0_IRQ_STATUS)
  374. #define bfin_write_DMA0_IRQ_STATUS(val) bfin_write16(DMA0_IRQ_STATUS, val)
  375. #define bfin_read_DMA0_PERIPHERAL_MAP() bfin_read16(DMA0_PERIPHERAL_MAP)
  376. #define bfin_write_DMA0_PERIPHERAL_MAP(val) bfin_write16(DMA0_PERIPHERAL_MAP, val)
  377. #define bfin_read_DMA1_CONFIG() bfin_read16(DMA1_CONFIG)
  378. #define bfin_write_DMA1_CONFIG(val) bfin_write16(DMA1_CONFIG, val)
  379. #define bfin_read_DMA1_NEXT_DESC_PTR() bfin_read32(DMA1_NEXT_DESC_PTR)
  380. #define bfin_write_DMA1_NEXT_DESC_PTR(val) bfin_write32(DMA1_NEXT_DESC_PTR, val)
  381. #define bfin_read_DMA1_START_ADDR() bfin_read32(DMA1_START_ADDR)
  382. #define bfin_write_DMA1_START_ADDR(val) bfin_write32(DMA1_START_ADDR, val)
  383. #define bfin_read_DMA1_X_COUNT() bfin_read16(DMA1_X_COUNT)
  384. #define bfin_write_DMA1_X_COUNT(val) bfin_write16(DMA1_X_COUNT, val)
  385. #define bfin_read_DMA1_Y_COUNT() bfin_read16(DMA1_Y_COUNT)
  386. #define bfin_write_DMA1_Y_COUNT(val) bfin_write16(DMA1_Y_COUNT, val)
  387. #define bfin_read_DMA1_X_MODIFY() bfin_read16(DMA1_X_MODIFY)
  388. #define bfin_write_DMA1_X_MODIFY(val) bfin_write16(DMA1_X_MODIFY, val)
  389. #define bfin_read_DMA1_Y_MODIFY() bfin_read16(DMA1_Y_MODIFY)
  390. #define bfin_write_DMA1_Y_MODIFY(val) bfin_write16(DMA1_Y_MODIFY, val)
  391. #define bfin_read_DMA1_CURR_DESC_PTR() bfin_read32(DMA1_CURR_DESC_PTR)
  392. #define bfin_write_DMA1_CURR_DESC_PTR(val) bfin_write32(DMA1_CURR_DESC_PTR, val)
  393. #define bfin_read_DMA1_CURR_ADDR() bfin_read32(DMA1_CURR_ADDR)
  394. #define bfin_write_DMA1_CURR_ADDR(val) bfin_write32(DMA1_CURR_ADDR, val)
  395. #define bfin_read_DMA1_CURR_X_COUNT() bfin_read16(DMA1_CURR_X_COUNT)
  396. #define bfin_write_DMA1_CURR_X_COUNT(val) bfin_write16(DMA1_CURR_X_COUNT, val)
  397. #define bfin_read_DMA1_CURR_Y_COUNT() bfin_read16(DMA1_CURR_Y_COUNT)
  398. #define bfin_write_DMA1_CURR_Y_COUNT(val) bfin_write16(DMA1_CURR_Y_COUNT, val)
  399. #define bfin_read_DMA1_IRQ_STATUS() bfin_read16(DMA1_IRQ_STATUS)
  400. #define bfin_write_DMA1_IRQ_STATUS(val) bfin_write16(DMA1_IRQ_STATUS, val)
  401. #define bfin_read_DMA1_PERIPHERAL_MAP() bfin_read16(DMA1_PERIPHERAL_MAP)
  402. #define bfin_write_DMA1_PERIPHERAL_MAP(val) bfin_write16(DMA1_PERIPHERAL_MAP, val)
  403. #define bfin_read_DMA2_CONFIG() bfin_read16(DMA2_CONFIG)
  404. #define bfin_write_DMA2_CONFIG(val) bfin_write16(DMA2_CONFIG, val)
  405. #define bfin_read_DMA2_NEXT_DESC_PTR() bfin_read32(DMA2_NEXT_DESC_PTR)
  406. #define bfin_write_DMA2_NEXT_DESC_PTR(val) bfin_write32(DMA2_NEXT_DESC_PTR, val)
  407. #define bfin_read_DMA2_START_ADDR() bfin_read32(DMA2_START_ADDR)
  408. #define bfin_write_DMA2_START_ADDR(val) bfin_write32(DMA2_START_ADDR, val)
  409. #define bfin_read_DMA2_X_COUNT() bfin_read16(DMA2_X_COUNT)
  410. #define bfin_write_DMA2_X_COUNT(val) bfin_write16(DMA2_X_COUNT, val)
  411. #define bfin_read_DMA2_Y_COUNT() bfin_read16(DMA2_Y_COUNT)
  412. #define bfin_write_DMA2_Y_COUNT(val) bfin_write16(DMA2_Y_COUNT, val)
  413. #define bfin_read_DMA2_X_MODIFY() bfin_read16(DMA2_X_MODIFY)
  414. #define bfin_write_DMA2_X_MODIFY(val) bfin_write16(DMA2_X_MODIFY, val)
  415. #define bfin_read_DMA2_Y_MODIFY() bfin_read16(DMA2_Y_MODIFY)
  416. #define bfin_write_DMA2_Y_MODIFY(val) bfin_write16(DMA2_Y_MODIFY, val)
  417. #define bfin_read_DMA2_CURR_DESC_PTR() bfin_read32(DMA2_CURR_DESC_PTR)
  418. #define bfin_write_DMA2_CURR_DESC_PTR(val) bfin_write32(DMA2_CURR_DESC_PTR, val)
  419. #define bfin_read_DMA2_CURR_ADDR() bfin_read32(DMA2_CURR_ADDR)
  420. #define bfin_write_DMA2_CURR_ADDR(val) bfin_write32(DMA2_CURR_ADDR, val)
  421. #define bfin_read_DMA2_CURR_X_COUNT() bfin_read16(DMA2_CURR_X_COUNT)
  422. #define bfin_write_DMA2_CURR_X_COUNT(val) bfin_write16(DMA2_CURR_X_COUNT, val)
  423. #define bfin_read_DMA2_CURR_Y_COUNT() bfin_read16(DMA2_CURR_Y_COUNT)
  424. #define bfin_write_DMA2_CURR_Y_COUNT(val) bfin_write16(DMA2_CURR_Y_COUNT, val)
  425. #define bfin_read_DMA2_IRQ_STATUS() bfin_read16(DMA2_IRQ_STATUS)
  426. #define bfin_write_DMA2_IRQ_STATUS(val) bfin_write16(DMA2_IRQ_STATUS, val)
  427. #define bfin_read_DMA2_PERIPHERAL_MAP() bfin_read16(DMA2_PERIPHERAL_MAP)
  428. #define bfin_write_DMA2_PERIPHERAL_MAP(val) bfin_write16(DMA2_PERIPHERAL_MAP, val)
  429. #define bfin_read_DMA3_CONFIG() bfin_read16(DMA3_CONFIG)
  430. #define bfin_write_DMA3_CONFIG(val) bfin_write16(DMA3_CONFIG, val)
  431. #define bfin_read_DMA3_NEXT_DESC_PTR() bfin_read32(DMA3_NEXT_DESC_PTR)
  432. #define bfin_write_DMA3_NEXT_DESC_PTR(val) bfin_write32(DMA3_NEXT_DESC_PTR, val)
  433. #define bfin_read_DMA3_START_ADDR() bfin_read32(DMA3_START_ADDR)
  434. #define bfin_write_DMA3_START_ADDR(val) bfin_write32(DMA3_START_ADDR, val)
  435. #define bfin_read_DMA3_X_COUNT() bfin_read16(DMA3_X_COUNT)
  436. #define bfin_write_DMA3_X_COUNT(val) bfin_write16(DMA3_X_COUNT, val)
  437. #define bfin_read_DMA3_Y_COUNT() bfin_read16(DMA3_Y_COUNT)
  438. #define bfin_write_DMA3_Y_COUNT(val) bfin_write16(DMA3_Y_COUNT, val)
  439. #define bfin_read_DMA3_X_MODIFY() bfin_read16(DMA3_X_MODIFY)
  440. #define bfin_write_DMA3_X_MODIFY(val) bfin_write16(DMA3_X_MODIFY, val)
  441. #define bfin_read_DMA3_Y_MODIFY() bfin_read16(DMA3_Y_MODIFY)
  442. #define bfin_write_DMA3_Y_MODIFY(val) bfin_write16(DMA3_Y_MODIFY, val)
  443. #define bfin_read_DMA3_CURR_DESC_PTR() bfin_read32(DMA3_CURR_DESC_PTR)
  444. #define bfin_write_DMA3_CURR_DESC_PTR(val) bfin_write32(DMA3_CURR_DESC_PTR, val)
  445. #define bfin_read_DMA3_CURR_ADDR() bfin_read32(DMA3_CURR_ADDR)
  446. #define bfin_write_DMA3_CURR_ADDR(val) bfin_write32(DMA3_CURR_ADDR, val)
  447. #define bfin_read_DMA3_CURR_X_COUNT() bfin_read16(DMA3_CURR_X_COUNT)
  448. #define bfin_write_DMA3_CURR_X_COUNT(val) bfin_write16(DMA3_CURR_X_COUNT, val)
  449. #define bfin_read_DMA3_CURR_Y_COUNT() bfin_read16(DMA3_CURR_Y_COUNT)
  450. #define bfin_write_DMA3_CURR_Y_COUNT(val) bfin_write16(DMA3_CURR_Y_COUNT, val)
  451. #define bfin_read_DMA3_IRQ_STATUS() bfin_read16(DMA3_IRQ_STATUS)
  452. #define bfin_write_DMA3_IRQ_STATUS(val) bfin_write16(DMA3_IRQ_STATUS, val)
  453. #define bfin_read_DMA3_PERIPHERAL_MAP() bfin_read16(DMA3_PERIPHERAL_MAP)
  454. #define bfin_write_DMA3_PERIPHERAL_MAP(val) bfin_write16(DMA3_PERIPHERAL_MAP, val)
  455. #define bfin_read_DMA4_CONFIG() bfin_read16(DMA4_CONFIG)
  456. #define bfin_write_DMA4_CONFIG(val) bfin_write16(DMA4_CONFIG, val)
  457. #define bfin_read_DMA4_NEXT_DESC_PTR() bfin_read32(DMA4_NEXT_DESC_PTR)
  458. #define bfin_write_DMA4_NEXT_DESC_PTR(val) bfin_write32(DMA4_NEXT_DESC_PTR, val)
  459. #define bfin_read_DMA4_START_ADDR() bfin_read32(DMA4_START_ADDR)
  460. #define bfin_write_DMA4_START_ADDR(val) bfin_write32(DMA4_START_ADDR, val)
  461. #define bfin_read_DMA4_X_COUNT() bfin_read16(DMA4_X_COUNT)
  462. #define bfin_write_DMA4_X_COUNT(val) bfin_write16(DMA4_X_COUNT, val)
  463. #define bfin_read_DMA4_Y_COUNT() bfin_read16(DMA4_Y_COUNT)
  464. #define bfin_write_DMA4_Y_COUNT(val) bfin_write16(DMA4_Y_COUNT, val)
  465. #define bfin_read_DMA4_X_MODIFY() bfin_read16(DMA4_X_MODIFY)
  466. #define bfin_write_DMA4_X_MODIFY(val) bfin_write16(DMA4_X_MODIFY, val)
  467. #define bfin_read_DMA4_Y_MODIFY() bfin_read16(DMA4_Y_MODIFY)
  468. #define bfin_write_DMA4_Y_MODIFY(val) bfin_write16(DMA4_Y_MODIFY, val)
  469. #define bfin_read_DMA4_CURR_DESC_PTR() bfin_read32(DMA4_CURR_DESC_PTR)
  470. #define bfin_write_DMA4_CURR_DESC_PTR(val) bfin_write32(DMA4_CURR_DESC_PTR, val)
  471. #define bfin_read_DMA4_CURR_ADDR() bfin_read32(DMA4_CURR_ADDR)
  472. #define bfin_write_DMA4_CURR_ADDR(val) bfin_write32(DMA4_CURR_ADDR, val)
  473. #define bfin_read_DMA4_CURR_X_COUNT() bfin_read16(DMA4_CURR_X_COUNT)
  474. #define bfin_write_DMA4_CURR_X_COUNT(val) bfin_write16(DMA4_CURR_X_COUNT, val)
  475. #define bfin_read_DMA4_CURR_Y_COUNT() bfin_read16(DMA4_CURR_Y_COUNT)
  476. #define bfin_write_DMA4_CURR_Y_COUNT(val) bfin_write16(DMA4_CURR_Y_COUNT, val)
  477. #define bfin_read_DMA4_IRQ_STATUS() bfin_read16(DMA4_IRQ_STATUS)
  478. #define bfin_write_DMA4_IRQ_STATUS(val) bfin_write16(DMA4_IRQ_STATUS, val)
  479. #define bfin_read_DMA4_PERIPHERAL_MAP() bfin_read16(DMA4_PERIPHERAL_MAP)
  480. #define bfin_write_DMA4_PERIPHERAL_MAP(val) bfin_write16(DMA4_PERIPHERAL_MAP, val)
  481. #define bfin_read_DMA5_CONFIG() bfin_read16(DMA5_CONFIG)
  482. #define bfin_write_DMA5_CONFIG(val) bfin_write16(DMA5_CONFIG, val)
  483. #define bfin_read_DMA5_NEXT_DESC_PTR() bfin_read32(DMA5_NEXT_DESC_PTR)
  484. #define bfin_write_DMA5_NEXT_DESC_PTR(val) bfin_write32(DMA5_NEXT_DESC_PTR, val)
  485. #define bfin_read_DMA5_START_ADDR() bfin_read32(DMA5_START_ADDR)
  486. #define bfin_write_DMA5_START_ADDR(val) bfin_write32(DMA5_START_ADDR, val)
  487. #define bfin_read_DMA5_X_COUNT() bfin_read16(DMA5_X_COUNT)
  488. #define bfin_write_DMA5_X_COUNT(val) bfin_write16(DMA5_X_COUNT, val)
  489. #define bfin_read_DMA5_Y_COUNT() bfin_read16(DMA5_Y_COUNT)
  490. #define bfin_write_DMA5_Y_COUNT(val) bfin_write16(DMA5_Y_COUNT, val)
  491. #define bfin_read_DMA5_X_MODIFY() bfin_read16(DMA5_X_MODIFY)
  492. #define bfin_write_DMA5_X_MODIFY(val) bfin_write16(DMA5_X_MODIFY, val)
  493. #define bfin_read_DMA5_Y_MODIFY() bfin_read16(DMA5_Y_MODIFY)
  494. #define bfin_write_DMA5_Y_MODIFY(val) bfin_write16(DMA5_Y_MODIFY, val)
  495. #define bfin_read_DMA5_CURR_DESC_PTR() bfin_read32(DMA5_CURR_DESC_PTR)
  496. #define bfin_write_DMA5_CURR_DESC_PTR(val) bfin_write32(DMA5_CURR_DESC_PTR, val)
  497. #define bfin_read_DMA5_CURR_ADDR() bfin_read32(DMA5_CURR_ADDR)
  498. #define bfin_write_DMA5_CURR_ADDR(val) bfin_write32(DMA5_CURR_ADDR, val)
  499. #define bfin_read_DMA5_CURR_X_COUNT() bfin_read16(DMA5_CURR_X_COUNT)
  500. #define bfin_write_DMA5_CURR_X_COUNT(val) bfin_write16(DMA5_CURR_X_COUNT, val)
  501. #define bfin_read_DMA5_CURR_Y_COUNT() bfin_read16(DMA5_CURR_Y_COUNT)
  502. #define bfin_write_DMA5_CURR_Y_COUNT(val) bfin_write16(DMA5_CURR_Y_COUNT, val)
  503. #define bfin_read_DMA5_IRQ_STATUS() bfin_read16(DMA5_IRQ_STATUS)
  504. #define bfin_write_DMA5_IRQ_STATUS(val) bfin_write16(DMA5_IRQ_STATUS, val)
  505. #define bfin_read_DMA5_PERIPHERAL_MAP() bfin_read16(DMA5_PERIPHERAL_MAP)
  506. #define bfin_write_DMA5_PERIPHERAL_MAP(val) bfin_write16(DMA5_PERIPHERAL_MAP, val)
  507. #define bfin_read_DMA6_CONFIG() bfin_read16(DMA6_CONFIG)
  508. #define bfin_write_DMA6_CONFIG(val) bfin_write16(DMA6_CONFIG, val)
  509. #define bfin_read_DMA6_NEXT_DESC_PTR() bfin_read32(DMA6_NEXT_DESC_PTR)
  510. #define bfin_write_DMA6_NEXT_DESC_PTR(val) bfin_write32(DMA6_NEXT_DESC_PTR, val)
  511. #define bfin_read_DMA6_START_ADDR() bfin_read32(DMA6_START_ADDR)
  512. #define bfin_write_DMA6_START_ADDR(val) bfin_write32(DMA6_START_ADDR, val)
  513. #define bfin_read_DMA6_X_COUNT() bfin_read16(DMA6_X_COUNT)
  514. #define bfin_write_DMA6_X_COUNT(val) bfin_write16(DMA6_X_COUNT, val)
  515. #define bfin_read_DMA6_Y_COUNT() bfin_read16(DMA6_Y_COUNT)
  516. #define bfin_write_DMA6_Y_COUNT(val) bfin_write16(DMA6_Y_COUNT, val)
  517. #define bfin_read_DMA6_X_MODIFY() bfin_read16(DMA6_X_MODIFY)
  518. #define bfin_write_DMA6_X_MODIFY(val) bfin_write16(DMA6_X_MODIFY, val)
  519. #define bfin_read_DMA6_Y_MODIFY() bfin_read16(DMA6_Y_MODIFY)
  520. #define bfin_write_DMA6_Y_MODIFY(val) bfin_write16(DMA6_Y_MODIFY, val)
  521. #define bfin_read_DMA6_CURR_DESC_PTR() bfin_read32(DMA6_CURR_DESC_PTR)
  522. #define bfin_write_DMA6_CURR_DESC_PTR(val) bfin_write32(DMA6_CURR_DESC_PTR, val)
  523. #define bfin_read_DMA6_CURR_ADDR() bfin_read32(DMA6_CURR_ADDR)
  524. #define bfin_write_DMA6_CURR_ADDR(val) bfin_write32(DMA6_CURR_ADDR, val)
  525. #define bfin_read_DMA6_CURR_X_COUNT() bfin_read16(DMA6_CURR_X_COUNT)
  526. #define bfin_write_DMA6_CURR_X_COUNT(val) bfin_write16(DMA6_CURR_X_COUNT, val)
  527. #define bfin_read_DMA6_CURR_Y_COUNT() bfin_read16(DMA6_CURR_Y_COUNT)
  528. #define bfin_write_DMA6_CURR_Y_COUNT(val) bfin_write16(DMA6_CURR_Y_COUNT, val)
  529. #define bfin_read_DMA6_IRQ_STATUS() bfin_read16(DMA6_IRQ_STATUS)
  530. #define bfin_write_DMA6_IRQ_STATUS(val) bfin_write16(DMA6_IRQ_STATUS, val)
  531. #define bfin_read_DMA6_PERIPHERAL_MAP() bfin_read16(DMA6_PERIPHERAL_MAP)
  532. #define bfin_write_DMA6_PERIPHERAL_MAP(val) bfin_write16(DMA6_PERIPHERAL_MAP, val)
  533. #define bfin_read_DMA7_CONFIG() bfin_read16(DMA7_CONFIG)
  534. #define bfin_write_DMA7_CONFIG(val) bfin_write16(DMA7_CONFIG, val)
  535. #define bfin_read_DMA7_NEXT_DESC_PTR() bfin_read32(DMA7_NEXT_DESC_PTR)
  536. #define bfin_write_DMA7_NEXT_DESC_PTR(val) bfin_write32(DMA7_NEXT_DESC_PTR, val)
  537. #define bfin_read_DMA7_START_ADDR() bfin_read32(DMA7_START_ADDR)
  538. #define bfin_write_DMA7_START_ADDR(val) bfin_write32(DMA7_START_ADDR, val)
  539. #define bfin_read_DMA7_X_COUNT() bfin_read16(DMA7_X_COUNT)
  540. #define bfin_write_DMA7_X_COUNT(val) bfin_write16(DMA7_X_COUNT, val)
  541. #define bfin_read_DMA7_Y_COUNT() bfin_read16(DMA7_Y_COUNT)
  542. #define bfin_write_DMA7_Y_COUNT(val) bfin_write16(DMA7_Y_COUNT, val)
  543. #define bfin_read_DMA7_X_MODIFY() bfin_read16(DMA7_X_MODIFY)
  544. #define bfin_write_DMA7_X_MODIFY(val) bfin_write16(DMA7_X_MODIFY, val)
  545. #define bfin_read_DMA7_Y_MODIFY() bfin_read16(DMA7_Y_MODIFY)
  546. #define bfin_write_DMA7_Y_MODIFY(val) bfin_write16(DMA7_Y_MODIFY, val)
  547. #define bfin_read_DMA7_CURR_DESC_PTR() bfin_read32(DMA7_CURR_DESC_PTR)
  548. #define bfin_write_DMA7_CURR_DESC_PTR(val) bfin_write32(DMA7_CURR_DESC_PTR, val)
  549. #define bfin_read_DMA7_CURR_ADDR() bfin_read32(DMA7_CURR_ADDR)
  550. #define bfin_write_DMA7_CURR_ADDR(val) bfin_write32(DMA7_CURR_ADDR, val)
  551. #define bfin_read_DMA7_CURR_X_COUNT() bfin_read16(DMA7_CURR_X_COUNT)
  552. #define bfin_write_DMA7_CURR_X_COUNT(val) bfin_write16(DMA7_CURR_X_COUNT, val)
  553. #define bfin_read_DMA7_CURR_Y_COUNT() bfin_read16(DMA7_CURR_Y_COUNT)
  554. #define bfin_write_DMA7_CURR_Y_COUNT(val) bfin_write16(DMA7_CURR_Y_COUNT, val)
  555. #define bfin_read_DMA7_IRQ_STATUS() bfin_read16(DMA7_IRQ_STATUS)
  556. #define bfin_write_DMA7_IRQ_STATUS(val) bfin_write16(DMA7_IRQ_STATUS, val)
  557. #define bfin_read_DMA7_PERIPHERAL_MAP() bfin_read16(DMA7_PERIPHERAL_MAP)
  558. #define bfin_write_DMA7_PERIPHERAL_MAP(val) bfin_write16(DMA7_PERIPHERAL_MAP, val)
  559. #define bfin_read_DMA8_CONFIG() bfin_read16(DMA8_CONFIG)
  560. #define bfin_write_DMA8_CONFIG(val) bfin_write16(DMA8_CONFIG, val)
  561. #define bfin_read_DMA8_NEXT_DESC_PTR() bfin_read32(DMA8_NEXT_DESC_PTR)
  562. #define bfin_write_DMA8_NEXT_DESC_PTR(val) bfin_write32(DMA8_NEXT_DESC_PTR, val)
  563. #define bfin_read_DMA8_START_ADDR() bfin_read32(DMA8_START_ADDR)
  564. #define bfin_write_DMA8_START_ADDR(val) bfin_write32(DMA8_START_ADDR, val)
  565. #define bfin_read_DMA8_X_COUNT() bfin_read16(DMA8_X_COUNT)
  566. #define bfin_write_DMA8_X_COUNT(val) bfin_write16(DMA8_X_COUNT, val)
  567. #define bfin_read_DMA8_Y_COUNT() bfin_read16(DMA8_Y_COUNT)
  568. #define bfin_write_DMA8_Y_COUNT(val) bfin_write16(DMA8_Y_COUNT, val)
  569. #define bfin_read_DMA8_X_MODIFY() bfin_read16(DMA8_X_MODIFY)
  570. #define bfin_write_DMA8_X_MODIFY(val) bfin_write16(DMA8_X_MODIFY, val)
  571. #define bfin_read_DMA8_Y_MODIFY() bfin_read16(DMA8_Y_MODIFY)
  572. #define bfin_write_DMA8_Y_MODIFY(val) bfin_write16(DMA8_Y_MODIFY, val)
  573. #define bfin_read_DMA8_CURR_DESC_PTR() bfin_read32(DMA8_CURR_DESC_PTR)
  574. #define bfin_write_DMA8_CURR_DESC_PTR(val) bfin_write32(DMA8_CURR_DESC_PTR, val)
  575. #define bfin_read_DMA8_CURR_ADDR() bfin_read32(DMA8_CURR_ADDR)
  576. #define bfin_write_DMA8_CURR_ADDR(val) bfin_write32(DMA8_CURR_ADDR, val)
  577. #define bfin_read_DMA8_CURR_X_COUNT() bfin_read16(DMA8_CURR_X_COUNT)
  578. #define bfin_write_DMA8_CURR_X_COUNT(val) bfin_write16(DMA8_CURR_X_COUNT, val)
  579. #define bfin_read_DMA8_CURR_Y_COUNT() bfin_read16(DMA8_CURR_Y_COUNT)
  580. #define bfin_write_DMA8_CURR_Y_COUNT(val) bfin_write16(DMA8_CURR_Y_COUNT, val)
  581. #define bfin_read_DMA8_IRQ_STATUS() bfin_read16(DMA8_IRQ_STATUS)
  582. #define bfin_write_DMA8_IRQ_STATUS(val) bfin_write16(DMA8_IRQ_STATUS, val)
  583. #define bfin_read_DMA8_PERIPHERAL_MAP() bfin_read16(DMA8_PERIPHERAL_MAP)
  584. #define bfin_write_DMA8_PERIPHERAL_MAP(val) bfin_write16(DMA8_PERIPHERAL_MAP, val)
  585. #define bfin_read_DMA9_CONFIG() bfin_read16(DMA9_CONFIG)
  586. #define bfin_write_DMA9_CONFIG(val) bfin_write16(DMA9_CONFIG, val)
  587. #define bfin_read_DMA9_NEXT_DESC_PTR() bfin_read32(DMA9_NEXT_DESC_PTR)
  588. #define bfin_write_DMA9_NEXT_DESC_PTR(val) bfin_write32(DMA9_NEXT_DESC_PTR, val)
  589. #define bfin_read_DMA9_START_ADDR() bfin_read32(DMA9_START_ADDR)
  590. #define bfin_write_DMA9_START_ADDR(val) bfin_write32(DMA9_START_ADDR, val)
  591. #define bfin_read_DMA9_X_COUNT() bfin_read16(DMA9_X_COUNT)
  592. #define bfin_write_DMA9_X_COUNT(val) bfin_write16(DMA9_X_COUNT, val)
  593. #define bfin_read_DMA9_Y_COUNT() bfin_read16(DMA9_Y_COUNT)
  594. #define bfin_write_DMA9_Y_COUNT(val) bfin_write16(DMA9_Y_COUNT, val)
  595. #define bfin_read_DMA9_X_MODIFY() bfin_read16(DMA9_X_MODIFY)
  596. #define bfin_write_DMA9_X_MODIFY(val) bfin_write16(DMA9_X_MODIFY, val)
  597. #define bfin_read_DMA9_Y_MODIFY() bfin_read16(DMA9_Y_MODIFY)
  598. #define bfin_write_DMA9_Y_MODIFY(val) bfin_write16(DMA9_Y_MODIFY, val)
  599. #define bfin_read_DMA9_CURR_DESC_PTR() bfin_read32(DMA9_CURR_DESC_PTR)
  600. #define bfin_write_DMA9_CURR_DESC_PTR(val) bfin_write32(DMA9_CURR_DESC_PTR, val)
  601. #define bfin_read_DMA9_CURR_ADDR() bfin_read32(DMA9_CURR_ADDR)
  602. #define bfin_write_DMA9_CURR_ADDR(val) bfin_write32(DMA9_CURR_ADDR, val)
  603. #define bfin_read_DMA9_CURR_X_COUNT() bfin_read16(DMA9_CURR_X_COUNT)
  604. #define bfin_write_DMA9_CURR_X_COUNT(val) bfin_write16(DMA9_CURR_X_COUNT, val)
  605. #define bfin_read_DMA9_CURR_Y_COUNT() bfin_read16(DMA9_CURR_Y_COUNT)
  606. #define bfin_write_DMA9_CURR_Y_COUNT(val) bfin_write16(DMA9_CURR_Y_COUNT, val)
  607. #define bfin_read_DMA9_IRQ_STATUS() bfin_read16(DMA9_IRQ_STATUS)
  608. #define bfin_write_DMA9_IRQ_STATUS(val) bfin_write16(DMA9_IRQ_STATUS, val)
  609. #define bfin_read_DMA9_PERIPHERAL_MAP() bfin_read16(DMA9_PERIPHERAL_MAP)
  610. #define bfin_write_DMA9_PERIPHERAL_MAP(val) bfin_write16(DMA9_PERIPHERAL_MAP, val)
  611. #define bfin_read_DMA10_CONFIG() bfin_read16(DMA10_CONFIG)
  612. #define bfin_write_DMA10_CONFIG(val) bfin_write16(DMA10_CONFIG, val)
  613. #define bfin_read_DMA10_NEXT_DESC_PTR() bfin_read32(DMA10_NEXT_DESC_PTR)
  614. #define bfin_write_DMA10_NEXT_DESC_PTR(val) bfin_write32(DMA10_NEXT_DESC_PTR, val)
  615. #define bfin_read_DMA10_START_ADDR() bfin_read32(DMA10_START_ADDR)
  616. #define bfin_write_DMA10_START_ADDR(val) bfin_write32(DMA10_START_ADDR, val)
  617. #define bfin_read_DMA10_X_COUNT() bfin_read16(DMA10_X_COUNT)
  618. #define bfin_write_DMA10_X_COUNT(val) bfin_write16(DMA10_X_COUNT, val)
  619. #define bfin_read_DMA10_Y_COUNT() bfin_read16(DMA10_Y_COUNT)
  620. #define bfin_write_DMA10_Y_COUNT(val) bfin_write16(DMA10_Y_COUNT, val)
  621. #define bfin_read_DMA10_X_MODIFY() bfin_read16(DMA10_X_MODIFY)
  622. #define bfin_write_DMA10_X_MODIFY(val) bfin_write16(DMA10_X_MODIFY, val)
  623. #define bfin_read_DMA10_Y_MODIFY() bfin_read16(DMA10_Y_MODIFY)
  624. #define bfin_write_DMA10_Y_MODIFY(val) bfin_write16(DMA10_Y_MODIFY, val)
  625. #define bfin_read_DMA10_CURR_DESC_PTR() bfin_read32(DMA10_CURR_DESC_PTR)
  626. #define bfin_write_DMA10_CURR_DESC_PTR(val) bfin_write32(DMA10_CURR_DESC_PTR, val)
  627. #define bfin_read_DMA10_CURR_ADDR() bfin_read32(DMA10_CURR_ADDR)
  628. #define bfin_write_DMA10_CURR_ADDR(val) bfin_write32(DMA10_CURR_ADDR, val)
  629. #define bfin_read_DMA10_CURR_X_COUNT() bfin_read16(DMA10_CURR_X_COUNT)
  630. #define bfin_write_DMA10_CURR_X_COUNT(val) bfin_write16(DMA10_CURR_X_COUNT, val)
  631. #define bfin_read_DMA10_CURR_Y_COUNT() bfin_read16(DMA10_CURR_Y_COUNT)
  632. #define bfin_write_DMA10_CURR_Y_COUNT(val) bfin_write16(DMA10_CURR_Y_COUNT, val)
  633. #define bfin_read_DMA10_IRQ_STATUS() bfin_read16(DMA10_IRQ_STATUS)
  634. #define bfin_write_DMA10_IRQ_STATUS(val) bfin_write16(DMA10_IRQ_STATUS, val)
  635. #define bfin_read_DMA10_PERIPHERAL_MAP() bfin_read16(DMA10_PERIPHERAL_MAP)
  636. #define bfin_write_DMA10_PERIPHERAL_MAP(val) bfin_write16(DMA10_PERIPHERAL_MAP, val)
  637. #define bfin_read_DMA11_CONFIG() bfin_read16(DMA11_CONFIG)
  638. #define bfin_write_DMA11_CONFIG(val) bfin_write16(DMA11_CONFIG, val)
  639. #define bfin_read_DMA11_NEXT_DESC_PTR() bfin_read32(DMA11_NEXT_DESC_PTR)
  640. #define bfin_write_DMA11_NEXT_DESC_PTR(val) bfin_write32(DMA11_NEXT_DESC_PTR, val)
  641. #define bfin_read_DMA11_START_ADDR() bfin_read32(DMA11_START_ADDR)
  642. #define bfin_write_DMA11_START_ADDR(val) bfin_write32(DMA11_START_ADDR, val)
  643. #define bfin_read_DMA11_X_COUNT() bfin_read16(DMA11_X_COUNT)
  644. #define bfin_write_DMA11_X_COUNT(val) bfin_write16(DMA11_X_COUNT, val)
  645. #define bfin_read_DMA11_Y_COUNT() bfin_read16(DMA11_Y_COUNT)
  646. #define bfin_write_DMA11_Y_COUNT(val) bfin_write16(DMA11_Y_COUNT, val)
  647. #define bfin_read_DMA11_X_MODIFY() bfin_read16(DMA11_X_MODIFY)
  648. #define bfin_write_DMA11_X_MODIFY(val) bfin_write16(DMA11_X_MODIFY, val)
  649. #define bfin_read_DMA11_Y_MODIFY() bfin_read16(DMA11_Y_MODIFY)
  650. #define bfin_write_DMA11_Y_MODIFY(val) bfin_write16(DMA11_Y_MODIFY, val)
  651. #define bfin_read_DMA11_CURR_DESC_PTR() bfin_read32(DMA11_CURR_DESC_PTR)
  652. #define bfin_write_DMA11_CURR_DESC_PTR(val) bfin_write32(DMA11_CURR_DESC_PTR, val)
  653. #define bfin_read_DMA11_CURR_ADDR() bfin_read32(DMA11_CURR_ADDR)
  654. #define bfin_write_DMA11_CURR_ADDR(val) bfin_write32(DMA11_CURR_ADDR, val)
  655. #define bfin_read_DMA11_CURR_X_COUNT() bfin_read16(DMA11_CURR_X_COUNT)
  656. #define bfin_write_DMA11_CURR_X_COUNT(val) bfin_write16(DMA11_CURR_X_COUNT, val)
  657. #define bfin_read_DMA11_CURR_Y_COUNT() bfin_read16(DMA11_CURR_Y_COUNT)
  658. #define bfin_write_DMA11_CURR_Y_COUNT(val) bfin_write16(DMA11_CURR_Y_COUNT, val)
  659. #define bfin_read_DMA11_IRQ_STATUS() bfin_read16(DMA11_IRQ_STATUS)
  660. #define bfin_write_DMA11_IRQ_STATUS(val) bfin_write16(DMA11_IRQ_STATUS, val)
  661. #define bfin_read_DMA11_PERIPHERAL_MAP() bfin_read16(DMA11_PERIPHERAL_MAP)
  662. #define bfin_write_DMA11_PERIPHERAL_MAP(val) bfin_write16(DMA11_PERIPHERAL_MAP, val)
  663. #define bfin_read_MDMA_D0_CONFIG() bfin_read16(MDMA_D0_CONFIG)
  664. #define bfin_write_MDMA_D0_CONFIG(val) bfin_write16(MDMA_D0_CONFIG, val)
  665. #define bfin_read_MDMA_D0_NEXT_DESC_PTR() bfin_read32(MDMA_D0_NEXT_DESC_PTR)
  666. #define bfin_write_MDMA_D0_NEXT_DESC_PTR(val) bfin_write32(MDMA_D0_NEXT_DESC_PTR, val)
  667. #define bfin_read_MDMA_D0_START_ADDR() bfin_read32(MDMA_D0_START_ADDR)
  668. #define bfin_write_MDMA_D0_START_ADDR(val) bfin_write32(MDMA_D0_START_ADDR, val)
  669. #define bfin_read_MDMA_D0_X_COUNT() bfin_read16(MDMA_D0_X_COUNT)
  670. #define bfin_write_MDMA_D0_X_COUNT(val) bfin_write16(MDMA_D0_X_COUNT, val)
  671. #define bfin_read_MDMA_D0_Y_COUNT() bfin_read16(MDMA_D0_Y_COUNT)
  672. #define bfin_write_MDMA_D0_Y_COUNT(val) bfin_write16(MDMA_D0_Y_COUNT, val)
  673. #define bfin_read_MDMA_D0_X_MODIFY() bfin_read16(MDMA_D0_X_MODIFY)
  674. #define bfin_write_MDMA_D0_X_MODIFY(val) bfin_write16(MDMA_D0_X_MODIFY, val)
  675. #define bfin_read_MDMA_D0_Y_MODIFY() bfin_read16(MDMA_D0_Y_MODIFY)
  676. #define bfin_write_MDMA_D0_Y_MODIFY(val) bfin_write16(MDMA_D0_Y_MODIFY, val)
  677. #define bfin_read_MDMA_D0_CURR_DESC_PTR() bfin_read32(MDMA_D0_CURR_DESC_PTR)
  678. #define bfin_write_MDMA_D0_CURR_DESC_PTR(val) bfin_write32(MDMA_D0_CURR_DESC_PTR, val)
  679. #define bfin_read_MDMA_D0_CURR_ADDR() bfin_read32(MDMA_D0_CURR_ADDR)
  680. #define bfin_write_MDMA_D0_CURR_ADDR(val) bfin_write32(MDMA_D0_CURR_ADDR, val)
  681. #define bfin_read_MDMA_D0_CURR_X_COUNT() bfin_read16(MDMA_D0_CURR_X_COUNT)
  682. #define bfin_write_MDMA_D0_CURR_X_COUNT(val) bfin_write16(MDMA_D0_CURR_X_COUNT, val)
  683. #define bfin_read_MDMA_D0_CURR_Y_COUNT() bfin_read16(MDMA_D0_CURR_Y_COUNT)
  684. #define bfin_write_MDMA_D0_CURR_Y_COUNT(val) bfin_write16(MDMA_D0_CURR_Y_COUNT, val)
  685. #define bfin_read_MDMA_D0_IRQ_STATUS() bfin_read16(MDMA_D0_IRQ_STATUS)
  686. #define bfin_write_MDMA_D0_IRQ_STATUS(val) bfin_write16(MDMA_D0_IRQ_STATUS, val)
  687. #define bfin_read_MDMA_D0_PERIPHERAL_MAP() bfin_read16(MDMA_D0_PERIPHERAL_MAP)
  688. #define bfin_write_MDMA_D0_PERIPHERAL_MAP(val) bfin_write16(MDMA_D0_PERIPHERAL_MAP, val)
  689. #define bfin_read_MDMA_S0_CONFIG() bfin_read16(MDMA_S0_CONFIG)
  690. #define bfin_write_MDMA_S0_CONFIG(val) bfin_write16(MDMA_S0_CONFIG, val)
  691. #define bfin_read_MDMA_S0_NEXT_DESC_PTR() bfin_read32(MDMA_S0_NEXT_DESC_PTR)
  692. #define bfin_write_MDMA_S0_NEXT_DESC_PTR(val) bfin_write32(MDMA_S0_NEXT_DESC_PTR, val)
  693. #define bfin_read_MDMA_S0_START_ADDR() bfin_read32(MDMA_S0_START_ADDR)
  694. #define bfin_write_MDMA_S0_START_ADDR(val) bfin_write32(MDMA_S0_START_ADDR, val)
  695. #define bfin_read_MDMA_S0_X_COUNT() bfin_read16(MDMA_S0_X_COUNT)
  696. #define bfin_write_MDMA_S0_X_COUNT(val) bfin_write16(MDMA_S0_X_COUNT, val)
  697. #define bfin_read_MDMA_S0_Y_COUNT() bfin_read16(MDMA_S0_Y_COUNT)
  698. #define bfin_write_MDMA_S0_Y_COUNT(val) bfin_write16(MDMA_S0_Y_COUNT, val)
  699. #define bfin_read_MDMA_S0_X_MODIFY() bfin_read16(MDMA_S0_X_MODIFY)
  700. #define bfin_write_MDMA_S0_X_MODIFY(val) bfin_write16(MDMA_S0_X_MODIFY, val)
  701. #define bfin_read_MDMA_S0_Y_MODIFY() bfin_read16(MDMA_S0_Y_MODIFY)
  702. #define bfin_write_MDMA_S0_Y_MODIFY(val) bfin_write16(MDMA_S0_Y_MODIFY, val)
  703. #define bfin_read_MDMA_S0_CURR_DESC_PTR() bfin_read32(MDMA_S0_CURR_DESC_PTR)
  704. #define bfin_write_MDMA_S0_CURR_DESC_PTR(val) bfin_write32(MDMA_S0_CURR_DESC_PTR, val)
  705. #define bfin_read_MDMA_S0_CURR_ADDR() bfin_read32(MDMA_S0_CURR_ADDR)
  706. #define bfin_write_MDMA_S0_CURR_ADDR(val) bfin_write32(MDMA_S0_CURR_ADDR, val)
  707. #define bfin_read_MDMA_S0_CURR_X_COUNT() bfin_read16(MDMA_S0_CURR_X_COUNT)
  708. #define bfin_write_MDMA_S0_CURR_X_COUNT(val) bfin_write16(MDMA_S0_CURR_X_COUNT, val)
  709. #define bfin_read_MDMA_S0_CURR_Y_COUNT() bfin_read16(MDMA_S0_CURR_Y_COUNT)
  710. #define bfin_write_MDMA_S0_CURR_Y_COUNT(val) bfin_write16(MDMA_S0_CURR_Y_COUNT, val)
  711. #define bfin_read_MDMA_S0_IRQ_STATUS() bfin_read16(MDMA_S0_IRQ_STATUS)
  712. #define bfin_write_MDMA_S0_IRQ_STATUS(val) bfin_write16(MDMA_S0_IRQ_STATUS, val)
  713. #define bfin_read_MDMA_S0_PERIPHERAL_MAP() bfin_read16(MDMA_S0_PERIPHERAL_MAP)
  714. #define bfin_write_MDMA_S0_PERIPHERAL_MAP(val) bfin_write16(MDMA_S0_PERIPHERAL_MAP, val)
  715. #define bfin_read_MDMA_D1_CONFIG() bfin_read16(MDMA_D1_CONFIG)
  716. #define bfin_write_MDMA_D1_CONFIG(val) bfin_write16(MDMA_D1_CONFIG, val)
  717. #define bfin_read_MDMA_D1_NEXT_DESC_PTR() bfin_read32(MDMA_D1_NEXT_DESC_PTR)
  718. #define bfin_write_MDMA_D1_NEXT_DESC_PTR(val) bfin_write32(MDMA_D1_NEXT_DESC_PTR, val)
  719. #define bfin_read_MDMA_D1_START_ADDR() bfin_read32(MDMA_D1_START_ADDR)
  720. #define bfin_write_MDMA_D1_START_ADDR(val) bfin_write32(MDMA_D1_START_ADDR, val)
  721. #define bfin_read_MDMA_D1_X_COUNT() bfin_read16(MDMA_D1_X_COUNT)
  722. #define bfin_write_MDMA_D1_X_COUNT(val) bfin_write16(MDMA_D1_X_COUNT, val)
  723. #define bfin_read_MDMA_D1_Y_COUNT() bfin_read16(MDMA_D1_Y_COUNT)
  724. #define bfin_write_MDMA_D1_Y_COUNT(val) bfin_write16(MDMA_D1_Y_COUNT, val)
  725. #define bfin_read_MDMA_D1_X_MODIFY() bfin_read16(MDMA_D1_X_MODIFY)
  726. #define bfin_write_MDMA_D1_X_MODIFY(val) bfin_write16(MDMA_D1_X_MODIFY, val)
  727. #define bfin_read_MDMA_D1_Y_MODIFY() bfin_read16(MDMA_D1_Y_MODIFY)
  728. #define bfin_write_MDMA_D1_Y_MODIFY(val) bfin_write16(MDMA_D1_Y_MODIFY, val)
  729. #define bfin_read_MDMA_D1_CURR_DESC_PTR() bfin_read32(MDMA_D1_CURR_DESC_PTR)
  730. #define bfin_write_MDMA_D1_CURR_DESC_PTR(val) bfin_write32(MDMA_D1_CURR_DESC_PTR, val)
  731. #define bfin_read_MDMA_D1_CURR_ADDR() bfin_read32(MDMA_D1_CURR_ADDR)
  732. #define bfin_write_MDMA_D1_CURR_ADDR(val) bfin_write32(MDMA_D1_CURR_ADDR, val)
  733. #define bfin_read_MDMA_D1_CURR_X_COUNT() bfin_read16(MDMA_D1_CURR_X_COUNT)
  734. #define bfin_write_MDMA_D1_CURR_X_COUNT(val) bfin_write16(MDMA_D1_CURR_X_COUNT, val)
  735. #define bfin_read_MDMA_D1_CURR_Y_COUNT() bfin_read16(MDMA_D1_CURR_Y_COUNT)
  736. #define bfin_write_MDMA_D1_CURR_Y_COUNT(val) bfin_write16(MDMA_D1_CURR_Y_COUNT, val)
  737. #define bfin_read_MDMA_D1_IRQ_STATUS() bfin_read16(MDMA_D1_IRQ_STATUS)
  738. #define bfin_write_MDMA_D1_IRQ_STATUS(val) bfin_write16(MDMA_D1_IRQ_STATUS, val)
  739. #define bfin_read_MDMA_D1_PERIPHERAL_MAP() bfin_read16(MDMA_D1_PERIPHERAL_MAP)
  740. #define bfin_write_MDMA_D1_PERIPHERAL_MAP(val) bfin_write16(MDMA_D1_PERIPHERAL_MAP, val)
  741. #define bfin_read_MDMA_S1_CONFIG() bfin_read16(MDMA_S1_CONFIG)
  742. #define bfin_write_MDMA_S1_CONFIG(val) bfin_write16(MDMA_S1_CONFIG, val)
  743. #define bfin_read_MDMA_S1_NEXT_DESC_PTR() bfin_read32(MDMA_S1_NEXT_DESC_PTR)
  744. #define bfin_write_MDMA_S1_NEXT_DESC_PTR(val) bfin_write32(MDMA_S1_NEXT_DESC_PTR, val)
  745. #define bfin_read_MDMA_S1_START_ADDR() bfin_read32(MDMA_S1_START_ADDR)
  746. #define bfin_write_MDMA_S1_START_ADDR(val) bfin_write32(MDMA_S1_START_ADDR, val)
  747. #define bfin_read_MDMA_S1_X_COUNT() bfin_read16(MDMA_S1_X_COUNT)
  748. #define bfin_write_MDMA_S1_X_COUNT(val) bfin_write16(MDMA_S1_X_COUNT, val)
  749. #define bfin_read_MDMA_S1_Y_COUNT() bfin_read16(MDMA_S1_Y_COUNT)
  750. #define bfin_write_MDMA_S1_Y_COUNT(val) bfin_write16(MDMA_S1_Y_COUNT, val)
  751. #define bfin_read_MDMA_S1_X_MODIFY() bfin_read16(MDMA_S1_X_MODIFY)
  752. #define bfin_write_MDMA_S1_X_MODIFY(val) bfin_write16(MDMA_S1_X_MODIFY, val)
  753. #define bfin_read_MDMA_S1_Y_MODIFY() bfin_read16(MDMA_S1_Y_MODIFY)
  754. #define bfin_write_MDMA_S1_Y_MODIFY(val) bfin_write16(MDMA_S1_Y_MODIFY, val)
  755. #define bfin_read_MDMA_S1_CURR_DESC_PTR() bfin_read32(MDMA_S1_CURR_DESC_PTR)
  756. #define bfin_write_MDMA_S1_CURR_DESC_PTR(val) bfin_write32(MDMA_S1_CURR_DESC_PTR, val)
  757. #define bfin_read_MDMA_S1_CURR_ADDR() bfin_read32(MDMA_S1_CURR_ADDR)
  758. #define bfin_write_MDMA_S1_CURR_ADDR(val) bfin_write32(MDMA_S1_CURR_ADDR, val)
  759. #define bfin_read_MDMA_S1_CURR_X_COUNT() bfin_read16(MDMA_S1_CURR_X_COUNT)
  760. #define bfin_write_MDMA_S1_CURR_X_COUNT(val) bfin_write16(MDMA_S1_CURR_X_COUNT, val)
  761. #define bfin_read_MDMA_S1_CURR_Y_COUNT() bfin_read16(MDMA_S1_CURR_Y_COUNT)
  762. #define bfin_write_MDMA_S1_CURR_Y_COUNT(val) bfin_write16(MDMA_S1_CURR_Y_COUNT, val)
  763. #define bfin_read_MDMA_S1_IRQ_STATUS() bfin_read16(MDMA_S1_IRQ_STATUS)
  764. #define bfin_write_MDMA_S1_IRQ_STATUS(val) bfin_write16(MDMA_S1_IRQ_STATUS, val)
  765. #define bfin_read_MDMA_S1_PERIPHERAL_MAP() bfin_read16(MDMA_S1_PERIPHERAL_MAP)
  766. #define bfin_write_MDMA_S1_PERIPHERAL_MAP(val) bfin_write16(MDMA_S1_PERIPHERAL_MAP, val)
  767. /* Parallel Peripheral Interface (0xFFC01000 - 0xFFC010FF) */
  768. #define bfin_read_PPI_CONTROL() bfin_read16(PPI_CONTROL)
  769. #define bfin_write_PPI_CONTROL(val) bfin_write16(PPI_CONTROL, val)
  770. #define bfin_read_PPI_STATUS() bfin_read16(PPI_STATUS)
  771. #define bfin_write_PPI_STATUS(val) bfin_write16(PPI_STATUS, val)
  772. #define bfin_clear_PPI_STATUS() bfin_write_PPI_STATUS(0xFFFF)
  773. #define bfin_read_PPI_DELAY() bfin_read16(PPI_DELAY)
  774. #define bfin_write_PPI_DELAY(val) bfin_write16(PPI_DELAY, val)
  775. #define bfin_read_PPI_COUNT() bfin_read16(PPI_COUNT)
  776. #define bfin_write_PPI_COUNT(val) bfin_write16(PPI_COUNT, val)
  777. #define bfin_read_PPI_FRAME() bfin_read16(PPI_FRAME)
  778. #define bfin_write_PPI_FRAME(val) bfin_write16(PPI_FRAME, val)
  779. /* Two-Wire Interface (0xFFC01400 - 0xFFC014FF) */
  780. /* General Purpose I/O Port G (0xFFC01500 - 0xFFC015FF) */
  781. #define bfin_read_PORTGIO() bfin_read16(PORTGIO)
  782. #define bfin_write_PORTGIO(val) bfin_write16(PORTGIO, val)
  783. #define bfin_read_PORTGIO_CLEAR() bfin_read16(PORTGIO_CLEAR)
  784. #define bfin_write_PORTGIO_CLEAR(val) bfin_write16(PORTGIO_CLEAR, val)
  785. #define bfin_read_PORTGIO_SET() bfin_read16(PORTGIO_SET)
  786. #define bfin_write_PORTGIO_SET(val) bfin_write16(PORTGIO_SET, val)
  787. #define bfin_read_PORTGIO_TOGGLE() bfin_read16(PORTGIO_TOGGLE)
  788. #define bfin_write_PORTGIO_TOGGLE(val) bfin_write16(PORTGIO_TOGGLE, val)
  789. #define bfin_read_PORTGIO_MASKA() bfin_read16(PORTGIO_MASKA)
  790. #define bfin_write_PORTGIO_MASKA(val) bfin_write16(PORTGIO_MASKA, val)
  791. #define bfin_read_PORTGIO_MASKA_CLEAR() bfin_read16(PORTGIO_MASKA_CLEAR)
  792. #define bfin_write_PORTGIO_MASKA_CLEAR(val) bfin_write16(PORTGIO_MASKA_CLEAR, val)
  793. #define bfin_read_PORTGIO_MASKA_SET() bfin_read16(PORTGIO_MASKA_SET)
  794. #define bfin_write_PORTGIO_MASKA_SET(val) bfin_write16(PORTGIO_MASKA_SET, val)
  795. #define bfin_read_PORTGIO_MASKA_TOGGLE() bfin_read16(PORTGIO_MASKA_TOGGLE)
  796. #define bfin_write_PORTGIO_MASKA_TOGGLE(val) bfin_write16(PORTGIO_MASKA_TOGGLE, val)
  797. #define bfin_read_PORTGIO_MASKB() bfin_read16(PORTGIO_MASKB)
  798. #define bfin_write_PORTGIO_MASKB(val) bfin_write16(PORTGIO_MASKB, val)
  799. #define bfin_read_PORTGIO_MASKB_CLEAR() bfin_read16(PORTGIO_MASKB_CLEAR)
  800. #define bfin_write_PORTGIO_MASKB_CLEAR(val) bfin_write16(PORTGIO_MASKB_CLEAR, val)
  801. #define bfin_read_PORTGIO_MASKB_SET() bfin_read16(PORTGIO_MASKB_SET)
  802. #define bfin_write_PORTGIO_MASKB_SET(val) bfin_write16(PORTGIO_MASKB_SET, val)
  803. #define bfin_read_PORTGIO_MASKB_TOGGLE() bfin_read16(PORTGIO_MASKB_TOGGLE)
  804. #define bfin_write_PORTGIO_MASKB_TOGGLE(val) bfin_write16(PORTGIO_MASKB_TOGGLE, val)
  805. #define bfin_read_PORTGIO_DIR() bfin_read16(PORTGIO_DIR)
  806. #define bfin_write_PORTGIO_DIR(val) bfin_write16(PORTGIO_DIR, val)
  807. #define bfin_read_PORTGIO_POLAR() bfin_read16(PORTGIO_POLAR)
  808. #define bfin_write_PORTGIO_POLAR(val) bfin_write16(PORTGIO_POLAR, val)
  809. #define bfin_read_PORTGIO_EDGE() bfin_read16(PORTGIO_EDGE)
  810. #define bfin_write_PORTGIO_EDGE(val) bfin_write16(PORTGIO_EDGE, val)
  811. #define bfin_read_PORTGIO_BOTH() bfin_read16(PORTGIO_BOTH)
  812. #define bfin_write_PORTGIO_BOTH(val) bfin_write16(PORTGIO_BOTH, val)
  813. #define bfin_read_PORTGIO_INEN() bfin_read16(PORTGIO_INEN)
  814. #define bfin_write_PORTGIO_INEN(val) bfin_write16(PORTGIO_INEN, val)
  815. /* General Purpose I/O Port H (0xFFC01700 - 0xFFC017FF) */
  816. #define bfin_read_PORTHIO() bfin_read16(PORTHIO)
  817. #define bfin_write_PORTHIO(val) bfin_write16(PORTHIO, val)
  818. #define bfin_read_PORTHIO_CLEAR() bfin_read16(PORTHIO_CLEAR)
  819. #define bfin_write_PORTHIO_CLEAR(val) bfin_write16(PORTHIO_CLEAR, val)
  820. #define bfin_read_PORTHIO_SET() bfin_read16(PORTHIO_SET)
  821. #define bfin_write_PORTHIO_SET(val) bfin_write16(PORTHIO_SET, val)
  822. #define bfin_read_PORTHIO_TOGGLE() bfin_read16(PORTHIO_TOGGLE)
  823. #define bfin_write_PORTHIO_TOGGLE(val) bfin_write16(PORTHIO_TOGGLE, val)
  824. #define bfin_read_PORTHIO_MASKA() bfin_read16(PORTHIO_MASKA)
  825. #define bfin_write_PORTHIO_MASKA(val) bfin_write16(PORTHIO_MASKA, val)
  826. #define bfin_read_PORTHIO_MASKA_CLEAR() bfin_read16(PORTHIO_MASKA_CLEAR)
  827. #define bfin_write_PORTHIO_MASKA_CLEAR(val) bfin_write16(PORTHIO_MASKA_CLEAR, val)
  828. #define bfin_read_PORTHIO_MASKA_SET() bfin_read16(PORTHIO_MASKA_SET)
  829. #define bfin_write_PORTHIO_MASKA_SET(val) bfin_write16(PORTHIO_MASKA_SET, val)
  830. #define bfin_read_PORTHIO_MASKA_TOGGLE() bfin_read16(PORTHIO_MASKA_TOGGLE)
  831. #define bfin_write_PORTHIO_MASKA_TOGGLE(val) bfin_write16(PORTHIO_MASKA_TOGGLE, val)
  832. #define bfin_read_PORTHIO_MASKB() bfin_read16(PORTHIO_MASKB)
  833. #define bfin_write_PORTHIO_MASKB(val) bfin_write16(PORTHIO_MASKB, val)
  834. #define bfin_read_PORTHIO_MASKB_CLEAR() bfin_read16(PORTHIO_MASKB_CLEAR)
  835. #define bfin_write_PORTHIO_MASKB_CLEAR(val) bfin_write16(PORTHIO_MASKB_CLEAR, val)
  836. #define bfin_read_PORTHIO_MASKB_SET() bfin_read16(PORTHIO_MASKB_SET)
  837. #define bfin_write_PORTHIO_MASKB_SET(val) bfin_write16(PORTHIO_MASKB_SET, val)
  838. #define bfin_read_PORTHIO_MASKB_TOGGLE() bfin_read16(PORTHIO_MASKB_TOGGLE)
  839. #define bfin_write_PORTHIO_MASKB_TOGGLE(val) bfin_write16(PORTHIO_MASKB_TOGGLE, val)
  840. #define bfin_read_PORTHIO_DIR() bfin_read16(PORTHIO_DIR)
  841. #define bfin_write_PORTHIO_DIR(val) bfin_write16(PORTHIO_DIR, val)
  842. #define bfin_read_PORTHIO_POLAR() bfin_read16(PORTHIO_POLAR)
  843. #define bfin_write_PORTHIO_POLAR(val) bfin_write16(PORTHIO_POLAR, val)
  844. #define bfin_read_PORTHIO_EDGE() bfin_read16(PORTHIO_EDGE)
  845. #define bfin_write_PORTHIO_EDGE(val) bfin_write16(PORTHIO_EDGE, val)
  846. #define bfin_read_PORTHIO_BOTH() bfin_read16(PORTHIO_BOTH)
  847. #define bfin_write_PORTHIO_BOTH(val) bfin_write16(PORTHIO_BOTH, val)
  848. #define bfin_read_PORTHIO_INEN() bfin_read16(PORTHIO_INEN)
  849. #define bfin_write_PORTHIO_INEN(val) bfin_write16(PORTHIO_INEN, val)
  850. /* UART1 Controller (0xFFC02000 - 0xFFC020FF) */
  851. #define bfin_read_UART1_THR() bfin_read16(UART1_THR)
  852. #define bfin_write_UART1_THR(val) bfin_write16(UART1_THR, val)
  853. #define bfin_read_UART1_RBR() bfin_read16(UART1_RBR)
  854. #define bfin_write_UART1_RBR(val) bfin_write16(UART1_RBR, val)
  855. #define bfin_read_UART1_DLL() bfin_read16(UART1_DLL)
  856. #define bfin_write_UART1_DLL(val) bfin_write16(UART1_DLL, val)
  857. #define bfin_read_UART1_IER() bfin_read16(UART1_IER)
  858. #define bfin_write_UART1_IER(val) bfin_write16(UART1_IER, val)
  859. #define bfin_read_UART1_DLH() bfin_read16(UART1_DLH)
  860. #define bfin_write_UART1_DLH(val) bfin_write16(UART1_DLH, val)
  861. #define bfin_read_UART1_IIR() bfin_read16(UART1_IIR)
  862. #define bfin_write_UART1_IIR(val) bfin_write16(UART1_IIR, val)
  863. #define bfin_read_UART1_LCR() bfin_read16(UART1_LCR)
  864. #define bfin_write_UART1_LCR(val) bfin_write16(UART1_LCR, val)
  865. #define bfin_read_UART1_MCR() bfin_read16(UART1_MCR)
  866. #define bfin_write_UART1_MCR(val) bfin_write16(UART1_MCR, val)
  867. #define bfin_read_UART1_LSR() bfin_read16(UART1_LSR)
  868. #define bfin_write_UART1_LSR(val) bfin_write16(UART1_LSR, val)
  869. #define bfin_read_UART1_MSR() bfin_read16(UART1_MSR)
  870. #define bfin_write_UART1_MSR(val) bfin_write16(UART1_MSR, val)
  871. #define bfin_read_UART1_SCR() bfin_read16(UART1_SCR)
  872. #define bfin_write_UART1_SCR(val) bfin_write16(UART1_SCR, val)
  873. #define bfin_read_UART1_GCTL() bfin_read16(UART1_GCTL)
  874. #define bfin_write_UART1_GCTL(val) bfin_write16(UART1_GCTL, val)
  875. /* Omit CAN register sets from the cdefBF534.h (CAN is not in the ADSP-BF51x processor) */
  876. /* Pin Control Registers (0xFFC03200 - 0xFFC032FF) */
  877. #define bfin_read_PORTF_FER() bfin_read16(PORTF_FER)
  878. #define bfin_write_PORTF_FER(val) bfin_write16(PORTF_FER, val)
  879. #define bfin_read_PORTG_FER() bfin_read16(PORTG_FER)
  880. #define bfin_write_PORTG_FER(val) bfin_write16(PORTG_FER, val)
  881. #define bfin_read_PORTH_FER() bfin_read16(PORTH_FER)
  882. #define bfin_write_PORTH_FER(val) bfin_write16(PORTH_FER, val)
  883. #define bfin_read_PORT_MUX() bfin_read16(PORT_MUX)
  884. #define bfin_write_PORT_MUX(val) bfin_write16(PORT_MUX, val)
  885. /* Handshake MDMA Registers (0xFFC03300 - 0xFFC033FF) */
  886. #define bfin_read_HMDMA0_CONTROL() bfin_read16(HMDMA0_CONTROL)
  887. #define bfin_write_HMDMA0_CONTROL(val) bfin_write16(HMDMA0_CONTROL, val)
  888. #define bfin_read_HMDMA0_ECINIT() bfin_read16(HMDMA0_ECINIT)
  889. #define bfin_write_HMDMA0_ECINIT(val) bfin_write16(HMDMA0_ECINIT, val)
  890. #define bfin_read_HMDMA0_BCINIT() bfin_read16(HMDMA0_BCINIT)
  891. #define bfin_write_HMDMA0_BCINIT(val) bfin_write16(HMDMA0_BCINIT, val)
  892. #define bfin_read_HMDMA0_ECURGENT() bfin_read16(HMDMA0_ECURGENT)
  893. #define bfin_write_HMDMA0_ECURGENT(val) bfin_write16(HMDMA0_ECURGENT, val)
  894. #define bfin_read_HMDMA0_ECOVERFLOW() bfin_read16(HMDMA0_ECOVERFLOW)
  895. #define bfin_write_HMDMA0_ECOVERFLOW(val) bfin_write16(HMDMA0_ECOVERFLOW, val)
  896. #define bfin_read_HMDMA0_ECOUNT() bfin_read16(HMDMA0_ECOUNT)
  897. #define bfin_write_HMDMA0_ECOUNT(val) bfin_write16(HMDMA0_ECOUNT, val)
  898. #define bfin_read_HMDMA0_BCOUNT() bfin_read16(HMDMA0_BCOUNT)
  899. #define bfin_write_HMDMA0_BCOUNT(val) bfin_write16(HMDMA0_BCOUNT, val)
  900. #define bfin_read_HMDMA1_CONTROL() bfin_read16(HMDMA1_CONTROL)
  901. #define bfin_write_HMDMA1_CONTROL(val) bfin_write16(HMDMA1_CONTROL, val)
  902. #define bfin_read_HMDMA1_ECINIT() bfin_read16(HMDMA1_ECINIT)
  903. #define bfin_write_HMDMA1_ECINIT(val) bfin_write16(HMDMA1_ECINIT, val)
  904. #define bfin_read_HMDMA1_BCINIT() bfin_read16(HMDMA1_BCINIT)
  905. #define bfin_write_HMDMA1_BCINIT(val) bfin_write16(HMDMA1_BCINIT, val)
  906. #define bfin_read_HMDMA1_ECURGENT() bfin_read16(HMDMA1_ECURGENT)
  907. #define bfin_write_HMDMA1_ECURGENT(val) bfin_write16(HMDMA1_ECURGENT, val)
  908. #define bfin_read_HMDMA1_ECOVERFLOW() bfin_read16(HMDMA1_ECOVERFLOW)
  909. #define bfin_write_HMDMA1_ECOVERFLOW(val) bfin_write16(HMDMA1_ECOVERFLOW, val)
  910. #define bfin_read_HMDMA1_ECOUNT() bfin_read16(HMDMA1_ECOUNT)
  911. #define bfin_write_HMDMA1_ECOUNT(val) bfin_write16(HMDMA1_ECOUNT, val)
  912. #define bfin_read_HMDMA1_BCOUNT() bfin_read16(HMDMA1_BCOUNT)
  913. #define bfin_write_HMDMA1_BCOUNT(val) bfin_write16(HMDMA1_BCOUNT, val)
  914. /* ==== end from cdefBF534.h ==== */
  915. /* GPIO PIN mux (0xFFC03210 - OxFFC03288) */
  916. #define bfin_read_PORTF_MUX() bfin_read16(PORTF_MUX)
  917. #define bfin_write_PORTF_MUX(val) bfin_write16(PORTF_MUX, val)
  918. #define bfin_read_PORTG_MUX() bfin_read16(PORTG_MUX)
  919. #define bfin_write_PORTG_MUX(val) bfin_write16(PORTG_MUX, val)
  920. #define bfin_read_PORTH_MUX() bfin_read16(PORTH_MUX)
  921. #define bfin_write_PORTH_MUX(val) bfin_write16(PORTH_MUX, val)
  922. #define bfin_read_PORTF_DRIVE() bfin_read16(PORTF_DRIVE)
  923. #define bfin_write_PORTF_DRIVE(val) bfin_write16(PORTF_DRIVE, val)
  924. #define bfin_read_PORTG_DRIVE() bfin_read16(PORTG_DRIVE)
  925. #define bfin_write_PORTG_DRIVE(val) bfin_write16(PORTG_DRIVE, val)
  926. #define bfin_read_PORTH_DRIVE() bfin_read16(PORTH_DRIVE)
  927. #define bfin_write_PORTH_DRIVE(val) bfin_write16(PORTH_DRIVE, val)
  928. #define bfin_read_PORTF_SLEW() bfin_read16(PORTF_SLEW)
  929. #define bfin_write_PORTF_SLEW(val) bfin_write16(PORTF_SLEW, val)
  930. #define bfin_read_PORTG_SLEW() bfin_read16(PORTG_SLEW)
  931. #define bfin_write_PORTG_SLEW(val) bfin_write16(PORTG_SLEW, val)
  932. #define bfin_read_PORTH_SLEW() bfin_read16(PORTH_SLEW)
  933. #define bfin_write_PORTH_SLEW(val) bfin_write16(PORTH_SLEW, val)
  934. #define bfin_read_PORTF_HYSTERISIS() bfin_read16(PORTF_HYSTERISIS)
  935. #define bfin_write_PORTF_HYSTERISIS(val) bfin_write16(PORTF_HYSTERISIS, val)
  936. #define bfin_read_PORTG_HYSTERISIS() bfin_read16(PORTG_HYSTERISIS)
  937. #define bfin_write_PORTG_HYSTERISIS(val) bfin_write16(PORTG_HYSTERISIS, val)
  938. #define bfin_read_PORTH_HYSTERISIS() bfin_read16(PORTH_HYSTERISIS)
  939. #define bfin_write_PORTH_HYSTERISIS(val) bfin_write16(PORTH_HYSTERISIS, val)
  940. #define bfin_read_MISCPORT_DRIVE() bfin_read16(MISCPORT_DRIVE)
  941. #define bfin_write_MISCPORT_DRIVE(val) bfin_write16(MISCPORT_DRIVE, val)
  942. #define bfin_read_MISCPORT_SLEW() bfin_read16(MISCPORT_SLEW)
  943. #define bfin_write_MISCPORT_SLEW(val) bfin_write16(MISCPORT_SLEW, val)
  944. #define bfin_read_MISCPORT_HYSTERISIS() bfin_read16(MISCPORT_HYSTERISIS)
  945. #define bfin_write_MISCPORT_HYSTERISIS(val) bfin_write16(MISCPORT_HYSTERISIS, val)
  946. /* HOST Port Registers */
  947. #define bfin_read_HOST_CONTROL() bfin_read16(HOST_CONTROL)
  948. #define bfin_write_HOST_CONTROL(val) bfin_write16(HOST_CONTROL, val)
  949. #define bfin_read_HOST_STATUS() bfin_read16(HOST_STATUS)
  950. #define bfin_write_HOST_STATUS(val) bfin_write16(HOST_STATUS, val)
  951. #define bfin_read_HOST_TIMEOUT() bfin_read16(HOST_TIMEOUT)
  952. #define bfin_write_HOST_TIMEOUT(val) bfin_write16(HOST_TIMEOUT, val)
  953. /* Counter Registers */
  954. #define bfin_read_CNT_CONFIG() bfin_read16(CNT_CONFIG)
  955. #define bfin_write_CNT_CONFIG(val) bfin_write16(CNT_CONFIG, val)
  956. #define bfin_read_CNT_IMASK() bfin_read16(CNT_IMASK)
  957. #define bfin_write_CNT_IMASK(val) bfin_write16(CNT_IMASK, val)
  958. #define bfin_read_CNT_STATUS() bfin_read16(CNT_STATUS)
  959. #define bfin_write_CNT_STATUS(val) bfin_write16(CNT_STATUS, val)
  960. #define bfin_read_CNT_COMMAND() bfin_read16(CNT_COMMAND)
  961. #define bfin_write_CNT_COMMAND(val) bfin_write16(CNT_COMMAND, val)
  962. #define bfin_read_CNT_DEBOUNCE() bfin_read16(CNT_DEBOUNCE)
  963. #define bfin_write_CNT_DEBOUNCE(val) bfin_write16(CNT_DEBOUNCE, val)
  964. #define bfin_read_CNT_COUNTER() bfin_read32(CNT_COUNTER)
  965. #define bfin_write_CNT_COUNTER(val) bfin_write32(CNT_COUNTER, val)
  966. #define bfin_read_CNT_MAX() bfin_read32(CNT_MAX)
  967. #define bfin_write_CNT_MAX(val) bfin_write32(CNT_MAX, val)
  968. #define bfin_read_CNT_MIN() bfin_read32(CNT_MIN)
  969. #define bfin_write_CNT_MIN(val) bfin_write32(CNT_MIN, val)
  970. /* Security Registers */
  971. #define bfin_read_SECURE_SYSSWT() bfin_read32(SECURE_SYSSWT)
  972. #define bfin_write_SECURE_SYSSWT(val) bfin_write32(SECURE_SYSSWT, val)
  973. #define bfin_read_SECURE_CONTROL() bfin_read16(SECURE_CONTROL)
  974. #define bfin_write_SECURE_CONTROL(val) bfin_write16(SECURE_CONTROL, val)
  975. #define bfin_read_SECURE_STATUS() bfin_read16(SECURE_STATUS)
  976. #define bfin_write_SECURE_STATUS(val) bfin_write16(SECURE_STATUS, val)
  977. /* These need to be last due to the cdef/linux inter-dependencies */
  978. #include <asm/irq.h>
  979. /* Writing to PLL_CTL initiates a PLL relock sequence. */
  980. static __inline__ void bfin_write_PLL_CTL(unsigned int val)
  981. {
  982. unsigned long flags, iwr0, iwr1;
  983. if (val == bfin_read_PLL_CTL())
  984. return;
  985. local_irq_save_hw(flags);
  986. /* Enable the PLL Wakeup bit in SIC IWR */
  987. iwr0 = bfin_read32(SIC_IWR0);
  988. iwr1 = bfin_read32(SIC_IWR1);
  989. /* Only allow PPL Wakeup) */
  990. bfin_write32(SIC_IWR0, IWR_ENABLE(0));
  991. bfin_write32(SIC_IWR1, 0);
  992. bfin_write16(PLL_CTL, val);
  993. SSYNC();
  994. asm("IDLE;");
  995. bfin_write32(SIC_IWR0, iwr0);
  996. bfin_write32(SIC_IWR1, iwr1);
  997. local_irq_restore_hw(flags);
  998. }
  999. /* Writing to VR_CTL initiates a PLL relock sequence. */
  1000. static __inline__ void bfin_write_VR_CTL(unsigned int val)
  1001. {
  1002. unsigned long flags, iwr0, iwr1;
  1003. if (val == bfin_read_VR_CTL())
  1004. return;
  1005. local_irq_save_hw(flags);
  1006. /* Enable the PLL Wakeup bit in SIC IWR */
  1007. iwr0 = bfin_read32(SIC_IWR0);
  1008. iwr1 = bfin_read32(SIC_IWR1);
  1009. /* Only allow PPL Wakeup) */
  1010. bfin_write32(SIC_IWR0, IWR_ENABLE(0));
  1011. bfin_write32(SIC_IWR1, 0);
  1012. bfin_write16(VR_CTL, val);
  1013. SSYNC();
  1014. asm("IDLE;");
  1015. bfin_write32(SIC_IWR0, iwr0);
  1016. bfin_write32(SIC_IWR1, iwr1);
  1017. local_irq_restore_hw(flags);
  1018. }
  1019. #endif /* _CDEF_BF52X_H */