cdefBF52x_base.h 69 KB

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