exynos3250.h 8.7 KB

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