dma.h 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. #ifndef __ASM_SH_CPU_SH4_DMA_SH7780_H
  2. #define __ASM_SH_CPU_SH4_DMA_SH7780_H
  3. #include <linux/sh_intc.h>
  4. #if defined(CONFIG_CPU_SUBTYPE_SH7343) || \
  5. defined(CONFIG_CPU_SUBTYPE_SH7730)
  6. #define DMTE0_IRQ evt2irq(0x800)
  7. #define DMTE4_IRQ evt2irq(0xb80)
  8. #define DMAE0_IRQ evt2irq(0xbc0) /* DMA Error IRQ*/
  9. #define SH_DMAC_BASE0 0xFE008020
  10. #define SH_DMARS_BASE0 0xFE009000
  11. #elif defined(CONFIG_CPU_SUBTYPE_SH7722)
  12. #define DMTE0_IRQ evt2irq(0x800)
  13. #define DMTE4_IRQ evt2irq(0xb80)
  14. #define DMAE0_IRQ evt2irq(0xbc0) /* DMA Error IRQ*/
  15. #define SH_DMAC_BASE0 0xFE008020
  16. #define SH_DMARS_BASE0 0xFE009000
  17. #elif defined(CONFIG_CPU_SUBTYPE_SH7763) || \
  18. defined(CONFIG_CPU_SUBTYPE_SH7764)
  19. #define DMTE0_IRQ evt2irq(0x640)
  20. #define DMTE4_IRQ evt2irq(0x780)
  21. #define DMAE0_IRQ evt2irq(0x6c0)
  22. #define SH_DMAC_BASE0 0xFF608020
  23. #define SH_DMARS_BASE0 0xFF609000
  24. #elif defined(CONFIG_CPU_SUBTYPE_SH7723)
  25. #define DMTE0_IRQ evt2irq(0x800) /* DMAC0A*/
  26. #define DMTE4_IRQ evt2irq(0xb80) /* DMAC0B */
  27. #define DMTE6_IRQ evt2irq(0x700)
  28. #define DMTE8_IRQ evt2irq(0x740) /* DMAC1A */
  29. #define DMTE9_IRQ evt2irq(0x760)
  30. #define DMTE10_IRQ evt2irq(0xb00) /* DMAC1B */
  31. #define DMTE11_IRQ evt2irq(0xb20)
  32. #define DMAE0_IRQ evt2irq(0xbc0) /* DMA Error IRQ*/
  33. #define DMAE1_IRQ evt2irq(0xb40) /* DMA Error IRQ*/
  34. #define SH_DMAC_BASE0 0xFE008020
  35. #define SH_DMAC_BASE1 0xFDC08020
  36. #define SH_DMARS_BASE0 0xFDC09000
  37. #elif defined(CONFIG_CPU_SUBTYPE_SH7724)
  38. #define DMTE0_IRQ evt2irq(0x800) /* DMAC0A*/
  39. #define DMTE4_IRQ evt2irq(0xb80) /* DMAC0B */
  40. #define DMTE6_IRQ evt2irq(0x700)
  41. #define DMTE8_IRQ evt2irq(0x740) /* DMAC1A */
  42. #define DMTE9_IRQ evt2irq(0x760)
  43. #define DMTE10_IRQ evt2irq(0xb00) /* DMAC1B */
  44. #define DMTE11_IRQ evt2irq(0xb20)
  45. #define DMAE0_IRQ evt2irq(0xbc0) /* DMA Error IRQ*/
  46. #define DMAE1_IRQ evt2irq(0xb40) /* DMA Error IRQ*/
  47. #define SH_DMAC_BASE0 0xFE008020
  48. #define SH_DMAC_BASE1 0xFDC08020
  49. #define SH_DMARS_BASE0 0xFE009000
  50. #define SH_DMARS_BASE1 0xFDC09000
  51. #elif defined(CONFIG_CPU_SUBTYPE_SH7780)
  52. #define DMTE0_IRQ evt2irq(0x640)
  53. #define DMTE4_IRQ evt2irq(0x780)
  54. #define DMTE6_IRQ evt2irq(0x7c0)
  55. #define DMTE8_IRQ evt2irq(0xd80)
  56. #define DMTE9_IRQ evt2irq(0xda0)
  57. #define DMTE10_IRQ evt2irq(0xdc0)
  58. #define DMTE11_IRQ evt2irq(0xde0)
  59. #define DMAE0_IRQ evt2irq(0x6c0) /* DMA Error IRQ */
  60. #define SH_DMAC_BASE0 0xFC808020
  61. #define SH_DMAC_BASE1 0xFC818020
  62. #define SH_DMARS_BASE0 0xFC809000
  63. #else /* SH7785 */
  64. #define DMTE0_IRQ evt2irq(0x620)
  65. #define DMTE4_IRQ evt2irq(0x6a0)
  66. #define DMTE6_IRQ evt2irq(0x880)
  67. #define DMTE8_IRQ evt2irq(0x8c0)
  68. #define DMTE9_IRQ evt2irq(0x8e0)
  69. #define DMTE10_IRQ evt2irq(0x900)
  70. #define DMTE11_IRQ evt2irq(0x920)
  71. #define DMAE0_IRQ evt2irq(0x6e0) /* DMA Error IRQ0 */
  72. #define DMAE1_IRQ evt2irq(0x940) /* DMA Error IRQ1 */
  73. #define SH_DMAC_BASE0 0xFC808020
  74. #define SH_DMAC_BASE1 0xFCC08020
  75. #define SH_DMARS_BASE0 0xFC809000
  76. #endif
  77. #define REQ_HE 0x000000C0
  78. #define REQ_H 0x00000080
  79. #define REQ_LE 0x00000040
  80. #define TM_BURST 0x00000020
  81. #endif /* __ASM_SH_CPU_SH4_DMA_SH7780_H */