summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorStephen Boyd <sboyd@kernel.org>2026-04-12 02:24:53 +0300
committerStephen Boyd <sboyd@kernel.org>2026-04-12 02:24:53 +0300
commit42ca4f0c9444bea688c2f4797b00cea0b3f842d9 (patch)
tree3d6f5d63856e2d5cc32d858e3aaa0a819dddefe8 /include
parentc369299895a591d96745d6492d4888259b004a9e (diff)
parente57c36bc1a3e459239ead492ebce731a88a264b1 (diff)
downloadlinux-42ca4f0c9444bea688c2f4797b00cea0b3f842d9.tar.xz
Merge tag 'samsung-clk-7.1' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into clk-samsung
Pull Samsung SoC clock driver updates from Krzysztof Kozlowski: - Axis ARTPEC-9: Add new PLL clocks and new drivers for eight clock controllers on the SoC - ExynosAutov920: Add G3D (GPU) clock controller - Exynos850: Define missing clock for the APM mailbox * tag 'samsung-clk-7.1' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: clk: samsung: exynos850: Add APM-to-AP mailbox clock dt-bindings: clock: exynos850: Add APM_AP MAILBOX clock clk: samsung: Use %pe format to simplify clk: samsung: pll: Fix possible truncation in a9fraco recalc rate clk: samsung: exynosautov920: add block G3D clock support dt-bindings: clock: exynosautov920: add G3D clock definitions clk: samsung: gs101: harmonise symbol names (clock arrays) clk: samsung: artpec-9: Add initial clock support for ARTPEC-9 SoC clk: samsung: Add clock PLL support for ARTPEC-9 SoC dt-bindings: clock: Add ARTPEC-9 clock controller
Diffstat (limited to 'include')
-rw-r--r--include/dt-bindings/clock/axis,artpec9-clk.h195
-rw-r--r--include/dt-bindings/clock/exynos850.h1
-rw-r--r--include/dt-bindings/clock/samsung,exynosautov920.h6
3 files changed, 202 insertions, 0 deletions
diff --git a/include/dt-bindings/clock/axis,artpec9-clk.h b/include/dt-bindings/clock/axis,artpec9-clk.h
new file mode 100644
index 000000000000..c6787be8d686
--- /dev/null
+++ b/include/dt-bindings/clock/axis,artpec9-clk.h
@@ -0,0 +1,195 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
+/*
+ * Copyright (c) 2025 Samsung Electronics Co., Ltd.
+ * https://www.samsung.com
+ * Copyright (c) 2025 Axis Communications AB.
+ * https://www.axis.com
+ *
+ * Device Tree binding constants for ARTPEC-9 clock controller.
+ */
+
+#ifndef _DT_BINDINGS_CLOCK_ARTPEC9_H
+#define _DT_BINDINGS_CLOCK_ARTPEC9_H
+
+/* CMU_CMU */
+#define CLK_FOUT_SHARED0_PLL 1
+#define CLK_DOUT_SHARED0_DIV2 2
+#define CLK_DOUT_SHARED0_DIV3 3
+#define CLK_DOUT_SHARED0_DIV4 4
+#define CLK_FOUT_SHARED1_PLL 5
+#define CLK_DOUT_SHARED1_DIV2 6
+#define CLK_DOUT_SHARED1_DIV3 7
+#define CLK_DOUT_SHARED1_DIV4 8
+#define CLK_FOUT_AUDIO_PLL 9
+#define CLK_DOUT_CMU_ADD 10
+#define CLK_DOUT_CMU_BUS 11
+#define CLK_DOUT_CMU_CDC_CORE 12
+#define CLK_DOUT_CMU_CORE_MAIN 13
+#define CLK_DOUT_CMU_CPUCL_SWITCH 14
+#define CLK_DOUT_CMU_DLP_CORE 15
+#define CLK_DOUT_CMU_FSYS0_BUS 16
+#define CLK_DOUT_CMU_FSYS0_IP 17
+#define CLK_DOUT_CMU_FSYS1_BUS 18
+#define CLK_DOUT_CMU_FSYS1_SCAN0 19
+#define CLK_DOUT_CMU_FSYS1_SCAN1 20
+#define CLK_DOUT_CMU_GPU_3D 21
+#define CLK_DOUT_CMU_GPU_2D 22
+#define CLK_DOUT_CMU_IMEM_ACLK 23
+#define CLK_DOUT_CMU_IMEM_CA5 24
+#define CLK_DOUT_CMU_IMEM_JPEG 25
+#define CLK_DOUT_CMU_IMEM_SSS 26
+#define CLK_DOUT_CMU_IPA_CORE 27
+#define CLK_DOUT_CMU_LCPU 28
+#define CLK_DOUT_CMU_MIF_SWITCH 29
+#define CLK_DOUT_CMU_MIF_BUSP 30
+#define CLK_DOUT_CMU_PERI_DISP 31
+#define CLK_DOUT_CMU_PERI_IP 32
+#define CLK_DOUT_CMU_RSP_CORE 33
+#define CLK_DOUT_CMU_TRFM 34
+#define CLK_DOUT_CMU_VIO_CORE_L 35
+#define CLK_DOUT_CMU_VIO_CORE 36
+#define CLK_DOUT_CMU_VIP0 37
+#define CLK_DOUT_CMU_VIP1 38
+#define CLK_DOUT_CMU_VPP_CORE 39
+#define CLK_DOUT_CMU_VIO_AUDIO 40
+
+/* CMU_BUS */
+#define CLK_MOUT_BUS_ACLK_USER 1
+
+/* CMU_CORE */
+#define CLK_MOUT_CORE_ACLK_USER 1
+
+/* CMU_CPUCL */
+#define CLK_FOUT_CPUCL_PLL0 1
+#define CLK_MOUT_CPUCL_PLL0 2
+#define CLK_FOUT_CPUCL_PLL1 3
+#define CLK_MOUT_CPUCL_PLL_SCU 4
+#define CLK_MOUT_CPUCL_SWITCH_SCU_USER 5
+#define CLK_MOUT_CPUCL_SWITCH_USER 6
+#define CLK_DOUT_CPUCL_CPU 7
+#define CLK_DOUT_CPUCL_CLUSTER_PERIPHCLK 8
+#define CLK_DOUT_CPUCL_CLUSTER_GICCLK 9
+#define CLK_DOUT_CPUCL_CLUSTER_PCLK 10
+#define CLK_DOUT_CPUCL_CMUREF 11
+#define CLK_DOUT_CPUCL_CLUSTER_ATCLK 12
+#define CLK_DOUT_CPUCL_CLUSTER_SCU 13
+#define CLK_DOUT_CPUCL_DBG 14
+#define CLK_GOUT_CPUCL_SHORTSTOP 15
+#define CLK_GOUT_CPUCL_CLUSTER_CPU 16
+#define CLK_GOUT_CPUCL_CSSYS_IPCLKPORT_ATCLK 17
+#define CLK_GOUT_CPUCL_CSSYS_IPCLKPORT_PCLKDBG 18
+
+/* CMU_FSYS0 */
+#define CLK_MOUT_FSYS0_BUS_USER 1
+#define CLK_MOUT_FSYS0_IP_USER 2
+#define CLK_MOUT_FSYS0_MAIN_USER 3
+#define CLK_DOUT_FSYS0_125 4
+#define CLK_DOUT_FSYS0_ADC 5
+#define CLK_DOUT_FSYS0_BUS_300 6
+#define CLK_DOUT_FSYS0_EQOS0 7
+#define CLK_DOUT_FSYS0_EQOS1 8
+#define CLK_DOUT_FSYS0_MMC_CARD0 9
+#define CLK_DOUT_FSYS0_MMC_CARD1 10
+#define CLK_DOUT_FSYS0_MMC_CARD2 11
+#define CLK_DOUT_FSYS0_QSPI 12
+#define CLK_DOUT_FSYS0_SFMC_NAND 13
+#define CLK_GOUT_FSYS0_EQOS_TOP0_IPCLKPORT_ACLK_I 14
+#define CLK_GOUT_FSYS0_EQOS_TOP0_IPCLKPORT_CLK_CSR_I 15
+#define CLK_GOUT_FSYS0_EQOS_TOP0_IPCLKPORT_I_RGMII_PHASE_CLK_250 16
+#define CLK_GOUT_FSYS0_EQOS_TOP0_IPCLKPORT_I_RGMII_TXCLK 17
+#define CLK_GOUT_FSYS0_EQOS_TOP1_IPCLKPORT_I_RGMII_PHASE_CLK_250 18
+#define CLK_GOUT_FSYS0_EQOS_TOP1_IPCLKPORT_I_RGMII_TXCLK 19
+#define CLK_GOUT_FSYS0_EQOS_TOP1_IPCLKPORT_ACLK_I 20
+#define CLK_GOUT_FSYS0_EQOS_TOP1_IPCLKPORT_CLK_CSR_I 21
+#define CLK_GOUT_FSYS0_I3C0_IPCLKPORT_I_APB_S_PCLK 22
+#define CLK_GOUT_FSYS0_I3C0_IPCLKPORT_I_CORE_CLK 23
+#define CLK_GOUT_FSYS0_I3C0_IPCLKPORT_I_DMA_CLK 24
+#define CLK_GOUT_FSYS0_I3C0_IPCLKPORT_I_HDR_TX_CLK 25
+#define CLK_GOUT_FSYS0_I3C1_IPCLKPORT_I_APB_S_PCLK 26
+#define CLK_GOUT_FSYS0_I3C1_IPCLKPORT_I_CORE_CLK 27
+#define CLK_GOUT_FSYS0_I3C1_IPCLKPORT_I_DMA_CLK 28
+#define CLK_GOUT_FSYS0_I3C1_IPCLKPORT_I_HDR_TX_CLK 29
+#define CLK_GOUT_FSYS0_MMC0_IPCLKPORT_SDCLKIN 30
+#define CLK_GOUT_FSYS0_MMC1_IPCLKPORT_SDCLKIN 31
+#define CLK_GOUT_FSYS0_MMC2_IPCLKPORT_SDCLKIN 32
+#define CLK_GOUT_FSYS0_QSPI_IPCLKPORT_HCLK 33
+#define CLK_GOUT_FSYS0_QSPI_IPCLKPORT_SSI_CLK 34
+#define CLK_GOUT_FSYS0_SFMC_IPCLKPORT_I_ACLK_NAND 35
+#define CLK_GOUT_FSYS0_I2C0_IPCLKPORT_I_PCLK 36
+#define CLK_GOUT_FSYS0_I2C1_IPCLKPORT_I_PCLK 37
+#define CLK_GOUT_FSYS0_MMC0_IPCLKPORT_I_ACLK 38
+#define CLK_GOUT_FSYS0_MMC1_IPCLKPORT_I_ACLK 39
+#define CLK_GOUT_FSYS0_MMC2_IPCLKPORT_I_ACLK 40
+#define CLK_GOUT_FSYS0_PWM_IPCLKPORT_I_PCLK_S0 41
+
+/* CMU_FSYS1 */
+#define CLK_FOUT_FSYS1_PLL 1
+#define CLK_MOUT_FSYS1_SCAN0_USER 2
+#define CLK_MOUT_FSYS1_SCAN1_USER 3
+#define CLK_MOUT_FSYS1_BUS_USER 4
+#define CLK_DOUT_FSYS1_200 5
+#define CLK_DOUT_FSYS1_BUS_300 6
+#define CLK_DOUT_FSYS1_OTP_MEM 7
+#define CLK_DOUT_FSYS1_PCIE_PHY_REFCLK_SYSPLL 8
+#define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_PHY_APB2CR_PCLK_100 9
+#define CLK_GOUT_FSYS1_UART0_PCLK 10
+#define CLK_GOUT_FSYS1_UART0_SCLK_UART 11
+#define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_PHY_APB2CR_PCLK_300 12
+#define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X1_DBI_ACLK_SOC 13
+#define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X1_MSTR_ACLK_SOC 14
+#define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X1_SLV_ACLK_SOC 15
+#define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X2_DBI_ACLK_SOC 16
+#define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X2_MSTR_ACLK_SOC 17
+#define CLK_GOUT_FSYS1_IPCLKPORT_PCIE_SUB_CON_X2_SLV_ACLK_SOC 18
+#define CLK_GOUT_FSYS1_USB20DRD_IPCLKPORT_ACLK_PHYCTRL_20 19
+#define CLK_GOUT_FSYS1_USB20DRD_IPCLKPORT_BUS_CLK_EARLY 20
+#define CLK_GOUT_FSYS1_XHB_AHBBR_FSYS1_IPCLKPORT_CLK 21
+#define CLK_GOUT_FSYS1_XHB_USB_IPCLKPORT_CLK 22
+
+/* CMU_IMEM */
+#define CLK_MOUT_IMEM_ACLK_USER 1
+#define CLK_MOUT_IMEM_CA5_USER 2
+#define CLK_MOUT_IMEM_SSS_USER 3
+#define CLK_MOUT_IMEM_JPEG_USER 4
+#define CLK_DOUT_IMEM_PCLK 5
+#define CLK_GOUT_IMEM_CA5_0_IPCLKPORT_ATCLK 6
+#define CLK_GOUT_IMEM_CA5_0_IPCLKPORT_CLKIN 7
+#define CLK_GOUT_IMEM_CA5_0_IPCLKPORT_PCLK_DBG 8
+#define CLK_GOUT_IMEM_CA5_1_IPCLKPORT_ATCLK 9
+#define CLK_GOUT_IMEM_CA5_1_IPCLKPORT_CLKIN 10
+#define CLK_GOUT_IMEM_CA5_1_IPCLKPORT_PCLK_DBG 11
+#define CLK_GOUT_IMEM_MCT0_PCLK 12
+#define CLK_GOUT_IMEM_MCT1_PCLK 13
+#define CLK_GOUT_IMEM_MCT2_PCLK 14
+#define CLK_GOUT_IMEM_MCT3_PCLK 15
+#define CLK_GOUT_IMEM_PCLK_TMU0_APBIF 16
+
+/* CMU_PERI */
+#define CLK_MOUT_PERI_IP_USER 1
+#define CLK_MOUT_PERI_DISP_USER 2
+#define CLK_DOUT_PERI_125 3
+#define CLK_DOUT_PERI_PCLK 4
+#define CLK_DOUT_PERI_SPI 5
+#define CLK_DOUT_PERI_UART1 6
+#define CLK_DOUT_PERI_UART2 7
+#define CLK_GOUT_PERI_DMA4DSIM_IPCLKPORT_CLK_APB_CLK 8
+#define CLK_GOUT_PERI_DMA4DSIM_IPCLKPORT_CLK_AXI_CLK 9
+#define CLK_GOUT_PERI_I3C2_IPCLKPORT_I_APB_S_PCLK 10
+#define CLK_GOUT_PERI_I3C2_IPCLKPORT_I_CORE_CLK 11
+#define CLK_GOUT_PERI_I3C2_IPCLKPORT_I_DMA_CLK 12
+#define CLK_GOUT_PERI_I3C2_IPCLKPORT_I_HDR_TX_CLK 13
+#define CLK_GOUT_PERI_I3C3_IPCLKPORT_I_APB_S_PCLK 14
+#define CLK_GOUT_PERI_I3C3_IPCLKPORT_I_CORE_CLK 15
+#define CLK_GOUT_PERI_I3C3_IPCLKPORT_I_DMA_CLK 16
+#define CLK_GOUT_PERI_I3C3_IPCLKPORT_I_HDR_TX_CLK 17
+#define CLK_GOUT_PERI_APB_ASYNC_DSIM_IPCLKPORT_PCLKS 18
+#define CLK_GOUT_PERI_I2C2_IPCLKPORT_I_PCLK 19
+#define CLK_GOUT_PERI_I2C3_IPCLKPORT_I_PCLK 20
+#define CLK_GOUT_PERI_SPI0_PCLK 21
+#define CLK_GOUT_PERI_SPI0_SCLK_SPI 22
+#define CLK_GOUT_PERI_UART1_PCLK 23
+#define CLK_GOUT_PERI_UART1_SCLK_UART 24
+#define CLK_GOUT_PERI_UART2_PCLK 25
+#define CLK_GOUT_PERI_UART2_SCLK_UART 26
+
+#endif /* _DT_BINDINGS_CLOCK_ARTPEC9_H */
diff --git a/include/dt-bindings/clock/exynos850.h b/include/dt-bindings/clock/exynos850.h
index 80dacda57229..95285589615a 100644
--- a/include/dt-bindings/clock/exynos850.h
+++ b/include/dt-bindings/clock/exynos850.h
@@ -126,6 +126,7 @@
#define CLK_GOUT_GPIO_ALIVE_PCLK 22
#define CLK_GOUT_PMU_ALIVE_PCLK 23
#define CLK_GOUT_SYSREG_APM_PCLK 24
+#define CLK_GOUT_MAILBOX_APM_AP_PCLK 25
/* CMU_AUD */
#define CLK_DOUT_AUD_AUDIF 1
diff --git a/include/dt-bindings/clock/samsung,exynosautov920.h b/include/dt-bindings/clock/samsung,exynosautov920.h
index 06dec27a8c77..f2628c220b22 100644
--- a/include/dt-bindings/clock/samsung,exynosautov920.h
+++ b/include/dt-bindings/clock/samsung,exynosautov920.h
@@ -309,4 +309,10 @@
#define CLK_MOUT_MFD_NOC_USER 1
#define CLK_DOUT_MFD_NOCP 2
+/* CMU_G3D */
+#define FOUT_PLL_G3D 1
+#define CLK_MOUT_G3D_NOC 2
+#define CLK_MOUT_G3D_SWITCH_USER 3
+#define CLK_MOUT_G3D_NOCP_USER 4
+
#endif /* _DT_BINDINGS_CLOCK_EXYNOSAUTOV920_H */