From nobody Mon Feb 9 19:06:37 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 51D4537881F; Mon, 2 Feb 2026 14:58:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770044305; cv=none; b=Fe6pzXVt8Y/9dRAS2Iqr64HVo81XpZjhZ5knhxZn/RGXVp4LnuLcP/ujnFHl+SG1Fp/ryOgL2XfJdzEZhF9g+TnZxNg8hve640YRTcyJU5T/NUJISALmZzREX3UHYt2uk5I8W0MIy4+eE8XRyT0cHkm+b/cOmbeHthHg0Af7yK0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770044305; c=relaxed/simple; bh=onT3QaTRY0xTkD5kNCCvjIsdUkdS7xb9ckzbZSKX7t4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=HEVQ2agryVeTjv4QbktoeeQXOvwi4rjEJikgBZLBf04VKcQnS/oO90sIv97grVgMKKWKbCXHiQxTR92UeUUHRwGPiV/kwwBE0Yded0NVsszzB9GiDyWpeaxtA6EpP7JxL/bCVWreIEorWUWuiUd8s8itvmfc41bD6vIY6lTlPpc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=uciOcZj6; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="uciOcZj6" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BD612C2BCB1; Mon, 2 Feb 2026 14:58:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1770044305; bh=onT3QaTRY0xTkD5kNCCvjIsdUkdS7xb9ckzbZSKX7t4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=uciOcZj6KnD7BIl76BTJQBL8MfUAHfzuniX17qbONVuvona1cy7EDJiWmCfYUXQop dtjuTQ0shEn/uZFFOjn34BfyuQFiz2CbR5M1fbChvJ/YPlfR/G9jDNJVGhHm9Q292F m8yy+T7feKfW86D6ACEbaZr96v6AZyJ8qmKc47MGIRcqxwdM2e+2c+Al+iFxxzKGxc tYgHrqIw0IvMcVzpWswmr4ysK1NiCA/r8Ikf47fUFG2sTKh6390ub2LXANu+t8V69V vkkW6D6BlMafUDI5qpT41mK7edXrlvxeVZICv7XUWGFrXFJiFvirSlxjTWxBMLiLQS JV0NR31MbQsQg== From: Konrad Dybcio Date: Mon, 02 Feb 2026 15:57:38 +0100 Subject: [PATCH RFC 6/8] clk: qcom: Remove tcsrcc-sm8750 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260202-topic-8750_tcsr-v1-6-cd7e6648c64f@oss.qualcomm.com> References: <20260202-topic-8750_tcsr-v1-0-cd7e6648c64f@oss.qualcomm.com> In-Reply-To: <20260202-topic-8750_tcsr-v1-0-cd7e6648c64f@oss.qualcomm.com> To: Bjorn Andersson , Michael Turquette , Stephen Boyd , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Lee Jones , Taniya Das , Linus Walleij , Melody Olvera , Konrad Dybcio , Taniya Das , Raviteja Laggyshetty , Jishnu Prakash Cc: linux-arm-msm@vger.kernel.org, linux-clk@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Mukesh Ojha , Konrad Dybcio X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1770044267; l=5682; i=konrad.dybcio@oss.qualcomm.com; s=20230215; h=from:subject:message-id; bh=0DfW/RMcdv2idv95WiA/x5h2RxFFNXGhR2LLy+IJWBY=; b=O+U6pwIXi3l1ChB1HXernBRH4Jojjz5fibiZIbuf7eRq6Aj4/wNHK1IEWk5WveiaVdSt99onL m61QHuTB6u3BgqQ4kkwoTqyR6bn40De0EaXNoTKszctZ0NmU1QBoe62 X-Developer-Key: i=konrad.dybcio@oss.qualcomm.com; a=ed25519; pk=iclgkYvtl2w05SSXO5EjjSYlhFKsJ+5OSZBjOkQuEms= From: Konrad Dybcio 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 --- 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. =20 -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) +=3D gpucc-milos.o obj-$(CONFIG_SM_LPASSCC_6115) +=3D lpasscc-sm6115.o obj-$(CONFIG_SM_TCSRCC_8550) +=3D tcsrcc-sm8550.o obj-$(CONFIG_SM_TCSRCC_8650) +=3D tcsrcc-sm8650.o -obj-$(CONFIG_SM_TCSRCC_8750) +=3D tcsrcc-sm8750.o obj-$(CONFIG_SM_VIDEOCC_6350) +=3D videocc-sm6350.o obj-$(CONFIG_SM_VIDEOCC_7150) +=3D videocc-sm7150.o obj-$(CONFIG_SM_VIDEOCC_8150) +=3D videocc-sm8150.o diff --git a/drivers/clk/qcom/tcsrcc-sm8750.c b/drivers/clk/qcom/tcsrcc-sm8= 750.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 reserve= d. - */ - -#include -#include -#include -#include -#include - -#include - -#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 =3D { - .halt_reg =3D 0x0, - .halt_check =3D BRANCH_HALT_DELAY, - .clkr =3D { - .enable_reg =3D 0x0, - .enable_mask =3D BIT(0), - .hw.init =3D &(const struct clk_init_data) { - .name =3D "tcsr_pcie_0_clkref_en", - .ops =3D &clk_branch2_ops, - }, - }, -}; - -static struct clk_branch tcsr_ufs_clkref_en =3D { - .halt_reg =3D 0x1000, - .halt_check =3D BRANCH_HALT_DELAY, - .clkr =3D { - .enable_reg =3D 0x1000, - .enable_mask =3D BIT(0), - .hw.init =3D &(const struct clk_init_data) { - .name =3D "tcsr_ufs_clkref_en", - .parent_data =3D &(const struct clk_parent_data){ - .index =3D DT_BI_TCXO_PAD, - }, - .num_parents =3D 1, - .ops =3D &clk_branch2_ops, - }, - }, -}; - -static struct clk_branch tcsr_usb2_clkref_en =3D { - .halt_reg =3D 0x2000, - .halt_check =3D BRANCH_HALT_DELAY, - .clkr =3D { - .enable_reg =3D 0x2000, - .enable_mask =3D BIT(0), - .hw.init =3D &(const struct clk_init_data) { - .name =3D "tcsr_usb2_clkref_en", - .parent_data =3D &(const struct clk_parent_data){ - .index =3D DT_BI_TCXO_PAD, - }, - .num_parents =3D 1, - .ops =3D &clk_branch2_ops, - }, - }, -}; - -static struct clk_branch tcsr_usb3_clkref_en =3D { - .halt_reg =3D 0x3000, - .halt_check =3D BRANCH_HALT_DELAY, - .clkr =3D { - .enable_reg =3D 0x3000, - .enable_mask =3D BIT(0), - .hw.init =3D &(const struct clk_init_data) { - .name =3D "tcsr_usb3_clkref_en", - .parent_data =3D &(const struct clk_parent_data){ - .index =3D DT_BI_TCXO_PAD, - }, - .num_parents =3D 1, - .ops =3D &clk_branch2_ops, - }, - }, -}; - -static struct clk_regmap *tcsr_cc_sm8750_clocks[] =3D { - [TCSR_PCIE_0_CLKREF_EN] =3D &tcsr_pcie_0_clkref_en.clkr, - [TCSR_UFS_CLKREF_EN] =3D &tcsr_ufs_clkref_en.clkr, - [TCSR_USB2_CLKREF_EN] =3D &tcsr_usb2_clkref_en.clkr, - [TCSR_USB3_CLKREF_EN] =3D &tcsr_usb3_clkref_en.clkr, -}; - -static const struct regmap_config tcsr_cc_sm8750_regmap_config =3D { - .reg_bits =3D 32, - .reg_stride =3D 4, - .val_bits =3D 32, - .max_register =3D 0x3000, - .fast_io =3D true, -}; - -static const struct qcom_cc_desc tcsr_cc_sm8750_desc =3D { - .config =3D &tcsr_cc_sm8750_regmap_config, - .clks =3D tcsr_cc_sm8750_clocks, - .num_clks =3D ARRAY_SIZE(tcsr_cc_sm8750_clocks), -}; - -static const struct of_device_id tcsr_cc_sm8750_match_table[] =3D { - { .compatible =3D "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 =3D { - .probe =3D tcsr_cc_sm8750_probe, - .driver =3D { - .name =3D "tcsr_cc-sm8750", - .of_match_table =3D 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"); --=20 2.52.0