Thread (27 messages) 27 messages, 5 authors, 2025-07-30

Re: [PATCH v3 02/10] clk: qcom: ipq5424: Enable NSS NoC clocks to use icc-clk

From: Luo Jie <quic_luoj@quicinc.com>
Date: 2025-07-18 09:21:29
Also in: linux-arm-kernel, linux-arm-msm, linux-clk, linux-devicetree, linux-pm, lkml


On 7/18/2025 4:40 AM, Konrad Dybcio wrote:
On 7/10/25 2:28 PM, Luo Jie wrote:
quoted
Add NSS NoC clocks using the icc-clk framework to create interconnect
paths. The network subsystem (NSS) can be connected to these NoCs.
Are there any other similar clocks that we should expect to pop up
in the future? We should most definitely have a single commit that
takes care of everything that'll be used going forward.

grep "\[.*NOC.*CLK\]" drivers/clk/qcom/gcc-ipq5424.c | wc -l

returns a number of them that aren't described as icc clocks, most
notably the GCC_CNOC_USB_CLK is consumed as a regular clock.
Thank you for the suggestion. I will update the patch to enable the
necessary additional NOC clocks and register them as ICC clocks, all
within a single commit.
quoted
Also update to use the expected icc_first_node_id for registering the
icc clocks.
This is a separate fix
OK, I’ll split this out into a separate patch/fix in the next version.
quoted
Signed-off-by: Luo Jie <quic_luoj@quicinc.com>
---
  drivers/clk/qcom/gcc-ipq5424.c | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/clk/qcom/gcc-ipq5424.c b/drivers/clk/qcom/gcc-ipq5424.c
index 3d42f3d85c7a..3a01cb277cac 100644
--- a/drivers/clk/qcom/gcc-ipq5424.c
+++ b/drivers/clk/qcom/gcc-ipq5424.c
@@ -1,7 +1,7 @@
  // SPDX-License-Identifier: GPL-2.0
  /*
   * Copyright (c) 2018,2020 The Linux Foundation. All rights reserved.
- * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
+ * Copyright (c) 2024-2025 Qualcomm Innovation Center, Inc. All rights reserved.
Please follow the latest recommendations for the copyright notices
OK, I will update in the next version, thanks for pointing out.
Konrad
quoted
   */
  
  #include <linux/clk-provider.h>
@@ -3250,6 +3250,9 @@ static const struct qcom_icc_hws_data icc_ipq5424_hws[] = {
  	{ MASTER_ANOC_PCIE3, SLAVE_ANOC_PCIE3, GCC_ANOC_PCIE3_2LANE_M_CLK },
  	{ MASTER_CNOC_PCIE3, SLAVE_CNOC_PCIE3, GCC_CNOC_PCIE3_2LANE_S_CLK },
  	{ MASTER_CNOC_USB, SLAVE_CNOC_USB, GCC_CNOC_USB_CLK },
+	{ MASTER_NSSNOC_NSSCC, SLAVE_NSSNOC_NSSCC, GCC_NSSNOC_NSSCC_CLK },
+	{ MASTER_NSSNOC_SNOC_0, SLAVE_NSSNOC_SNOC_0, GCC_NSSNOC_SNOC_CLK },
+	{ MASTER_NSSNOC_SNOC_1, SLAVE_NSSNOC_SNOC_1, GCC_NSSNOC_SNOC_1_CLK },
  };
  
  static const struct of_device_id gcc_ipq5424_match_table[] = {
@@ -3284,6 +3287,7 @@ static const struct qcom_cc_desc gcc_ipq5424_desc = {
  	.num_clk_hws = ARRAY_SIZE(gcc_ipq5424_hws),
  	.icc_hws = icc_ipq5424_hws,
  	.num_icc_hws = ARRAY_SIZE(icc_ipq5424_hws),
+	.icc_first_node_id = IPQ_APPS_ID,
  };
  
  static int gcc_ipq5424_probe(struct platform_device *pdev)
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help