exynos3250.h 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356
  1. /*
  2. * Copyright (c) 2014 Samsung Electronics Co., Ltd.
  3. * Author: Tomasz Figa <[email protected]>
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License version 2 as
  7. * published by the Free Software Foundation.
  8. *
  9. * Device Tree binding constants for Samsung Exynos3250 clock controllers.
  10. */
  11. #ifndef _DT_BINDINGS_CLOCK_SAMSUNG_EXYNOS3250_CLOCK_H
  12. #define _DT_BINDINGS_CLOCK_SAMSUNG_EXYNOS3250_CLOCK_H
  13. /*
  14. * Let each exported clock get a unique index, which is used on DT-enabled
  15. * platforms to lookup the clock from a clock specifier. These indices are
  16. * therefore considered an ABI and so must not be changed. This implies
  17. * that new clocks should be added either in free spaces between clock groups
  18. * or at the end.
  19. */
  20. /*
  21. * Main CMU
  22. */
  23. #define CLK_OSCSEL 1
  24. #define CLK_FIN_PLL 2
  25. #define CLK_FOUT_APLL 3
  26. #define CLK_FOUT_VPLL 4
  27. #define CLK_FOUT_UPLL 5
  28. #define CLK_FOUT_MPLL 6
  29. #define CLK_ARM_CLK 7
  30. /* Muxes */
  31. #define CLK_MOUT_MPLL_USER_L 16
  32. #define CLK_MOUT_GDL 17
  33. #define CLK_MOUT_MPLL_USER_R 18
  34. #define CLK_MOUT_GDR 19
  35. #define CLK_MOUT_EBI 20
  36. #define CLK_MOUT_ACLK_200 21
  37. #define CLK_MOUT_ACLK_160 22
  38. #define CLK_MOUT_ACLK_100 23
  39. #define CLK_MOUT_ACLK_266_1 24
  40. #define CLK_MOUT_ACLK_266_0 25
  41. #define CLK_MOUT_ACLK_266 26
  42. #define CLK_MOUT_VPLL 27
  43. #define CLK_MOUT_EPLL_USER 28
  44. #define CLK_MOUT_EBI_1 29
  45. #define CLK_MOUT_UPLL 30
  46. #define CLK_MOUT_ACLK_400_MCUISP_SUB 31
  47. #define CLK_MOUT_MPLL 32
  48. #define CLK_MOUT_ACLK_400_MCUISP 33
  49. #define CLK_MOUT_VPLLSRC 34
  50. #define CLK_MOUT_CAM1 35
  51. #define CLK_MOUT_CAM_BLK 36
  52. #define CLK_MOUT_MFC 37
  53. #define CLK_MOUT_MFC_1 38
  54. #define CLK_MOUT_MFC_0 39
  55. #define CLK_MOUT_G3D 40
  56. #define CLK_MOUT_G3D_1 41
  57. #define CLK_MOUT_G3D_0 42
  58. #define CLK_MOUT_MIPI0 43
  59. #define CLK_MOUT_FIMD0 44
  60. #define CLK_MOUT_UART_ISP 45
  61. #define CLK_MOUT_SPI1_ISP 46
  62. #define CLK_MOUT_SPI0_ISP 47
  63. #define CLK_MOUT_TSADC 48
  64. #define CLK_MOUT_MMC1 49
  65. #define CLK_MOUT_MMC0 50
  66. #define CLK_MOUT_UART1 51
  67. #define CLK_MOUT_UART0 52
  68. #define CLK_MOUT_SPI1 53
  69. #define CLK_MOUT_SPI0 54
  70. #define CLK_MOUT_AUDIO 55
  71. #define CLK_MOUT_MPLL_USER_C 56
  72. #define CLK_MOUT_HPM 57
  73. #define CLK_MOUT_CORE 58
  74. #define CLK_MOUT_APLL 59
  75. #define CLK_MOUT_ACLK_266_SUB 60
  76. #define CLK_MOUT_UART2 61
  77. #define CLK_MOUT_MMC2 62
  78. /* Dividers */
  79. #define CLK_DIV_GPL 64
  80. #define CLK_DIV_GDL 65
  81. #define CLK_DIV_GPR 66
  82. #define CLK_DIV_GDR 67
  83. #define CLK_DIV_MPLL_PRE 68
  84. #define CLK_DIV_ACLK_400_MCUISP 69
  85. #define CLK_DIV_EBI 70
  86. #define CLK_DIV_ACLK_200 71
  87. #define CLK_DIV_ACLK_160 72
  88. #define CLK_DIV_ACLK_100 73
  89. #define CLK_DIV_ACLK_266 74
  90. #define CLK_DIV_CAM1 75
  91. #define CLK_DIV_CAM_BLK 76
  92. #define CLK_DIV_MFC 77
  93. #define CLK_DIV_G3D 78
  94. #define CLK_DIV_MIPI0_PRE 79
  95. #define CLK_DIV_MIPI0 80
  96. #define CLK_DIV_FIMD0 81
  97. #define CLK_DIV_UART_ISP 82
  98. #define CLK_DIV_SPI1_ISP_PRE 83
  99. #define CLK_DIV_SPI1_ISP 84
  100. #define CLK_DIV_SPI0_ISP_PRE 85
  101. #define CLK_DIV_SPI0_ISP 86
  102. #define CLK_DIV_TSADC_PRE 87
  103. #define CLK_DIV_TSADC 88
  104. #define CLK_DIV_MMC1_PRE 89
  105. #define CLK_DIV_MMC1 90
  106. #define CLK_DIV_MMC0_PRE 91
  107. #define CLK_DIV_MMC0 92
  108. #define CLK_DIV_UART1 93
  109. #define CLK_DIV_UART0 94
  110. #define CLK_DIV_SPI1_PRE 95
  111. #define CLK_DIV_SPI1 96
  112. #define CLK_DIV_SPI0_PRE 97
  113. #define CLK_DIV_SPI0 98
  114. #define CLK_DIV_PCM 99
  115. #define CLK_DIV_AUDIO 100
  116. #define CLK_DIV_I2S 101
  117. #define CLK_DIV_CORE2 102
  118. #define CLK_DIV_APLL 103
  119. #define CLK_DIV_PCLK_DBG 104
  120. #define CLK_DIV_ATB 105
  121. #define CLK_DIV_COREM 106
  122. #define CLK_DIV_CORE 107
  123. #define CLK_DIV_HPM 108
  124. #define CLK_DIV_COPY 109
  125. #define CLK_DIV_UART2 110
  126. #define CLK_DIV_MMC2_PRE 111
  127. #define CLK_DIV_MMC2 112
  128. /* Gates */
  129. #define CLK_ASYNC_G3D 128
  130. #define CLK_ASYNC_MFCL 129
  131. #define CLK_PPMULEFT 130
  132. #define CLK_GPIO_LEFT 131
  133. #define CLK_ASYNC_ISPMX 132
  134. #define CLK_ASYNC_FSYSD 133
  135. #define CLK_ASYNC_LCD0X 134
  136. #define CLK_ASYNC_CAMX 135
  137. #define CLK_PPMURIGHT 136
  138. #define CLK_GPIO_RIGHT 137
  139. #define CLK_MONOCNT 138
  140. #define CLK_TZPC6 139
  141. #define CLK_PROVISIONKEY1 140
  142. #define CLK_PROVISIONKEY0 141
  143. #define CLK_CMU_ISPPART 142
  144. #define CLK_TMU_APBIF 143
  145. #define CLK_KEYIF 144
  146. #define CLK_RTC 145
  147. #define CLK_WDT 146
  148. #define CLK_MCT 147
  149. #define CLK_SECKEY 148
  150. #define CLK_TZPC5 149
  151. #define CLK_TZPC4 150
  152. #define CLK_TZPC3 151
  153. #define CLK_TZPC2 152
  154. #define CLK_TZPC1 153
  155. #define CLK_TZPC0 154
  156. #define CLK_CMU_COREPART 155
  157. #define CLK_CMU_TOPPART 156
  158. #define CLK_PMU_APBIF 157
  159. #define CLK_SYSREG 158
  160. #define CLK_CHIP_ID 159
  161. #define CLK_QEJPEG 160
  162. #define CLK_PIXELASYNCM1 161
  163. #define CLK_PIXELASYNCM0 162
  164. #define CLK_PPMUCAMIF 163
  165. #define CLK_QEM2MSCALER 164
  166. #define CLK_QEGSCALER1 165
  167. #define CLK_QEGSCALER0 166
  168. #define CLK_SMMUJPEG 167
  169. #define CLK_SMMUM2M2SCALER 168
  170. #define CLK_SMMUGSCALER1 169
  171. #define CLK_SMMUGSCALER0 170
  172. #define CLK_JPEG 171
  173. #define CLK_M2MSCALER 172
  174. #define CLK_GSCALER1 173
  175. #define CLK_GSCALER0 174
  176. #define CLK_QEMFC 175
  177. #define CLK_PPMUMFC_L 176
  178. #define CLK_SMMUMFC_L 177
  179. #define CLK_MFC 178
  180. #define CLK_SMMUG3D 179
  181. #define CLK_QEG3D 180
  182. #define CLK_PPMUG3D 181
  183. #define CLK_G3D 182
  184. #define CLK_QE_CH1_LCD 183
  185. #define CLK_QE_CH0_LCD 184
  186. #define CLK_PPMULCD0 185
  187. #define CLK_SMMUFIMD0 186
  188. #define CLK_DSIM0 187
  189. #define CLK_FIMD0 188
  190. #define CLK_CAM1 189
  191. #define CLK_UART_ISP_TOP 190
  192. #define CLK_SPI1_ISP_TOP 191
  193. #define CLK_SPI0_ISP_TOP 192
  194. #define CLK_TSADC 193
  195. #define CLK_PPMUFILE 194
  196. #define CLK_USBOTG 195
  197. #define CLK_USBHOST 196
  198. #define CLK_SROMC 197
  199. #define CLK_SDMMC1 198
  200. #define CLK_SDMMC0 199
  201. #define CLK_PDMA1 200
  202. #define CLK_PDMA0 201
  203. #define CLK_PWM 202
  204. #define CLK_PCM 203
  205. #define CLK_I2S 204
  206. #define CLK_SPI1 205
  207. #define CLK_SPI0 206
  208. #define CLK_I2C7 207
  209. #define CLK_I2C6 208
  210. #define CLK_I2C5 209
  211. #define CLK_I2C4 210
  212. #define CLK_I2C3 211
  213. #define CLK_I2C2 212
  214. #define CLK_I2C1 213
  215. #define CLK_I2C0 214
  216. #define CLK_UART1 215
  217. #define CLK_UART0 216
  218. #define CLK_BLOCK_LCD 217
  219. #define CLK_BLOCK_G3D 218
  220. #define CLK_BLOCK_MFC 219
  221. #define CLK_BLOCK_CAM 220
  222. #define CLK_SMIES 221
  223. #define CLK_UART2 222
  224. #define CLK_SDMMC2 223
  225. /* Special clocks */
  226. #define CLK_SCLK_JPEG 224
  227. #define CLK_SCLK_M2MSCALER 225
  228. #define CLK_SCLK_GSCALER1 226
  229. #define CLK_SCLK_GSCALER0 227
  230. #define CLK_SCLK_MFC 228
  231. #define CLK_SCLK_G3D 229
  232. #define CLK_SCLK_MIPIDPHY2L 230
  233. #define CLK_SCLK_MIPI0 231
  234. #define CLK_SCLK_FIMD0 232
  235. #define CLK_SCLK_CAM1 233
  236. #define CLK_SCLK_UART_ISP 234
  237. #define CLK_SCLK_SPI1_ISP 235
  238. #define CLK_SCLK_SPI0_ISP 236
  239. #define CLK_SCLK_UPLL 237
  240. #define CLK_SCLK_TSADC 238
  241. #define CLK_SCLK_EBI 239
  242. #define CLK_SCLK_MMC1 240
  243. #define CLK_SCLK_MMC0 241
  244. #define CLK_SCLK_I2S 242
  245. #define CLK_SCLK_PCM 243
  246. #define CLK_SCLK_SPI1 244
  247. #define CLK_SCLK_SPI0 245
  248. #define CLK_SCLK_UART1 246
  249. #define CLK_SCLK_UART0 247
  250. #define CLK_SCLK_UART2 248
  251. #define CLK_SCLK_MMC2 249
  252. /*
  253. * Total number of clocks of main CMU.
  254. * NOTE: Must be equal to last clock ID increased by one.
  255. */
  256. #define CLK_NR_CLKS 250
  257. /*
  258. * CMU DMC
  259. */
  260. #define CLK_FOUT_BPLL 1
  261. #define CLK_FOUT_EPLL 2
  262. /* Muxes */
  263. #define CLK_MOUT_MPLL_MIF 8
  264. #define CLK_MOUT_BPLL 9
  265. #define CLK_MOUT_DPHY 10
  266. #define CLK_MOUT_DMC_BUS 11
  267. #define CLK_MOUT_EPLL 12
  268. /* Dividers */
  269. #define CLK_DIV_DMC 16
  270. #define CLK_DIV_DPHY 17
  271. #define CLK_DIV_DMC_PRE 18
  272. #define CLK_DIV_DMCP 19
  273. #define CLK_DIV_DMCD 20
  274. /*
  275. * Total number of clocks of main CMU.
  276. * NOTE: Must be equal to last clock ID increased by one.
  277. */
  278. #define NR_CLKS_DMC 21
  279. /*
  280. * CMU ISP
  281. */
  282. /* Dividers */
  283. #define CLK_DIV_ISP1 1
  284. #define CLK_DIV_ISP0 2
  285. #define CLK_DIV_MCUISP1 3
  286. #define CLK_DIV_MCUISP0 4
  287. #define CLK_DIV_MPWM 5
  288. /* Gates */
  289. #define CLK_UART_ISP 8
  290. #define CLK_WDT_ISP 9
  291. #define CLK_PWM_ISP 10
  292. #define CLK_I2C1_ISP 11
  293. #define CLK_I2C0_ISP 12
  294. #define CLK_MPWM_ISP 13
  295. #define CLK_MCUCTL_ISP 14
  296. #define CLK_PPMUISPX 15
  297. #define CLK_PPMUISPMX 16
  298. #define CLK_QE_LITE1 17
  299. #define CLK_QE_LITE0 18
  300. #define CLK_QE_FD 19
  301. #define CLK_QE_DRC 20
  302. #define CLK_QE_ISP 21
  303. #define CLK_CSIS1 22
  304. #define CLK_SMMU_LITE1 23
  305. #define CLK_SMMU_LITE0 24
  306. #define CLK_SMMU_FD 25
  307. #define CLK_SMMU_DRC 26
  308. #define CLK_SMMU_ISP 27
  309. #define CLK_GICISP 28
  310. #define CLK_CSIS0 29
  311. #define CLK_MCUISP 30
  312. #define CLK_LITE1 31
  313. #define CLK_LITE0 32
  314. #define CLK_FD 33
  315. #define CLK_DRC 34
  316. #define CLK_ISP 35
  317. #define CLK_QE_ISPCX 36
  318. #define CLK_QE_SCALERP 37
  319. #define CLK_QE_SCALERC 38
  320. #define CLK_SMMU_SCALERP 39
  321. #define CLK_SMMU_SCALERC 40
  322. #define CLK_SCALERP 41
  323. #define CLK_SCALERC 42
  324. #define CLK_SPI1_ISP 43
  325. #define CLK_SPI0_ISP 44
  326. #define CLK_SMMU_ISPCX 45
  327. #define CLK_ASYNCAXIM 46
  328. #define CLK_SCLK_MPWM_ISP 47
  329. /*
  330. * Total number of clocks of CMU_ISP.
  331. * NOTE: Must be equal to last clock ID increased by one.
  332. */
  333. #define NR_CLKS_ISP 48
  334. #endif /* _DT_BINDINGS_CLOCK_SAMSUNG_EXYNOS3250_CLOCK_H */