misc_regs.h 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. /*
  2. * arch/arm/mach-spear6xx/include/mach/misc_regs.h
  3. *
  4. * Miscellaneous registers definitions for SPEAr6xx machine family
  5. *
  6. * Copyright (C) 2009 ST Microelectronics
  7. * Viresh Kumar<viresh.kumar@st.com>
  8. *
  9. * This file is licensed under the terms of the GNU General Public
  10. * License version 2. This program is licensed "as is" without any
  11. * warranty of any kind, whether express or implied.
  12. */
  13. #ifndef __MACH_MISC_REGS_H
  14. #define __MACH_MISC_REGS_H
  15. #include <mach/hardware.h>
  16. #define MISC_BASE IOMEM(VA_SPEAR6XX_ICM3_MISC_REG_BASE)
  17. #define SOC_CFG_CTR (MISC_BASE + 0x000)
  18. #define DIAG_CFG_CTR (MISC_BASE + 0x004)
  19. #define PLL1_CTR (MISC_BASE + 0x008)
  20. #define PLL1_FRQ (MISC_BASE + 0x00C)
  21. #define PLL1_MOD (MISC_BASE + 0x010)
  22. #define PLL2_CTR (MISC_BASE + 0x014)
  23. /* PLL_CTR register masks */
  24. #define PLL_ENABLE 2
  25. #define PLL_MODE_SHIFT 4
  26. #define PLL_MODE_MASK 0x3
  27. #define PLL_MODE_NORMAL 0
  28. #define PLL_MODE_FRACTION 1
  29. #define PLL_MODE_DITH_DSB 2
  30. #define PLL_MODE_DITH_SSB 3
  31. #define PLL2_FRQ (MISC_BASE + 0x018)
  32. /* PLL FRQ register masks */
  33. #define PLL_DIV_N_SHIFT 0
  34. #define PLL_DIV_N_MASK 0xFF
  35. #define PLL_DIV_P_SHIFT 8
  36. #define PLL_DIV_P_MASK 0x7
  37. #define PLL_NORM_FDBK_M_SHIFT 24
  38. #define PLL_NORM_FDBK_M_MASK 0xFF
  39. #define PLL_DITH_FDBK_M_SHIFT 16
  40. #define PLL_DITH_FDBK_M_MASK 0xFFFF
  41. #define PLL2_MOD (MISC_BASE + 0x01C)
  42. #define PLL_CLK_CFG (MISC_BASE + 0x020)
  43. #define CORE_CLK_CFG (MISC_BASE + 0x024)
  44. /* CORE CLK CFG register masks */
  45. #define PLL_HCLK_RATIO_SHIFT 10
  46. #define PLL_HCLK_RATIO_MASK 0x3
  47. #define HCLK_PCLK_RATIO_SHIFT 8
  48. #define HCLK_PCLK_RATIO_MASK 0x3
  49. #define PERIP_CLK_CFG (MISC_BASE + 0x028)
  50. /* PERIP_CLK_CFG register masks */
  51. #define CLCD_CLK_SHIFT 2
  52. #define CLCD_CLK_MASK 0x3
  53. #define UART_CLK_SHIFT 4
  54. #define UART_CLK_MASK 0x1
  55. #define FIRDA_CLK_SHIFT 5
  56. #define FIRDA_CLK_MASK 0x3
  57. #define GPT0_CLK_SHIFT 8
  58. #define GPT1_CLK_SHIFT 10
  59. #define GPT2_CLK_SHIFT 11
  60. #define GPT3_CLK_SHIFT 12
  61. #define GPT_CLK_MASK 0x1
  62. #define AUX_CLK_PLL3_VAL 0
  63. #define AUX_CLK_PLL1_VAL 1
  64. #define PERIP1_CLK_ENB (MISC_BASE + 0x02C)
  65. /* PERIP1_CLK_ENB register masks */
  66. #define UART0_CLK_ENB 3
  67. #define UART1_CLK_ENB 4
  68. #define SSP0_CLK_ENB 5
  69. #define SSP1_CLK_ENB 6
  70. #define I2C_CLK_ENB 7
  71. #define JPEG_CLK_ENB 8
  72. #define FSMC_CLK_ENB 9
  73. #define FIRDA_CLK_ENB 10
  74. #define GPT2_CLK_ENB 11
  75. #define GPT3_CLK_ENB 12
  76. #define GPIO2_CLK_ENB 13
  77. #define SSP2_CLK_ENB 14
  78. #define ADC_CLK_ENB 15
  79. #define GPT1_CLK_ENB 11
  80. #define RTC_CLK_ENB 17
  81. #define GPIO1_CLK_ENB 18
  82. #define DMA_CLK_ENB 19
  83. #define SMI_CLK_ENB 21
  84. #define CLCD_CLK_ENB 22
  85. #define GMAC_CLK_ENB 23
  86. #define USBD_CLK_ENB 24
  87. #define USBH0_CLK_ENB 25
  88. #define USBH1_CLK_ENB 26
  89. #define SOC_CORE_ID (MISC_BASE + 0x030)
  90. #define RAS_CLK_ENB (MISC_BASE + 0x034)
  91. #define PERIP1_SOF_RST (MISC_BASE + 0x038)
  92. /* PERIP1_SOF_RST register masks */
  93. #define JPEG_SOF_RST 8
  94. #define SOC_USER_ID (MISC_BASE + 0x03C)
  95. #define RAS_SOF_RST (MISC_BASE + 0x040)
  96. #define PRSC1_CLK_CFG (MISC_BASE + 0x044)
  97. #define PRSC2_CLK_CFG (MISC_BASE + 0x048)
  98. #define PRSC3_CLK_CFG (MISC_BASE + 0x04C)
  99. /* gpt synthesizer register masks */
  100. #define GPT_MSCALE_SHIFT 0
  101. #define GPT_MSCALE_MASK 0xFFF
  102. #define GPT_NSCALE_SHIFT 12
  103. #define GPT_NSCALE_MASK 0xF
  104. #define AMEM_CLK_CFG (MISC_BASE + 0x050)
  105. #define EXPI_CLK_CFG (MISC_BASE + 0x054)
  106. #define CLCD_CLK_SYNT (MISC_BASE + 0x05C)
  107. #define FIRDA_CLK_SYNT (MISC_BASE + 0x060)
  108. #define UART_CLK_SYNT (MISC_BASE + 0x064)
  109. #define GMAC_CLK_SYNT (MISC_BASE + 0x068)
  110. #define RAS1_CLK_SYNT (MISC_BASE + 0x06C)
  111. #define RAS2_CLK_SYNT (MISC_BASE + 0x070)
  112. #define RAS3_CLK_SYNT (MISC_BASE + 0x074)
  113. #define RAS4_CLK_SYNT (MISC_BASE + 0x078)
  114. /* aux clk synthesiser register masks for irda to ras4 */
  115. #define AUX_SYNT_ENB 31
  116. #define AUX_EQ_SEL_SHIFT 30
  117. #define AUX_EQ_SEL_MASK 1
  118. #define AUX_EQ1_SEL 0
  119. #define AUX_EQ2_SEL 1
  120. #define AUX_XSCALE_SHIFT 16
  121. #define AUX_XSCALE_MASK 0xFFF
  122. #define AUX_YSCALE_SHIFT 0
  123. #define AUX_YSCALE_MASK 0xFFF
  124. #define ICM1_ARB_CFG (MISC_BASE + 0x07C)
  125. #define ICM2_ARB_CFG (MISC_BASE + 0x080)
  126. #define ICM3_ARB_CFG (MISC_BASE + 0x084)
  127. #define ICM4_ARB_CFG (MISC_BASE + 0x088)
  128. #define ICM5_ARB_CFG (MISC_BASE + 0x08C)
  129. #define ICM6_ARB_CFG (MISC_BASE + 0x090)
  130. #define ICM7_ARB_CFG (MISC_BASE + 0x094)
  131. #define ICM8_ARB_CFG (MISC_BASE + 0x098)
  132. #define ICM9_ARB_CFG (MISC_BASE + 0x09C)
  133. #define DMA_CHN_CFG (MISC_BASE + 0x0A0)
  134. #define USB2_PHY_CFG (MISC_BASE + 0x0A4)
  135. #define GMAC_CFG_CTR (MISC_BASE + 0x0A8)
  136. #define EXPI_CFG_CTR (MISC_BASE + 0x0AC)
  137. #define PRC1_LOCK_CTR (MISC_BASE + 0x0C0)
  138. #define PRC2_LOCK_CTR (MISC_BASE + 0x0C4)
  139. #define PRC3_LOCK_CTR (MISC_BASE + 0x0C8)
  140. #define PRC4_LOCK_CTR (MISC_BASE + 0x0CC)
  141. #define PRC1_IRQ_CTR (MISC_BASE + 0x0D0)
  142. #define PRC2_IRQ_CTR (MISC_BASE + 0x0D4)
  143. #define PRC3_IRQ_CTR (MISC_BASE + 0x0D8)
  144. #define PRC4_IRQ_CTR (MISC_BASE + 0x0DC)
  145. #define PWRDOWN_CFG_CTR (MISC_BASE + 0x0E0)
  146. #define COMPSSTL_1V8_CFG (MISC_BASE + 0x0E4)
  147. #define COMPSSTL_2V5_CFG (MISC_BASE + 0x0E8)
  148. #define COMPCOR_3V3_CFG (MISC_BASE + 0x0EC)
  149. #define SSTLPAD_CFG_CTR (MISC_BASE + 0x0F0)
  150. #define BIST1_CFG_CTR (MISC_BASE + 0x0F4)
  151. #define BIST2_CFG_CTR (MISC_BASE + 0x0F8)
  152. #define BIST3_CFG_CTR (MISC_BASE + 0x0FC)
  153. #define BIST4_CFG_CTR (MISC_BASE + 0x100)
  154. #define BIST5_CFG_CTR (MISC_BASE + 0x104)
  155. #define BIST1_STS_RES (MISC_BASE + 0x108)
  156. #define BIST2_STS_RES (MISC_BASE + 0x10C)
  157. #define BIST3_STS_RES (MISC_BASE + 0x110)
  158. #define BIST4_STS_RES (MISC_BASE + 0x114)
  159. #define BIST5_STS_RES (MISC_BASE + 0x118)
  160. #define SYSERR_CFG_CTR (MISC_BASE + 0x11C)
  161. #endif /* __MACH_MISC_REGS_H */