[PATCH RFC 6/8] clk: qcom: Remove tcsrcc-sm8750
From: Konrad Dybcio <konradybcio@kernel.org>
Date: 2026-02-02 14:58:25
Also in:
linux-arm-msm, linux-clk, linux-devicetree, lkml
Subsystem:
arm/qualcomm mailing list, common clk framework, qualcomm clock drivers, the rest · Maintainers:
Michael Turquette, Stephen Boyd, Bjorn Andersson, Linus Torvalds
From: Konrad Dybcio <redacted> This is now handled from within the pinctrl subsystem, since there is no "CC" block inside SM8750's TCSR, as the corresponding hardware is present within TLMM. Remove the leftovers. Signed-off-by: Konrad Dybcio <redacted> --- drivers/clk/qcom/Kconfig | 8 --- drivers/clk/qcom/Makefile | 1 - drivers/clk/qcom/tcsrcc-sm8750.c | 141 --------------------------------------- 3 files changed, 150 deletions(-)
diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
index a8a86ea6bb74..f3ed33173ef6 100644
--- a/drivers/clk/qcom/Kconfig
+++ b/drivers/clk/qcom/Kconfig@@ -1506,14 +1506,6 @@ config SM_TCSRCC_8650 Support for the TCSR clock controller on SM8650 devices. Say Y if you want to use peripheral devices such as SD/UFS. -config SM_TCSRCC_8750 - tristate "SM8750 TCSR Clock Controller" - depends on ARM64 || COMPILE_TEST - select QCOM_GDSC - help - Support for the TCSR clock controller on SM8750 devices. - Say Y if you want to use peripheral devices such as UFS/USB/PCIe. - config SA_VIDEOCC_8775P tristate "SA8775P Video Clock Controller" depends on ARM64 || COMPILE_TEST
diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile
index 6b0ad8832b55..f8c81844ee48 100644
--- a/drivers/clk/qcom/Makefile
+++ b/drivers/clk/qcom/Makefile@@ -184,7 +184,6 @@ obj-$(CONFIG_SM_GPUCC_MILOS) += gpucc-milos.o obj-$(CONFIG_SM_LPASSCC_6115) += lpasscc-sm6115.o obj-$(CONFIG_SM_TCSRCC_8550) += tcsrcc-sm8550.o obj-$(CONFIG_SM_TCSRCC_8650) += tcsrcc-sm8650.o -obj-$(CONFIG_SM_TCSRCC_8750) += tcsrcc-sm8750.o obj-$(CONFIG_SM_VIDEOCC_6350) += videocc-sm6350.o obj-$(CONFIG_SM_VIDEOCC_7150) += videocc-sm7150.o obj-$(CONFIG_SM_VIDEOCC_8150) += videocc-sm8150.o
diff --git a/drivers/clk/qcom/tcsrcc-sm8750.c b/drivers/clk/qcom/tcsrcc-sm8750.c
deleted file mode 100644
index 242e320986ef..000000000000
--- a/drivers/clk/qcom/tcsrcc-sm8750.c
+++ /dev/null@@ -1,141 +0,0 @@ -// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) -/* - * Copyright (c) 2024, Qualcomm Innovation Center, Inc. All rights reserved. - */ - -#include <linux/clk-provider.h> -#include <linux/module.h> -#include <linux/of.h> -#include <linux/platform_device.h> -#include <linux/regmap.h> - -#include <dt-bindings/clock/qcom,sm8750-tcsr.h> - -#include "clk-branch.h" -#include "clk-regmap.h" -#include "clk-regmap-divider.h" -#include "clk-regmap-mux.h" -#include "common.h" - -enum { - DT_BI_TCXO_PAD, -}; - -static struct clk_branch tcsr_pcie_0_clkref_en = { - .halt_reg = 0x0, - .halt_check = BRANCH_HALT_DELAY, - .clkr = { - .enable_reg = 0x0, - .enable_mask = BIT(0), - .hw.init = &(const struct clk_init_data) { - .name = "tcsr_pcie_0_clkref_en", - .ops = &clk_branch2_ops, - }, - }, -}; - -static struct clk_branch tcsr_ufs_clkref_en = { - .halt_reg = 0x1000, - .halt_check = BRANCH_HALT_DELAY, - .clkr = { - .enable_reg = 0x1000, - .enable_mask = BIT(0), - .hw.init = &(const struct clk_init_data) { - .name = "tcsr_ufs_clkref_en", - .parent_data = &(const struct clk_parent_data){ - .index = DT_BI_TCXO_PAD, - }, - .num_parents = 1, - .ops = &clk_branch2_ops, - }, - }, -}; - -static struct clk_branch tcsr_usb2_clkref_en = { - .halt_reg = 0x2000, - .halt_check = BRANCH_HALT_DELAY, - .clkr = { - .enable_reg = 0x2000, - .enable_mask = BIT(0), - .hw.init = &(const struct clk_init_data) { - .name = "tcsr_usb2_clkref_en", - .parent_data = &(const struct clk_parent_data){ - .index = DT_BI_TCXO_PAD, - }, - .num_parents = 1, - .ops = &clk_branch2_ops, - }, - }, -}; - -static struct clk_branch tcsr_usb3_clkref_en = { - .halt_reg = 0x3000, - .halt_check = BRANCH_HALT_DELAY, - .clkr = { - .enable_reg = 0x3000, - .enable_mask = BIT(0), - .hw.init = &(const struct clk_init_data) { - .name = "tcsr_usb3_clkref_en", - .parent_data = &(const struct clk_parent_data){ - .index = DT_BI_TCXO_PAD, - }, - .num_parents = 1, - .ops = &clk_branch2_ops, - }, - }, -}; - -static struct clk_regmap *tcsr_cc_sm8750_clocks[] = { - [TCSR_PCIE_0_CLKREF_EN] = &tcsr_pcie_0_clkref_en.clkr, - [TCSR_UFS_CLKREF_EN] = &tcsr_ufs_clkref_en.clkr, - [TCSR_USB2_CLKREF_EN] = &tcsr_usb2_clkref_en.clkr, - [TCSR_USB3_CLKREF_EN] = &tcsr_usb3_clkref_en.clkr, -}; - -static const struct regmap_config tcsr_cc_sm8750_regmap_config = { - .reg_bits = 32, - .reg_stride = 4, - .val_bits = 32, - .max_register = 0x3000, - .fast_io = true, -}; - -static const struct qcom_cc_desc tcsr_cc_sm8750_desc = { - .config = &tcsr_cc_sm8750_regmap_config, - .clks = tcsr_cc_sm8750_clocks, - .num_clks = ARRAY_SIZE(tcsr_cc_sm8750_clocks), -}; - -static const struct of_device_id tcsr_cc_sm8750_match_table[] = { - { .compatible = "qcom,sm8750-tcsr" }, - { } -}; -MODULE_DEVICE_TABLE(of, tcsr_cc_sm8750_match_table); - -static int tcsr_cc_sm8750_probe(struct platform_device *pdev) -{ - return qcom_cc_probe(pdev, &tcsr_cc_sm8750_desc); -} - -static struct platform_driver tcsr_cc_sm8750_driver = { - .probe = tcsr_cc_sm8750_probe, - .driver = { - .name = "tcsr_cc-sm8750", - .of_match_table = tcsr_cc_sm8750_match_table, - }, -}; - -static int __init tcsr_cc_sm8750_init(void) -{ - return platform_driver_register(&tcsr_cc_sm8750_driver); -} -subsys_initcall(tcsr_cc_sm8750_init); - -static void __exit tcsr_cc_sm8750_exit(void) -{ - platform_driver_unregister(&tcsr_cc_sm8750_driver); -} -module_exit(tcsr_cc_sm8750_exit); - -MODULE_DESCRIPTION("QTI TCSR_CC SM8750 Driver"); -MODULE_LICENSE("GPL");
--
2.52.0