OSDN Git Service

dt-bindings: clock: add clock binding definitions for Exynos Auto v9
authorChanho Park <chanho61.park@samsung.com>
Wed, 4 May 2022 07:51:43 +0000 (16:51 +0900)
committerKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Thu, 5 May 2022 06:57:45 +0000 (08:57 +0200)
Add device tree clock binding definitions for below CMU blocks.

- CMU_TOP
- CMU_BUSMC
- CMU_CORE
- CMU_FYS2
- CMU_PERIC0 / C1
- CMU_PERIS

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Acked-by: Chanwoo Choi <cw00.choi@samsung.com>
Link: https://lore.kernel.org/r/20220504075154.58819-2-chanho61.park@samsung.com
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
include/dt-bindings/clock/samsung,exynosautov9.h [new file with mode: 0644]

diff --git a/include/dt-bindings/clock/samsung,exynosautov9.h b/include/dt-bindings/clock/samsung,exynosautov9.h
new file mode 100644 (file)
index 0000000..71ec0a9
--- /dev/null
@@ -0,0 +1,299 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
+/*
+ * Copyright (c) 2022 Samsung Electronics Co., Ltd.
+ * Author: Chanho Park <chanho61.park@samsung.com>
+ *
+ * Device Tree binding constants for Exynos Auto V9 clock controller.
+ */
+
+#ifndef _DT_BINDINGS_CLOCK_EXYNOSAUTOV9_H
+#define _DT_BINDINGS_CLOCK_EXYNOSAUTOV9_H
+
+/* CMU_TOP */
+#define FOUT_SHARED0_PLL               1
+#define FOUT_SHARED1_PLL               2
+#define FOUT_SHARED2_PLL               3
+#define FOUT_SHARED3_PLL               4
+#define FOUT_SHARED4_PLL               5
+
+/* MUX in CMU_TOP */
+#define MOUT_SHARED0_PLL               6
+#define MOUT_SHARED1_PLL               7
+#define MOUT_SHARED2_PLL               8
+#define MOUT_SHARED3_PLL               9
+#define MOUT_SHARED4_PLL               10
+#define MOUT_CLKCMU_CMU_BOOST          11
+#define MOUT_CLKCMU_CMU_CMUREF         12
+#define MOUT_CLKCMU_ACC_BUS            13
+#define MOUT_CLKCMU_APM_BUS            14
+#define MOUT_CLKCMU_AUD_CPU            15
+#define MOUT_CLKCMU_AUD_BUS            16
+#define MOUT_CLKCMU_BUSC_BUS           17
+#define MOUT_CLKCMU_BUSMC_BUS          19
+#define MOUT_CLKCMU_CORE_BUS           20
+#define MOUT_CLKCMU_CPUCL0_SWITCH      21
+#define MOUT_CLKCMU_CPUCL0_CLUSTER     22
+#define MOUT_CLKCMU_CPUCL1_SWITCH      24
+#define MOUT_CLKCMU_CPUCL1_CLUSTER     25
+#define MOUT_CLKCMU_DPTX_BUS           26
+#define MOUT_CLKCMU_DPTX_DPGTC         27
+#define MOUT_CLKCMU_DPUM_BUS           28
+#define MOUT_CLKCMU_DPUS0_BUS          29
+#define MOUT_CLKCMU_DPUS1_BUS          30
+#define MOUT_CLKCMU_FSYS0_BUS          31
+#define MOUT_CLKCMU_FSYS0_PCIE         32
+#define MOUT_CLKCMU_FSYS1_BUS          33
+#define MOUT_CLKCMU_FSYS1_USBDRD       34
+#define MOUT_CLKCMU_FSYS1_MMC_CARD     35
+#define MOUT_CLKCMU_FSYS2_BUS          36
+#define MOUT_CLKCMU_FSYS2_UFS_EMBD     37
+#define MOUT_CLKCMU_FSYS2_ETHERNET     38
+#define MOUT_CLKCMU_G2D_G2D            39
+#define MOUT_CLKCMU_G2D_MSCL           40
+#define MOUT_CLKCMU_G3D00_SWITCH       41
+#define MOUT_CLKCMU_G3D01_SWITCH       42
+#define MOUT_CLKCMU_G3D1_SWITCH                43
+#define MOUT_CLKCMU_ISPB_BUS           44
+#define MOUT_CLKCMU_MFC_MFC            45
+#define MOUT_CLKCMU_MFC_WFD            46
+#define MOUT_CLKCMU_MIF_SWITCH         47
+#define MOUT_CLKCMU_MIF_BUSP           48
+#define MOUT_CLKCMU_NPU_BUS            49
+#define MOUT_CLKCMU_PERIC0_BUS         50
+#define MOUT_CLKCMU_PERIC0_IP          51
+#define MOUT_CLKCMU_PERIC1_BUS         52
+#define MOUT_CLKCMU_PERIC1_IP          53
+#define MOUT_CLKCMU_PERIS_BUS          54
+
+/* DIV in CMU_TOP */
+#define DOUT_SHARED0_DIV3              101
+#define DOUT_SHARED0_DIV2              102
+#define DOUT_SHARED1_DIV3              103
+#define DOUT_SHARED1_DIV2              104
+#define DOUT_SHARED1_DIV4              105
+#define DOUT_SHARED2_DIV3              106
+#define DOUT_SHARED2_DIV2              107
+#define DOUT_SHARED2_DIV4              108
+#define DOUT_SHARED4_DIV2              109
+#define DOUT_SHARED4_DIV4              110
+#define DOUT_CLKCMU_CMU_BOOST          111
+#define DOUT_CLKCMU_ACC_BUS            112
+#define DOUT_CLKCMU_APM_BUS            113
+#define DOUT_CLKCMU_AUD_CPU            114
+#define DOUT_CLKCMU_AUD_BUS            115
+#define DOUT_CLKCMU_BUSC_BUS           116
+#define DOUT_CLKCMU_BUSMC_BUS          118
+#define DOUT_CLKCMU_CORE_BUS           119
+#define DOUT_CLKCMU_CPUCL0_SWITCH      120
+#define DOUT_CLKCMU_CPUCL0_CLUSTER     121
+#define DOUT_CLKCMU_CPUCL1_SWITCH      123
+#define DOUT_CLKCMU_CPUCL1_CLUSTER     124
+#define DOUT_CLKCMU_DPTX_BUS           125
+#define DOUT_CLKCMU_DPTX_DPGTC         126
+#define DOUT_CLKCMU_DPUM_BUS           127
+#define DOUT_CLKCMU_DPUS0_BUS          128
+#define DOUT_CLKCMU_DPUS1_BUS          129
+#define DOUT_CLKCMU_FSYS0_BUS          130
+#define DOUT_CLKCMU_FSYS0_PCIE         131
+#define DOUT_CLKCMU_FSYS1_BUS          132
+#define DOUT_CLKCMU_FSYS1_USBDRD       133
+#define DOUT_CLKCMU_FSYS2_BUS          134
+#define DOUT_CLKCMU_FSYS2_UFS_EMBD     135
+#define DOUT_CLKCMU_FSYS2_ETHERNET     136
+#define DOUT_CLKCMU_G2D_G2D            137
+#define DOUT_CLKCMU_G2D_MSCL           138
+#define DOUT_CLKCMU_G3D00_SWITCH       139
+#define DOUT_CLKCMU_G3D01_SWITCH       140
+#define DOUT_CLKCMU_G3D1_SWITCH                141
+#define DOUT_CLKCMU_ISPB_BUS           142
+#define DOUT_CLKCMU_MFC_MFC            143
+#define DOUT_CLKCMU_MFC_WFD            144
+#define DOUT_CLKCMU_MIF_SWITCH         145
+#define DOUT_CLKCMU_MIF_BUSP           146
+#define DOUT_CLKCMU_NPU_BUS            147
+#define DOUT_CLKCMU_PERIC0_BUS         148
+#define DOUT_CLKCMU_PERIC0_IP          149
+#define DOUT_CLKCMU_PERIC1_BUS         150
+#define DOUT_CLKCMU_PERIC1_IP          151
+#define DOUT_CLKCMU_PERIS_BUS          152
+
+/* GAT in CMU_TOP */
+#define GOUT_CLKCMU_CMU_BOOST          201
+#define GOUT_CLKCMU_CPUCL0_BOOST       202
+#define GOUT_CLKCMU_CPUCL1_BOOST       203
+#define GOUT_CLKCMU_CORE_BOOST         204
+#define GOUT_CLKCMU_BUSC_BOOST         205
+#define GOUT_CLKCMU_BUSMC_BOOST                206
+#define GOUT_CLKCMU_MIF_BOOST          207
+#define GOUT_CLKCMU_ACC_BUS            208
+#define GOUT_CLKCMU_APM_BUS            209
+#define GOUT_CLKCMU_AUD_CPU            210
+#define GOUT_CLKCMU_AUD_BUS            211
+#define GOUT_CLKCMU_BUSC_BUS           212
+#define GOUT_CLKCMU_BUSMC_BUS          214
+#define GOUT_CLKCMU_CORE_BUS           215
+#define GOUT_CLKCMU_CPUCL0_SWITCH      216
+#define GOUT_CLKCMU_CPUCL0_CLUSTER     217
+#define GOUT_CLKCMU_CPUCL1_SWITCH      219
+#define GOUT_CLKCMU_CPUCL1_CLUSTER     220
+#define GOUT_CLKCMU_DPTX_BUS           221
+#define GOUT_CLKCMU_DPTX_DPGTC         222
+#define GOUT_CLKCMU_DPUM_BUS           223
+#define GOUT_CLKCMU_DPUS0_BUS          224
+#define GOUT_CLKCMU_DPUS1_BUS          225
+#define GOUT_CLKCMU_FSYS0_BUS          226
+#define GOUT_CLKCMU_FSYS0_PCIE         227
+#define GOUT_CLKCMU_FSYS1_BUS          228
+#define GOUT_CLKCMU_FSYS1_USBDRD       229
+#define GOUT_CLKCMU_FSYS1_MMC_CARD     230
+#define GOUT_CLKCMU_FSYS2_BUS          231
+#define GOUT_CLKCMU_FSYS2_UFS_EMBD     232
+#define GOUT_CLKCMU_FSYS2_ETHERNET     233
+#define GOUT_CLKCMU_G2D_G2D            234
+#define GOUT_CLKCMU_G2D_MSCL           235
+#define GOUT_CLKCMU_G3D00_SWITCH       236
+#define GOUT_CLKCMU_G3D01_SWITCH       237
+#define GOUT_CLKCMU_G3D1_SWITCH                238
+#define GOUT_CLKCMU_ISPB_BUS           239
+#define GOUT_CLKCMU_MFC_MFC            240
+#define GOUT_CLKCMU_MFC_WFD            241
+#define GOUT_CLKCMU_MIF_SWITCH         242
+#define GOUT_CLKCMU_MIF_BUSP           243
+#define GOUT_CLKCMU_NPU_BUS            244
+#define GOUT_CLKCMU_PERIC0_BUS         245
+#define GOUT_CLKCMU_PERIC0_IP          246
+#define GOUT_CLKCMU_PERIC1_BUS         247
+#define GOUT_CLKCMU_PERIC1_IP          248
+#define GOUT_CLKCMU_PERIS_BUS          249
+
+#define TOP_NR_CLK                     249
+
+/* CMU_BUSMC */
+#define CLK_MOUT_BUSMC_BUS_USER                1
+#define CLK_DOUT_BUSMC_BUSP            2
+#define CLK_GOUT_BUSMC_PDMA0_PCLK      3
+#define CLK_GOUT_BUSMC_SPDMA_PCLK      4
+
+#define BUSMC_NR_CLK                   4
+
+/* CMU_CORE */
+#define CLK_MOUT_CORE_BUS_USER         1
+#define CLK_DOUT_CORE_BUSP             2
+#define CLK_GOUT_CORE_CCI_CLK          3
+#define CLK_GOUT_CORE_CCI_PCLK         4
+#define CLK_GOUT_CORE_CMU_CORE_PCLK    5
+
+#define CORE_NR_CLK                    5
+
+/* CMU_FSYS2 */
+#define CLK_MOUT_FSYS2_BUS_USER                1
+#define CLK_MOUT_FSYS2_UFS_EMBD_USER   2
+#define CLK_MOUT_FSYS2_ETHERNET_USER   3
+#define CLK_GOUT_FSYS2_UFS_EMBD0_ACLK  4
+#define CLK_GOUT_FSYS2_UFS_EMBD0_UNIPRO        5
+#define CLK_GOUT_FSYS2_UFS_EMBD1_ACLK  6
+#define CLK_GOUT_FSYS2_UFS_EMBD1_UNIPRO        7
+
+#define FSYS2_NR_CLK                   7
+
+/* CMU_PERIC0 */
+#define CLK_MOUT_PERIC0_BUS_USER       1
+#define CLK_MOUT_PERIC0_IP_USER                2
+#define CLK_MOUT_PERIC0_USI00_USI      3
+#define CLK_MOUT_PERIC0_USI01_USI      4
+#define CLK_MOUT_PERIC0_USI02_USI      5
+#define CLK_MOUT_PERIC0_USI03_USI      6
+#define CLK_MOUT_PERIC0_USI04_USI      7
+#define CLK_MOUT_PERIC0_USI05_USI      8
+#define CLK_MOUT_PERIC0_USI_I2C                9
+
+#define CLK_DOUT_PERIC0_USI00_USI      10
+#define CLK_DOUT_PERIC0_USI01_USI      11
+#define CLK_DOUT_PERIC0_USI02_USI      12
+#define CLK_DOUT_PERIC0_USI03_USI      13
+#define CLK_DOUT_PERIC0_USI04_USI      14
+#define CLK_DOUT_PERIC0_USI05_USI      15
+#define CLK_DOUT_PERIC0_USI_I2C                16
+
+#define CLK_GOUT_PERIC0_IPCLK_0                20
+#define CLK_GOUT_PERIC0_IPCLK_1                21
+#define CLK_GOUT_PERIC0_IPCLK_2                22
+#define CLK_GOUT_PERIC0_IPCLK_3                23
+#define CLK_GOUT_PERIC0_IPCLK_4                24
+#define CLK_GOUT_PERIC0_IPCLK_5                25
+#define CLK_GOUT_PERIC0_IPCLK_6                26
+#define CLK_GOUT_PERIC0_IPCLK_7                27
+#define CLK_GOUT_PERIC0_IPCLK_8                28
+#define CLK_GOUT_PERIC0_IPCLK_9                29
+#define CLK_GOUT_PERIC0_IPCLK_10       30
+#define CLK_GOUT_PERIC0_IPCLK_11       30
+#define CLK_GOUT_PERIC0_PCLK_0         31
+#define CLK_GOUT_PERIC0_PCLK_1         32
+#define CLK_GOUT_PERIC0_PCLK_2         33
+#define CLK_GOUT_PERIC0_PCLK_3         34
+#define CLK_GOUT_PERIC0_PCLK_4         35
+#define CLK_GOUT_PERIC0_PCLK_5         36
+#define CLK_GOUT_PERIC0_PCLK_6         37
+#define CLK_GOUT_PERIC0_PCLK_7         38
+#define CLK_GOUT_PERIC0_PCLK_8         39
+#define CLK_GOUT_PERIC0_PCLK_9         40
+#define CLK_GOUT_PERIC0_PCLK_10                41
+#define CLK_GOUT_PERIC0_PCLK_11                42
+
+#define PERIC0_NR_CLK                  42
+
+/* CMU_PERIC1 */
+#define CLK_MOUT_PERIC1_BUS_USER       1
+#define CLK_MOUT_PERIC1_IP_USER                2
+#define CLK_MOUT_PERIC1_USI06_USI      3
+#define CLK_MOUT_PERIC1_USI07_USI      4
+#define CLK_MOUT_PERIC1_USI08_USI      5
+#define CLK_MOUT_PERIC1_USI09_USI      6
+#define CLK_MOUT_PERIC1_USI10_USI      7
+#define CLK_MOUT_PERIC1_USI11_USI      8
+#define CLK_MOUT_PERIC1_USI_I2C                9
+
+#define CLK_DOUT_PERIC1_USI06_USI      10
+#define CLK_DOUT_PERIC1_USI07_USI      11
+#define CLK_DOUT_PERIC1_USI08_USI      12
+#define CLK_DOUT_PERIC1_USI09_USI      13
+#define CLK_DOUT_PERIC1_USI10_USI      14
+#define CLK_DOUT_PERIC1_USI11_USI      15
+#define CLK_DOUT_PERIC1_USI_I2C                16
+
+#define CLK_GOUT_PERIC1_IPCLK_0                20
+#define CLK_GOUT_PERIC1_IPCLK_1                21
+#define CLK_GOUT_PERIC1_IPCLK_2                22
+#define CLK_GOUT_PERIC1_IPCLK_3                23
+#define CLK_GOUT_PERIC1_IPCLK_4                24
+#define CLK_GOUT_PERIC1_IPCLK_5                25
+#define CLK_GOUT_PERIC1_IPCLK_6                26
+#define CLK_GOUT_PERIC1_IPCLK_7                27
+#define CLK_GOUT_PERIC1_IPCLK_8                28
+#define CLK_GOUT_PERIC1_IPCLK_9                29
+#define CLK_GOUT_PERIC1_IPCLK_10       30
+#define CLK_GOUT_PERIC1_IPCLK_11       30
+#define CLK_GOUT_PERIC1_PCLK_0         31
+#define CLK_GOUT_PERIC1_PCLK_1         32
+#define CLK_GOUT_PERIC1_PCLK_2         33
+#define CLK_GOUT_PERIC1_PCLK_3         34
+#define CLK_GOUT_PERIC1_PCLK_4         35
+#define CLK_GOUT_PERIC1_PCLK_5         36
+#define CLK_GOUT_PERIC1_PCLK_6         37
+#define CLK_GOUT_PERIC1_PCLK_7         38
+#define CLK_GOUT_PERIC1_PCLK_8         39
+#define CLK_GOUT_PERIC1_PCLK_9         40
+#define CLK_GOUT_PERIC1_PCLK_10                41
+#define CLK_GOUT_PERIC1_PCLK_11                42
+
+#define PERIC1_NR_CLK                  42
+
+/* CMU_PERIS */
+#define CLK_MOUT_PERIS_BUS_USER                1
+#define CLK_GOUT_SYSREG_PERIS_PCLK     2
+#define CLK_GOUT_WDT_CLUSTER0          3
+#define CLK_GOUT_WDT_CLUSTER1          4
+
+#define PERIS_NR_CLK                   4
+
+#endif /* _DT_BINDINGS_CLOCK_EXYNOSAUTOV9_H */