Devicetree
 help / color / mirror / Atom feed
* [PATCH v4 0/5] Fix traceNoC probe issue on multiple QCOM platforms
@ 2026-07-01  1:53 Jie Gan
  2026-07-01  1:53 ` [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible Jie Gan
                   ` (4 more replies)
  0 siblings, 5 replies; 19+ messages in thread
From: Jie Gan @ 2026-07-01  1:53 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Jie Gan, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin
  Cc: Konrad Dybcio, linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

The CoreSight TNOC (Trace Network-On-Chip) binding so far only allowed the
two-string AMBA form "qcom,coresight-tnoc", "arm,primecell". That form
forces the device onto the AMBA bus, where the driver must read the
peripheral ID from the device registers during probe. On several QCOM
platforms this AMBA peripheral-ID probing fails, so the traceNoC device
never probes and its trace path is unavailable.

This series introduces a standalone "qcom,coresight-agtnoc" compatible
that describes the Aggregator TNOC as a plain platform device. Without
"arm,primecell" the device is created on the platform bus and probes
through the platform driver, bypassing the AMBA peripheral-ID read while
remaining a fully functional Aggregator TNOC that allocates a system
trace ID (ATID).

The series is organized as: binding first, then the driver support for the
new compatible, followed by the per-platform DT fixes that switch the
affected nodes over to it.

- Patch 1 (dt-bindings) converts the compatible to a oneOf and adds the
standalone qcom,coresight-agtnoc form alongside the existing AMBA form,
updates the select block, and adds an example node.
- Patch 2 (driver) adds qcom,coresight-agtnoc to the platform driver's
match table and renames the itnoc-specific names to generic tnoc names,
since the platform driver now serves both the Interconnect and Aggregator
TNOC. It also restricts the ATID-unsupported handling to
qcom,coresight-itnoc only, so the standalone Aggregator TNOC is no longer
wrongly covered and correctly allocates a trace ID.
- Patches 3-4 (kaanapali, sm8750) switch the traceNoC nodes from the AMBA
form to the standalone qcom,coresight-agtnoc compatible, fixing the probe
failure on those platforms.
- Patch 5 (glymur) switches the node from qcom,coresight-itnoc to
qcom,coresight-agtnoc. This node is actually an Aggregator TNOC (its
tn_ag_* endpoints show aggregation), so it should expose a system trace
ID rather than being treated as an Interconnect TNOC.

Signed-off-by: Jie Gan <jie.gan@oss.qualcomm.com>
---
Changes in v4:
- rewrite the commit message for the patch 3 - patch 5.
- free the allocated ATID in remove path.
- Link to v3: https://lore.kernel.org/r/20260630-fix-tracenoc-probe-issue-v3-0-7201e1841e94@oss.qualcomm.com

Changes in v3:
- add standalone compatible for AG traceNoC device, allow it to be
  probed with platform driver.
- add fix patches for sm8750 and Glymur platforms
- Link to v2: https://lore.kernel.org/r/20260624-fix-tracenoc-probe-issue-v2-0-786520f62f21@oss.qualcomm.com

Changes in v2:
- address the ATID issue reported by Sashiko.
- update binding to accept arm,primecell-periphid property.
- Link to v1: https://lore.kernel.org/r/20260624-fix-tracenoc-probe-issue-v1-1-bcc785198fc5@oss.qualcomm.com

---
Jie Gan (5):
      dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
      coresight: tnoc: add AG tnoc standalone compatible to the platform driver
      arm64: dts: qcom: kaanapali: fix traceNoC probe issue
      arm64: dts: qcom: sm8750: fix traceNoC probe issue
      arm64: dts: qcom: glymur: use Aggregator TNOC compatible

 .../bindings/arm/qcom,coresight-tnoc.yaml          | 39 ++++++++++++++++++++--
 arch/arm64/boot/dts/qcom/glymur.dtsi               |  6 ++--
 arch/arm64/boot/dts/qcom/kaanapali.dtsi            |  2 +-
 arch/arm64/boot/dts/qcom/sm8750.dtsi               |  2 +-
 drivers/hwtracing/coresight/coresight-tnoc.c       | 37 ++++++++++----------
 5 files changed, 61 insertions(+), 25 deletions(-)
---
base-commit: 4e5dfb7c84012007c3c7061126491bbc92d71bf1
change-id: 20260624-fix-tracenoc-probe-issue-c6429da28df4

Best regards,
-- 
Jie Gan <jie.gan@oss.qualcomm.com>


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01  1:53 [PATCH v4 0/5] Fix traceNoC probe issue on multiple QCOM platforms Jie Gan
@ 2026-07-01  1:53 ` Jie Gan
  2026-07-01  6:57   ` Krzysztof Kozlowski
  2026-07-01  1:53 ` [PATCH v4 2/5] coresight: tnoc: add AG tnoc standalone compatible to the platform driver Jie Gan
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 19+ messages in thread
From: Jie Gan @ 2026-07-01  1:53 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Jie Gan, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin
  Cc: Konrad Dybcio, linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

The TNOC compatible previously only allowed the two-string AMBA form
"qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
AMBA bus.

Convert the compatible to a oneOf and add a standalone
"qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
standalone string carries no "arm,primecell" entry, so the device is
created on the platform bus instead of the AMBA bus.

Add "qcom,coresight-agtnoc" to the select block so the schema matches
nodes that use only the standalone compatible, and add an example node
demonstrating the standalone form.

Signed-off-by: Jie Gan <jie.gan@oss.qualcomm.com>
---
 .../bindings/arm/qcom,coresight-tnoc.yaml          | 39 ++++++++++++++++++++--
 1 file changed, 36 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/arm/qcom,coresight-tnoc.yaml b/Documentation/devicetree/bindings/arm/qcom,coresight-tnoc.yaml
index ef648a15b806..7e6e4b17a6c1 100644
--- a/Documentation/devicetree/bindings/arm/qcom,coresight-tnoc.yaml
+++ b/Documentation/devicetree/bindings/arm/qcom,coresight-tnoc.yaml
@@ -29,6 +29,7 @@ select:
       contains:
         enum:
           - qcom,coresight-tnoc
+          - qcom,coresight-agtnoc
   required:
     - compatible
 
@@ -37,9 +38,11 @@ properties:
     pattern: "^tn(@[0-9a-f]+)$"
 
   compatible:
-    items:
-      - const: qcom,coresight-tnoc
-      - const: arm,primecell
+    oneOf:
+      - items:
+          - const: qcom,coresight-tnoc
+          - const: arm,primecell
+      - const: qcom,coresight-agtnoc
 
   reg:
     maxItems: 1
@@ -110,4 +113,34 @@ examples:
         };
       };
     };
+
+  - |
+    tn@10980000  {
+      compatible = "qcom,coresight-agtnoc";
+      reg = <0x10980000 0x4200>;
+
+      clocks = <&aoss_qmp>;
+      clock-names = "apb_pclk";
+
+      in-ports {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        port@0 {
+          reg = <0>;
+
+          tn_ag_in_tpdm_mss: endpoint {
+            remote-endpoint = <&tpdm_mss_out_tn_ag>;
+          };
+        };
+      };
+
+      out-ports {
+        port {
+          tn_ag_out_funnel_in2: endpoint {
+            remote-endpoint = <&funnel_in2_in_tn_ag>;
+          };
+        };
+      };
+    };
 ...

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v4 2/5] coresight: tnoc: add AG tnoc standalone compatible to the platform driver
  2026-07-01  1:53 [PATCH v4 0/5] Fix traceNoC probe issue on multiple QCOM platforms Jie Gan
  2026-07-01  1:53 ` [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible Jie Gan
@ 2026-07-01  1:53 ` Jie Gan
  2026-07-01  2:08   ` sashiko-bot
  2026-07-01  6:58   ` Krzysztof Kozlowski
  2026-07-01  1:53 ` [PATCH v4 3/5] arm64: dts: qcom: kaanapali: fix traceNoC probe issue Jie Gan
                   ` (2 subsequent siblings)
  4 siblings, 2 replies; 19+ messages in thread
From: Jie Gan @ 2026-07-01  1:53 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Jie Gan, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin
  Cc: Konrad Dybcio, linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

The Aggregator TNOC can be described either as an AMBA device using the
"qcom,coresight-tnoc", "arm,primecell" compatible or as a standalone
platform device using the new "qcom,coresight-agtnoc" compatible. The
latter avoids the AMBA bus and the associated peripheral-ID probing.

Add "qcom,coresight-agtnoc" to the platform driver's match table so the
Aggregator TNOC can probe through the platform driver, and rename the
platform driver and its callbacks from the "itnoc"-specific names to
generic "tnoc" names, since the driver now serves both the Interconnect
and Aggregator TNOC. The platform driver name is updated to
"coresight-tnoc" accordingly.

Restrict the ATID-unsupported handling to the Interconnect TNOC. The
previous check disabled ATID for every non-AMBA device, which would
wrongly cover the standalone Aggregator TNOC. Only "qcom,coresight-itnoc"
lacks aggregation and ATID functionality, so key the check on that
compatible and let every other form allocate a trace ID.

Signed-off-by: Jie Gan <jie.gan@oss.qualcomm.com>
---
 drivers/hwtracing/coresight/coresight-tnoc.c | 37 +++++++++++++++-------------
 1 file changed, 20 insertions(+), 17 deletions(-)

diff --git a/drivers/hwtracing/coresight/coresight-tnoc.c b/drivers/hwtracing/coresight/coresight-tnoc.c
index 9e8de4323d28..4ccd5f38b92a 100644
--- a/drivers/hwtracing/coresight/coresight-tnoc.c
+++ b/drivers/hwtracing/coresight/coresight-tnoc.c
@@ -130,7 +130,7 @@ static int trace_noc_init_default_data(struct trace_noc_drvdata *drvdata)
 {
 	int atid;
 
-	if (!dev_is_amba(drvdata->dev)) {
+	if (of_device_is_compatible(drvdata->dev->of_node, "qcom,coresight-itnoc")) {
 		drvdata->atid = -EOPNOTSUPP;
 		return 0;
 	}
@@ -278,7 +278,7 @@ static struct amba_driver trace_noc_driver = {
 	.id_table	= trace_noc_ids,
 };
 
-static int itnoc_probe(struct platform_device *pdev)
+static int tnoc_platform_probe(struct platform_device *pdev)
 {
 	struct resource *res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	int ret;
@@ -295,16 +295,18 @@ static int itnoc_probe(struct platform_device *pdev)
 	return ret;
 }
 
-static void itnoc_remove(struct platform_device *pdev)
+static void tnoc_platform_remove(struct platform_device *pdev)
 {
 	struct trace_noc_drvdata *drvdata = platform_get_drvdata(pdev);
 
 	coresight_unregister(drvdata->csdev);
 	pm_runtime_disable(&pdev->dev);
+	if (drvdata->atid > 0)
+		coresight_trace_id_put_system_id(drvdata->atid);
 }
 
 #ifdef CONFIG_PM
-static int itnoc_runtime_suspend(struct device *dev)
+static int tnoc_runtime_suspend(struct device *dev)
 {
 	struct trace_noc_drvdata *drvdata = dev_get_drvdata(dev);
 
@@ -313,7 +315,7 @@ static int itnoc_runtime_suspend(struct device *dev)
 	return 0;
 }
 
-static int itnoc_runtime_resume(struct device *dev)
+static int tnoc_runtime_resume(struct device *dev)
 {
 	struct trace_noc_drvdata *drvdata = dev_get_drvdata(dev);
 
@@ -321,35 +323,36 @@ static int itnoc_runtime_resume(struct device *dev)
 }
 #endif
 
-static const struct dev_pm_ops itnoc_dev_pm_ops = {
-	SET_RUNTIME_PM_OPS(itnoc_runtime_suspend, itnoc_runtime_resume, NULL)
+static const struct dev_pm_ops tnoc_dev_pm_ops = {
+	SET_RUNTIME_PM_OPS(tnoc_runtime_suspend, tnoc_runtime_resume, NULL)
 };
 
-static const struct of_device_id itnoc_of_match[] = {
+static const struct of_device_id tnoc_of_match[] = {
 	{ .compatible = "qcom,coresight-itnoc" },
+	{ .compatible = "qcom,coresight-agtnoc" },
 	{}
 };
-MODULE_DEVICE_TABLE(of, itnoc_of_match);
+MODULE_DEVICE_TABLE(of, tnoc_of_match);
 
-static struct platform_driver itnoc_driver = {
-	.probe = itnoc_probe,
-	.remove = itnoc_remove,
+static struct platform_driver tnoc_platform_driver = {
+	.probe = tnoc_platform_probe,
+	.remove = tnoc_platform_remove,
 	.driver = {
-		.name = "coresight-itnoc",
-		.of_match_table = itnoc_of_match,
+		.name = "coresight-tnoc",
+		.of_match_table = tnoc_of_match,
 		.suppress_bind_attrs = true,
-		.pm = &itnoc_dev_pm_ops,
+		.pm = &tnoc_dev_pm_ops,
 	},
 };
 
 static int __init tnoc_init(void)
 {
-	return coresight_init_driver("tnoc", &trace_noc_driver, &itnoc_driver);
+	return coresight_init_driver("tnoc", &trace_noc_driver, &tnoc_platform_driver);
 }
 
 static void __exit tnoc_exit(void)
 {
-	coresight_remove_driver(&trace_noc_driver, &itnoc_driver);
+	coresight_remove_driver(&trace_noc_driver, &tnoc_platform_driver);
 }
 module_init(tnoc_init);
 module_exit(tnoc_exit);

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v4 3/5] arm64: dts: qcom: kaanapali: fix traceNoC probe issue
  2026-07-01  1:53 [PATCH v4 0/5] Fix traceNoC probe issue on multiple QCOM platforms Jie Gan
  2026-07-01  1:53 ` [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible Jie Gan
  2026-07-01  1:53 ` [PATCH v4 2/5] coresight: tnoc: add AG tnoc standalone compatible to the platform driver Jie Gan
@ 2026-07-01  1:53 ` Jie Gan
  2026-07-01  2:07   ` sashiko-bot
  2026-07-01  1:53 ` [PATCH v4 4/5] arm64: dts: qcom: sm8750: " Jie Gan
  2026-07-01  1:53 ` [PATCH v4 5/5] arm64: dts: qcom: glymur: use Aggregator TNOC compatible Jie Gan
  4 siblings, 1 reply; 19+ messages in thread
From: Jie Gan @ 2026-07-01  1:53 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Jie Gan, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin
  Cc: Konrad Dybcio, linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

The traceNoC node used the "qcom,coresight-tnoc", "arm,primecell"
compatible, which places the device on the AMBA bus. To bind an AMBA
device, the bus first reads the peripheral and component ID registers
(PID/CID) at the top of the device's register block and matches them
against the primecell ID. On this platform the traceNoC does not expose
a valid CID in that register, so the read never yields the expected
primecell value, the AMBA match fails, and the device is left stuck in
deferred probe indefinitely.

The Aggregator TNOC is fully described by the "qcom,coresight-agtnoc"
compatible, which binds via the platform driver by compatible string and
does not rely on reading the primecell ID register at all. Switch the
node to that standalone compatible so the device probes on hardware that
does not expose a readable CID, while remaining an Aggregator TNOC that
retains ATID functionality.

Fixes: f73959d86c15 ("arm64: dts: qcom: kaanapali: add coresight nodes")
Signed-off-by: Jie Gan <jie.gan@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/kaanapali.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/qcom/kaanapali.dtsi b/arch/arm64/boot/dts/qcom/kaanapali.dtsi
index 7aa9653bd456..e98f4aa4b141 100644
--- a/arch/arm64/boot/dts/qcom/kaanapali.dtsi
+++ b/arch/arm64/boot/dts/qcom/kaanapali.dtsi
@@ -5004,7 +5004,7 @@ tpdm_pcie_rscc_out: endpoint {
 		};
 
 		tn@111b8000 {
-			compatible = "qcom,coresight-tnoc", "arm,primecell";
+			compatible = "qcom,coresight-agtnoc";
 			reg = <0x0 0x111b8000 0x0 0x4200>;
 
 			clocks = <&aoss_qmp>;

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v4 4/5] arm64: dts: qcom: sm8750: fix traceNoC probe issue
  2026-07-01  1:53 [PATCH v4 0/5] Fix traceNoC probe issue on multiple QCOM platforms Jie Gan
                   ` (2 preceding siblings ...)
  2026-07-01  1:53 ` [PATCH v4 3/5] arm64: dts: qcom: kaanapali: fix traceNoC probe issue Jie Gan
@ 2026-07-01  1:53 ` Jie Gan
  2026-07-01  2:06   ` sashiko-bot
  2026-07-01  1:53 ` [PATCH v4 5/5] arm64: dts: qcom: glymur: use Aggregator TNOC compatible Jie Gan
  4 siblings, 1 reply; 19+ messages in thread
From: Jie Gan @ 2026-07-01  1:53 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Jie Gan, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin
  Cc: Konrad Dybcio, linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

The traceNoC node used the "qcom,coresight-tnoc", "arm,primecell"
compatible, which places the device on the AMBA bus. To bind an AMBA
device, the bus first reads the peripheral and component ID registers
(PID/CID) at the top of the device's register block and matches them
against the primecell ID. On this platform the traceNoC does not expose
a valid CID in that register, so the read never yields the expected
primecell value, the AMBA match fails, and the device is left stuck in
deferred probe indefinitely.

The Aggregator TNOC is fully described by the "qcom,coresight-agtnoc"
compatible, which binds via the platform driver by compatible string and
does not rely on reading the primecell ID register at all. Switch the
node to that standalone compatible so the device probes on hardware that
does not expose a readable CID, while remaining an Aggregator TNOC that
retains ATID functionality.

Fixes: ebd1eb365cae ("arm64: qcom: dts: sm8750: add coresight nodes")
Signed-off-by: Jie Gan <jie.gan@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/sm8750.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/qcom/sm8750.dtsi b/arch/arm64/boot/dts/qcom/sm8750.dtsi
index fafed417c66f..d58483f9f93a 100644
--- a/arch/arm64/boot/dts/qcom/sm8750.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8750.dtsi
@@ -4687,7 +4687,7 @@ tpdm_rdpm_cmb2_out: endpoint {
 		};
 
 		tn@109ab000 {
-			compatible = "qcom,coresight-tnoc", "arm,primecell";
+			compatible = "qcom,coresight-agtnoc";
 			reg = <0x0 0x109ab000 0x0 0x4200>;
 
 			clocks = <&aoss_qmp>;

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH v4 5/5] arm64: dts: qcom: glymur: use Aggregator TNOC compatible
  2026-07-01  1:53 [PATCH v4 0/5] Fix traceNoC probe issue on multiple QCOM platforms Jie Gan
                   ` (3 preceding siblings ...)
  2026-07-01  1:53 ` [PATCH v4 4/5] arm64: dts: qcom: sm8750: " Jie Gan
@ 2026-07-01  1:53 ` Jie Gan
  4 siblings, 0 replies; 19+ messages in thread
From: Jie Gan @ 2026-07-01  1:53 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Jie Gan, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin
  Cc: Konrad Dybcio, linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

The traceNoC node is the system-level Aggregator TNOC, so it must own a
valid ATID that tags the whole aggregation path. It is marked compatible
with "qcom,coresight-itnoc", an Interconnect TNOC, which is never
assigned an ATID. As a result the aggregator has no trace ID and cannot
tag the merged trace.

An Interconnect TNOC is a subsystem-level aggregator: it merges trace
from the ATB sources within its subsystem (TPDMs and other ATB masters)
and forwards the combined stream to the system-level Aggregator TNOC. It
carries no ATID of its own, because the Aggregator TNOC downstream in the
path already owns the ATID.

Switch the node to "qcom,coresight-agtnoc" so it is described as the
Aggregator TNOC it is and is assigned a system trace ID. Rename the node
to "tn" and use the "apb_pclk" clock name as required by the Aggregator
TNOC binding.

Fixes: 1f7d0c42a08d ("arm64: dts: qcom: glymur: add coresight nodes")
Signed-off-by: Jie Gan <jie.gan@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/glymur.dtsi | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/glymur.dtsi b/arch/arm64/boot/dts/qcom/glymur.dtsi
index 20b49af7298e..d612e8ed54c8 100644
--- a/arch/arm64/boot/dts/qcom/glymur.dtsi
+++ b/arch/arm64/boot/dts/qcom/glymur.dtsi
@@ -6038,12 +6038,12 @@ qm_tpdm_out: endpoint {
 			};
 		};
 
-		itnoc@11200000  {
-			compatible = "qcom,coresight-itnoc";
+		tn@11200000 {
+			compatible = "qcom,coresight-agtnoc";
 			reg = <0x0 0x11200000 0x0 0x3c00>;
 
 			clocks = <&aoss_qmp>;
-			clock-names = "apb";
+			clock-names = "apb_pclk";
 
 			in-ports {
 				#address-cells = <1>;

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 4/5] arm64: dts: qcom: sm8750: fix traceNoC probe issue
  2026-07-01  1:53 ` [PATCH v4 4/5] arm64: dts: qcom: sm8750: " Jie Gan
@ 2026-07-01  2:06   ` sashiko-bot
  0 siblings, 0 replies; 19+ messages in thread
From: sashiko-bot @ 2026-07-01  2:06 UTC (permalink / raw)
  To: Jie Gan; +Cc: devicetree, robh, conor+dt

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:

Pre-existing issues:
- [High] Switching the traceNoC device from an AMBA binding to a platform binding exposes a pre-existing double-disable bug for the `apb_pclk` clock during driver unbind if the device is runtime-suspended.
--

commit c18b0cbf674e991c292d9a2d479c037f1c2eafdf
Author: Jie Gan <jie.gan@oss.qualcomm.com>

arm64: dts: qcom: sm8750: fix traceNoC probe issue

This commit changes the traceNoC device binding from an AMBA compatible
string to a standalone platform compatible string. This allows the device
to probe successfully on hardware that does not expose a readable primecell
ID register.

> diff --git a/arch/arm64/boot/dts/qcom/sm8750.dtsi b/arch/arm64/boot/dts/qcom/sm8750.dtsi
> index fafed417c66fc..d58483f9f93a3 100644
> --- a/arch/arm64/boot/dts/qcom/sm8750.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sm8750.dtsi
> @@ -4687,7 +4687,7 @@ tpdm_rdpm_cmb2_out: endpoint {
>  		};
>  
>  		tn@109ab000 {
> -			compatible = "qcom,coresight-tnoc", "arm,primecell";
> +			compatible = "qcom,coresight-agtnoc";

[Severity: High]
This is a pre-existing issue, but does switching this device to a platform
binding expose a double-disable bug for the apb_pclk clock during driver
unbind if the device is runtime-suspended?

When binding as a non-AMBA device, the clock is acquired and enabled via a
devm-managed API which registers a devres action to disable it on unbind:

drivers/hwtracing/coresight/coresight-core.c:coresight_get_enable_clocks() {
    ...
    *pclk = devm_clk_get_optional_enabled(dev, "apb_pclk");
    ...
}

If the device is unbound while idle, the driver core will suspend it before
removal. The runtime PM suspend callback disables the clock:

drivers/hwtracing/coresight/coresight-tnoc.c:tnoc_runtime_suspend() {
    ...
    clk_disable_unprepare(drvdata->pclk);
    ...
}

However, the remove callback doesn't call pm_runtime_get_sync() to resume the
device before disabling runtime PM:

drivers/hwtracing/coresight/coresight-tnoc.c:tnoc_platform_remove() {
    ...
    coresight_unregister(drvdata->csdev);
    pm_runtime_disable(&pdev->dev);
    ...
}

This leaves the clock disabled by runtime PM. When the devres cleanup action
for devm_clk_get_optional_enabled() runs, it unconditionally executes
clk_disable_unprepare() again.

Could this underflow the enable_count and turn off the clock while other
devices sharing the apb_pclk are still using it?

>  			reg = <0x0 0x109ab000 0x0 0x4200>;
>  
>  			clocks = <&aoss_qmp>;

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260701-fix-tracenoc-probe-issue-v4-0-aefab449a470@oss.qualcomm.com?part=4

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 3/5] arm64: dts: qcom: kaanapali: fix traceNoC probe issue
  2026-07-01  1:53 ` [PATCH v4 3/5] arm64: dts: qcom: kaanapali: fix traceNoC probe issue Jie Gan
@ 2026-07-01  2:07   ` sashiko-bot
  0 siblings, 0 replies; 19+ messages in thread
From: sashiko-bot @ 2026-07-01  2:07 UTC (permalink / raw)
  To: Jie Gan; +Cc: conor+dt, devicetree, robh

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:

Pre-existing issues:
- [High] Switching the Trace NOC from an AMBA device to a platform device exposes a double clock disable bug during driver unbind due to mixing devm-managed clocks with manual PM runtime callbacks.
--

commit dec424aa5c224444a6c7946ea25210a9094f968f
Author: Jie Gan <jie.gan@oss.qualcomm.com>

arm64: dts: qcom: kaanapali: fix traceNoC probe issue

This commit switches the traceNoC node from an AMBA device to a platform
device to fix an issue where the device is stuck in deferred probe due to
missing CID registers.

> diff --git a/arch/arm64/boot/dts/qcom/kaanapali.dtsi b/arch/arm64/boot/dts/qcom/kaanapali.dtsi
> --- a/arch/arm64/boot/dts/qcom/kaanapali.dtsi
> +++ b/arch/arm64/boot/dts/qcom/kaanapali.dtsi
[ ... ]
> @@ -5004,7 +5004,7 @@ tpdm_pcie_rscc_out: endpoint {
>  		};
>  
>  		tn@111b8000 {
> -			compatible = "qcom,coresight-tnoc", "arm,primecell";
> +			compatible = "qcom,coresight-agtnoc";

[Severity: High]
This isn't a bug introduced by this patch, but does migrating this node to
the platform driver expose a double clock disable issue during unbind?

When the driver binds via the platform device, if a user unbinds the driver
via sysfs while the device is runtime suspended, it seems to trigger an
unbalanced clk_disable_unprepare() call.

Looking at tnoc_platform_remove() in drivers/hwtracing/coresight/coresight-tnoc.c:

static void tnoc_platform_remove(struct platform_device *pdev)
{
	struct trace_noc_drvdata *drvdata = platform_get_drvdata(pdev);

	coresight_unregister(drvdata->csdev);
	pm_runtime_disable(&pdev->dev);
	if (drvdata->atid > 0)
		coresight_trace_id_put_system_id(drvdata->atid);
}

Since tnoc_platform_remove() calls pm_runtime_disable() without first
waking the device (e.g. via pm_runtime_get_sync()), the device remains
suspended and its clock remains disabled by tnoc_runtime_suspend(). 
    
When the driver finishes unbinding, the devres framework executes the
cleanup action for devm_clk_get_optional_enabled(), which calls
clk_disable_unprepare() a second time.

Could this lead to a clock subsystem underflow?

>  			reg = <0x0 0x111b8000 0x0 0x4200>;
>  
>  			clocks = <&aoss_qmp>;

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260701-fix-tracenoc-probe-issue-v4-0-aefab449a470@oss.qualcomm.com?part=3

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 2/5] coresight: tnoc: add AG tnoc standalone compatible to the platform driver
  2026-07-01  1:53 ` [PATCH v4 2/5] coresight: tnoc: add AG tnoc standalone compatible to the platform driver Jie Gan
@ 2026-07-01  2:08   ` sashiko-bot
  2026-07-01  6:58   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 19+ messages in thread
From: sashiko-bot @ 2026-07-01  2:08 UTC (permalink / raw)
  To: Jie Gan; +Cc: robh, devicetree, conor+dt

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Unconditional freeing of a negative `atid` in `trace_noc_remove` triggers a WARN.
--

commit eff1528970750559f434d02a9ca2f7e317469aa7
Author: Jie Gan <jie.gan@oss.qualcomm.com>

coresight: tnoc: add AG tnoc standalone compatible to the platform driver

This commit allows the Aggregator TNOC to probe as a platform device by
adding the "qcom,coresight-agtnoc" compatible and updating driver
callbacks to use generic names. It also restricts the ATID-unsupported
handling to the Interconnect TNOC ("qcom,coresight-itnoc") rather than
all non-AMBA devices.

> diff --git a/drivers/hwtracing/coresight/coresight-tnoc.c b/drivers/hwtracing/coresight/coresight-tnoc.c
> index 9e8de4323d285..4ccd5f38b92a3 100644
> --- a/drivers/hwtracing/coresight/coresight-tnoc.c
> +++ b/drivers/hwtracing/coresight/coresight-tnoc.c
> @@ -130,7 +130,7 @@ static int trace_noc_init_default_data(struct trace_noc_drvdata *drvdata)
>  {
>  	int atid;
>  
> -	if (!dev_is_amba(drvdata->dev)) {
> +	if (of_device_is_compatible(drvdata->dev->of_node, "qcom,coresight-itnoc")) {
>  		drvdata->atid = -EOPNOTSUPP;
>  		return 0;
>  	}

[Severity: Medium]
If a malformed device tree uses compatible = "qcom,coresight-itnoc",
"arm,primecell"; the device will bind to the AMBA driver, and this new
check will assign drvdata->atid = -EOPNOTSUPP.

When the device unbinds, trace_noc_remove() will execute:

drivers/hwtracing/coresight/coresight-tnoc.c:trace_noc_remove() {
	...
	coresight_unregister(drvdata->csdev);
	coresight_trace_id_put_system_id(drvdata->atid);
}

Since trace_noc_remove() unconditionally passes drvdata->atid to
coresight_trace_id_put_system_id(), will this trigger a kernel WARN in
coresight_trace_id_free() due to the negative ID?

[ ... ]

> @@ -295,16 +295,18 @@ static int itnoc_probe(struct platform_device *pdev)
>  	return ret;
>  }
>  
> -static void itnoc_remove(struct platform_device *pdev)
> +static void tnoc_platform_remove(struct platform_device *pdev)
>  {
>  	struct trace_noc_drvdata *drvdata = platform_get_drvdata(pdev);
>  
>  	coresight_unregister(drvdata->csdev);
>  	pm_runtime_disable(&pdev->dev);
> +	if (drvdata->atid > 0)
> +		coresight_trace_id_put_system_id(drvdata->atid);
>  }

[Severity: Medium]
Would it make sense to update trace_noc_remove() to include the same
if (drvdata->atid > 0) defensive check that was correctly added here to
tnoc_platform_remove()?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260701-fix-tracenoc-probe-issue-v4-0-aefab449a470@oss.qualcomm.com?part=2

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01  1:53 ` [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible Jie Gan
@ 2026-07-01  6:57   ` Krzysztof Kozlowski
  2026-07-01  7:16     ` Jie Gan
  0 siblings, 1 reply; 19+ messages in thread
From: Krzysztof Kozlowski @ 2026-07-01  6:57 UTC (permalink / raw)
  To: Jie Gan
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, Konrad Dybcio,
	linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
> The TNOC compatible previously only allowed the two-string AMBA form
> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
> AMBA bus.
> 
> Convert the compatible to a oneOf and add a standalone
> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
> standalone string carries no "arm,primecell" entry, so the device is
> created on the platform bus instead of the AMBA bus.

That's a Linux driver specific reason, so not a valid one.

Describe the hardware instead.

Also, you do not get other compatible for the same device.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 2/5] coresight: tnoc: add AG tnoc standalone compatible to the platform driver
  2026-07-01  1:53 ` [PATCH v4 2/5] coresight: tnoc: add AG tnoc standalone compatible to the platform driver Jie Gan
  2026-07-01  2:08   ` sashiko-bot
@ 2026-07-01  6:58   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 19+ messages in thread
From: Krzysztof Kozlowski @ 2026-07-01  6:58 UTC (permalink / raw)
  To: Jie Gan
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, Konrad Dybcio,
	linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

On Wed, Jul 01, 2026 at 09:53:42AM +0800, Jie Gan wrote:
> The Aggregator TNOC can be described either as an AMBA device using the
> "qcom,coresight-tnoc", "arm,primecell" compatible or as a standalone
> platform device using the new "qcom,coresight-agtnoc" compatible. The
> latter avoids the AMBA bus and the associated peripheral-ID probing.

So here it is: you added a fake hardware description so the driver can
avoid some action.

No, instead fix the drivers. Hardware did not change, thus you should
not change the bindings.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01  6:57   ` Krzysztof Kozlowski
@ 2026-07-01  7:16     ` Jie Gan
  2026-07-01  7:26       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 19+ messages in thread
From: Jie Gan @ 2026-07-01  7:16 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, Konrad Dybcio,
	linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel



On 7/1/2026 2:57 PM, Krzysztof Kozlowski wrote:
> On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
>> The TNOC compatible previously only allowed the two-string AMBA form
>> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
>> AMBA bus.
>>
>> Convert the compatible to a oneOf and add a standalone
>> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
>> standalone string carries no "arm,primecell" entry, so the device is
>> created on the platform bus instead of the AMBA bus.
> 
> That's a Linux driver specific reason, so not a valid one.
> 
> Describe the hardware instead.
> 
> Also, you do not get other compatible for the same device.

The device is intended to be discovered and probed via the AMBA bus. 
However, due to a hardware issue, AMBA probing does not work correctly. 
While adding the arm,primecell-periphid property would allow the 
existing AMBA driver to bind, but I think that's a temp WA. As 
Suzuki/Leo pointed out, we should not add the property to pretend the 
device as an AMBA device.

Instead, I introduced a dedicated compatible string so the device can be 
handled by the existing platform driver without relying on the missing 
AMBA primecell identification. The purpose of the new compatible is to 
clearly distinguish this platform-specific case from the standard 
AMBA-based implementation. Or shall I re-use the existing compatible 
"qcom,coresight-tnoc" as platform standalone compatible?

We already have a similar pattern for the interconnect TraceNoC device, 
which uses the platform-specific compatible string qcom,coresight-itnoc.

Thanks,
Jie

> 
> Best regards,
> Krzysztof
> 


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01  7:16     ` Jie Gan
@ 2026-07-01  7:26       ` Krzysztof Kozlowski
  2026-07-01  7:31         ` Jie Gan
  0 siblings, 1 reply; 19+ messages in thread
From: Krzysztof Kozlowski @ 2026-07-01  7:26 UTC (permalink / raw)
  To: Jie Gan
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, Konrad Dybcio,
	linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel

On 01/07/2026 09:16, Jie Gan wrote:
> 
> 
> On 7/1/2026 2:57 PM, Krzysztof Kozlowski wrote:
>> On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
>>> The TNOC compatible previously only allowed the two-string AMBA form
>>> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
>>> AMBA bus.
>>>
>>> Convert the compatible to a oneOf and add a standalone
>>> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
>>> standalone string carries no "arm,primecell" entry, so the device is
>>> created on the platform bus instead of the AMBA bus.
>>
>> That's a Linux driver specific reason, so not a valid one.
>>
>> Describe the hardware instead.
>>
>> Also, you do not get other compatible for the same device.
> 
> The device is intended to be discovered and probed via the AMBA bus. 
> However, due to a hardware issue, AMBA probing does not work correctly. 
> While adding the arm,primecell-periphid property would allow the 

If this is not AMBA bus device, then drop primecell compatible.

> existing AMBA driver to bind, but I think that's a temp WA. As 
> Suzuki/Leo pointed out, we should not add the property to pretend the 
> device as an AMBA device.
> 
> Instead, I introduced a dedicated compatible string so the device can be 
> handled by the existing platform driver without relying on the missing 

As I said, that's a Linux driver specific reason, so not a valid one.

Fix your drivers if you insist on that.

> AMBA primecell identification. The purpose of the new compatible is to 
> clearly distinguish this platform-specific case from the standard 
> AMBA-based implementation. Or shall I re-use the existing compatible 
> "qcom,coresight-tnoc" as platform standalone compatible?
> 
> We already have a similar pattern for the interconnect TraceNoC device, 
> which uses the platform-specific compatible string qcom,coresight-itnoc.
I do not see there a fake, duplicated compatible for the same device.
Can you elaborate how is that relevant?

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01  7:26       ` Krzysztof Kozlowski
@ 2026-07-01  7:31         ` Jie Gan
  2026-07-01 11:02           ` Konrad Dybcio
  0 siblings, 1 reply; 19+ messages in thread
From: Jie Gan @ 2026-07-01  7:31 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, Konrad Dybcio,
	linux-arm-msm, devicetree, linux-kernel, coresight,
	linux-arm-kernel



On 7/1/2026 3:26 PM, Krzysztof Kozlowski wrote:
> On 01/07/2026 09:16, Jie Gan wrote:
>>
>>
>> On 7/1/2026 2:57 PM, Krzysztof Kozlowski wrote:
>>> On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
>>>> The TNOC compatible previously only allowed the two-string AMBA form
>>>> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
>>>> AMBA bus.
>>>>
>>>> Convert the compatible to a oneOf and add a standalone
>>>> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
>>>> standalone string carries no "arm,primecell" entry, so the device is
>>>> created on the platform bus instead of the AMBA bus.
>>>
>>> That's a Linux driver specific reason, so not a valid one.
>>>
>>> Describe the hardware instead.
>>>
>>> Also, you do not get other compatible for the same device.
>>
>> The device is intended to be discovered and probed via the AMBA bus.
>> However, due to a hardware issue, AMBA probing does not work correctly.
>> While adding the arm,primecell-periphid property would allow the
> 
> If this is not AMBA bus device, then drop primecell compatible.

Will drop the primecell compatible and update the description.

> 
>> existing AMBA driver to bind, but I think that's a temp WA. As
>> Suzuki/Leo pointed out, we should not add the property to pretend the
>> device as an AMBA device.
>>
>> Instead, I introduced a dedicated compatible string so the device can be
>> handled by the existing platform driver without relying on the missing
> 
> As I said, that's a Linux driver specific reason, so not a valid one.
> 
> Fix your drivers if you insist on that.
> 
>> AMBA primecell identification. The purpose of the new compatible is to
>> clearly distinguish this platform-specific case from the standard
>> AMBA-based implementation. Or shall I re-use the existing compatible
>> "qcom,coresight-tnoc" as platform standalone compatible?
>>
>> We already have a similar pattern for the interconnect TraceNoC device,
>> which uses the platform-specific compatible string qcom,coresight-itnoc.
> I do not see there a fake, duplicated compatible for the same device.
> Can you elaborate how is that relevant?

Will fix it by removing AMBA related description.

Shall I update the clock name from apb_pclk to apb as a platform device?

Thanks,
Jie

> 
> Best regards,
> Krzysztof


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01  7:31         ` Jie Gan
@ 2026-07-01 11:02           ` Konrad Dybcio
  2026-07-01 12:54             ` Jie Gan
  0 siblings, 1 reply; 19+ messages in thread
From: Konrad Dybcio @ 2026-07-01 11:02 UTC (permalink / raw)
  To: Jie Gan, Krzysztof Kozlowski
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, linux-arm-msm,
	devicetree, linux-kernel, coresight, linux-arm-kernel

On 7/1/26 9:31 AM, Jie Gan wrote:
> 
> 
> On 7/1/2026 3:26 PM, Krzysztof Kozlowski wrote:
>> On 01/07/2026 09:16, Jie Gan wrote:
>>>
>>>
>>> On 7/1/2026 2:57 PM, Krzysztof Kozlowski wrote:
>>>> On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
>>>>> The TNOC compatible previously only allowed the two-string AMBA form
>>>>> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
>>>>> AMBA bus.
>>>>>
>>>>> Convert the compatible to a oneOf and add a standalone
>>>>> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
>>>>> standalone string carries no "arm,primecell" entry, so the device is
>>>>> created on the platform bus instead of the AMBA bus.

[...]

>>> AMBA primecell identification. The purpose of the new compatible is to
>>> clearly distinguish this platform-specific case from the standard
>>> AMBA-based implementation. Or shall I re-use the existing compatible
>>> "qcom,coresight-tnoc" as platform standalone compatible?
>>>
>>> We already have a similar pattern for the interconnect TraceNoC device,
>>> which uses the platform-specific compatible string qcom,coresight-itnoc.
>> I do not see there a fake, duplicated compatible for the same device.
>> Can you elaborate how is that relevant?
> 
> Will fix it by removing AMBA related description.
> 
> Shall I update the clock name from apb_pclk to apb as a platform device?

Why?

Konrad

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01 11:02           ` Konrad Dybcio
@ 2026-07-01 12:54             ` Jie Gan
  2026-07-01 13:09               ` Konrad Dybcio
  0 siblings, 1 reply; 19+ messages in thread
From: Jie Gan @ 2026-07-01 12:54 UTC (permalink / raw)
  To: Konrad Dybcio, Krzysztof Kozlowski
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, linux-arm-msm,
	devicetree, linux-kernel, coresight, linux-arm-kernel



On 7/1/2026 7:02 PM, Konrad Dybcio wrote:
> On 7/1/26 9:31 AM, Jie Gan wrote:
>>
>>
>> On 7/1/2026 3:26 PM, Krzysztof Kozlowski wrote:
>>> On 01/07/2026 09:16, Jie Gan wrote:
>>>>
>>>>
>>>> On 7/1/2026 2:57 PM, Krzysztof Kozlowski wrote:
>>>>> On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
>>>>>> The TNOC compatible previously only allowed the two-string AMBA form
>>>>>> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
>>>>>> AMBA bus.
>>>>>>
>>>>>> Convert the compatible to a oneOf and add a standalone
>>>>>> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
>>>>>> standalone string carries no "arm,primecell" entry, so the device is
>>>>>> created on the platform bus instead of the AMBA bus.
> 
> [...]
> 
>>>> AMBA primecell identification. The purpose of the new compatible is to
>>>> clearly distinguish this platform-specific case from the standard
>>>> AMBA-based implementation. Or shall I re-use the existing compatible
>>>> "qcom,coresight-tnoc" as platform standalone compatible?
>>>>
>>>> We already have a similar pattern for the interconnect TraceNoC device,
>>>> which uses the platform-specific compatible string qcom,coresight-itnoc.
>>> I do not see there a fake, duplicated compatible for the same device.
>>> Can you elaborate how is that relevant?
>>
>> Will fix it by removing AMBA related description.
>>
>> Shall I update the clock name from apb_pclk to apb as a platform device?
> 
> Why?

For the previous platform devices, we got comments to add the clock-name 
with "apb" instead of "apb_pclk".

Please check the qcom,coresight-ctcu.yaml and qcom,coresight-itnoc.yaml

Thanks,
Jie

> 
> Konrad


^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01 12:54             ` Jie Gan
@ 2026-07-01 13:09               ` Konrad Dybcio
  2026-07-01 13:30                 ` Krzysztof Kozlowski
  0 siblings, 1 reply; 19+ messages in thread
From: Konrad Dybcio @ 2026-07-01 13:09 UTC (permalink / raw)
  To: Jie Gan, Krzysztof Kozlowski
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, linux-arm-msm,
	devicetree, linux-kernel, coresight, linux-arm-kernel

On 7/1/26 2:54 PM, Jie Gan wrote:
> 
> 
> On 7/1/2026 7:02 PM, Konrad Dybcio wrote:
>> On 7/1/26 9:31 AM, Jie Gan wrote:
>>>
>>>
>>> On 7/1/2026 3:26 PM, Krzysztof Kozlowski wrote:
>>>> On 01/07/2026 09:16, Jie Gan wrote:
>>>>>
>>>>>
>>>>> On 7/1/2026 2:57 PM, Krzysztof Kozlowski wrote:
>>>>>> On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
>>>>>>> The TNOC compatible previously only allowed the two-string AMBA form
>>>>>>> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
>>>>>>> AMBA bus.
>>>>>>>
>>>>>>> Convert the compatible to a oneOf and add a standalone
>>>>>>> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
>>>>>>> standalone string carries no "arm,primecell" entry, so the device is
>>>>>>> created on the platform bus instead of the AMBA bus.
>>
>> [...]
>>
>>>>> AMBA primecell identification. The purpose of the new compatible is to
>>>>> clearly distinguish this platform-specific case from the standard
>>>>> AMBA-based implementation. Or shall I re-use the existing compatible
>>>>> "qcom,coresight-tnoc" as platform standalone compatible?
>>>>>
>>>>> We already have a similar pattern for the interconnect TraceNoC device,
>>>>> which uses the platform-specific compatible string qcom,coresight-itnoc.
>>>> I do not see there a fake, duplicated compatible for the same device.
>>>> Can you elaborate how is that relevant?
>>>
>>> Will fix it by removing AMBA related description.
>>>
>>> Shall I update the clock name from apb_pclk to apb as a platform device?
>>
>> Why?
> 
> For the previous platform devices, we got comments to add the clock-name with "apb" instead of "apb_pclk".
> 
> Please check the qcom,coresight-ctcu.yaml and qcom,coresight-itnoc.yaml

Well, if you need to break the bindings already, might as well on
the grounds of choosing a saner ("clock names shouldn't include _clk")
name.. Not sure if Krzysztof will like it

Konrad

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01 13:09               ` Konrad Dybcio
@ 2026-07-01 13:30                 ` Krzysztof Kozlowski
  2026-07-02  0:51                   ` Jie Gan
  0 siblings, 1 reply; 19+ messages in thread
From: Krzysztof Kozlowski @ 2026-07-01 13:30 UTC (permalink / raw)
  To: Konrad Dybcio, Jie Gan
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, linux-arm-msm,
	devicetree, linux-kernel, coresight, linux-arm-kernel

On 01/07/2026 15:09, Konrad Dybcio wrote:
> On 7/1/26 2:54 PM, Jie Gan wrote:
>>
>>
>> On 7/1/2026 7:02 PM, Konrad Dybcio wrote:
>>> On 7/1/26 9:31 AM, Jie Gan wrote:
>>>>
>>>>
>>>> On 7/1/2026 3:26 PM, Krzysztof Kozlowski wrote:
>>>>> On 01/07/2026 09:16, Jie Gan wrote:
>>>>>>
>>>>>>
>>>>>> On 7/1/2026 2:57 PM, Krzysztof Kozlowski wrote:
>>>>>>> On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
>>>>>>>> The TNOC compatible previously only allowed the two-string AMBA form
>>>>>>>> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
>>>>>>>> AMBA bus.
>>>>>>>>
>>>>>>>> Convert the compatible to a oneOf and add a standalone
>>>>>>>> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
>>>>>>>> standalone string carries no "arm,primecell" entry, so the device is
>>>>>>>> created on the platform bus instead of the AMBA bus.
>>>
>>> [...]
>>>
>>>>>> AMBA primecell identification. The purpose of the new compatible is to
>>>>>> clearly distinguish this platform-specific case from the standard
>>>>>> AMBA-based implementation. Or shall I re-use the existing compatible
>>>>>> "qcom,coresight-tnoc" as platform standalone compatible?
>>>>>>
>>>>>> We already have a similar pattern for the interconnect TraceNoC device,
>>>>>> which uses the platform-specific compatible string qcom,coresight-itnoc.
>>>>> I do not see there a fake, duplicated compatible for the same device.
>>>>> Can you elaborate how is that relevant?
>>>>
>>>> Will fix it by removing AMBA related description.
>>>>
>>>> Shall I update the clock name from apb_pclk to apb as a platform device?
>>>
>>> Why?
>>
>> For the previous platform devices, we got comments to add the clock-name with "apb" instead of "apb_pclk".
>>
>> Please check the qcom,coresight-ctcu.yaml and qcom,coresight-itnoc.yaml
> 
> Well, if you need to break the bindings already, might as well on
> the grounds of choosing a saner ("clock names shouldn't include _clk")
> name.. Not sure if Krzysztof will like it

I miss the rationale for doing the change, why exactly this binding
should have clocks corrected.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible
  2026-07-01 13:30                 ` Krzysztof Kozlowski
@ 2026-07-02  0:51                   ` Jie Gan
  0 siblings, 0 replies; 19+ messages in thread
From: Jie Gan @ 2026-07-02  0:51 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Konrad Dybcio
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Tingwei Zhang, Jingyi Wang, Abel Vesa,
	Suzuki K Poulose, Mike Leach, James Clark, Leo Yan,
	Yuanfang Zhang, Abel Vesa, Alexander Shishkin, linux-arm-msm,
	devicetree, linux-kernel, coresight, linux-arm-kernel



On 7/1/2026 9:30 PM, Krzysztof Kozlowski wrote:
> On 01/07/2026 15:09, Konrad Dybcio wrote:
>> On 7/1/26 2:54 PM, Jie Gan wrote:
>>>
>>>
>>> On 7/1/2026 7:02 PM, Konrad Dybcio wrote:
>>>> On 7/1/26 9:31 AM, Jie Gan wrote:
>>>>>
>>>>>
>>>>> On 7/1/2026 3:26 PM, Krzysztof Kozlowski wrote:
>>>>>> On 01/07/2026 09:16, Jie Gan wrote:
>>>>>>>
>>>>>>>
>>>>>>> On 7/1/2026 2:57 PM, Krzysztof Kozlowski wrote:
>>>>>>>> On Wed, Jul 01, 2026 at 09:53:41AM +0800, Jie Gan wrote:
>>>>>>>>> The TNOC compatible previously only allowed the two-string AMBA form
>>>>>>>>> "qcom,coresight-tnoc", "arm,primecell", which forces the device onto the
>>>>>>>>> AMBA bus.
>>>>>>>>>
>>>>>>>>> Convert the compatible to a oneOf and add a standalone
>>>>>>>>> "qcom,coresight-agtnoc" compatible alongside the existing AMBA form. The
>>>>>>>>> standalone string carries no "arm,primecell" entry, so the device is
>>>>>>>>> created on the platform bus instead of the AMBA bus.
>>>>
>>>> [...]
>>>>
>>>>>>> AMBA primecell identification. The purpose of the new compatible is to
>>>>>>> clearly distinguish this platform-specific case from the standard
>>>>>>> AMBA-based implementation. Or shall I re-use the existing compatible
>>>>>>> "qcom,coresight-tnoc" as platform standalone compatible?
>>>>>>>
>>>>>>> We already have a similar pattern for the interconnect TraceNoC device,
>>>>>>> which uses the platform-specific compatible string qcom,coresight-itnoc.
>>>>>> I do not see there a fake, duplicated compatible for the same device.
>>>>>> Can you elaborate how is that relevant?
>>>>>
>>>>> Will fix it by removing AMBA related description.
>>>>>
>>>>> Shall I update the clock name from apb_pclk to apb as a platform device?
>>>>
>>>> Why?
>>>
>>> For the previous platform devices, we got comments to add the clock-name with "apb" instead of "apb_pclk".
>>>
>>> Please check the qcom,coresight-ctcu.yaml and qcom,coresight-itnoc.yaml
>>
>> Well, if you need to break the bindings already, might as well on
>> the grounds of choosing a saner ("clock names shouldn't include _clk")
>> name.. Not sure if Krzysztof will like it
> 
> I miss the rationale for doing the change, why exactly this binding
> should have clocks corrected.

Thanks for confirming.

Jie

> 
> Best regards,
> Krzysztof


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2026-07-02  0:51 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-01  1:53 [PATCH v4 0/5] Fix traceNoC probe issue on multiple QCOM platforms Jie Gan
2026-07-01  1:53 ` [PATCH v4 1/5] dt-bindings: arm: coresight-tnoc: Add standalone qcom,coresight-agtnoc compatible Jie Gan
2026-07-01  6:57   ` Krzysztof Kozlowski
2026-07-01  7:16     ` Jie Gan
2026-07-01  7:26       ` Krzysztof Kozlowski
2026-07-01  7:31         ` Jie Gan
2026-07-01 11:02           ` Konrad Dybcio
2026-07-01 12:54             ` Jie Gan
2026-07-01 13:09               ` Konrad Dybcio
2026-07-01 13:30                 ` Krzysztof Kozlowski
2026-07-02  0:51                   ` Jie Gan
2026-07-01  1:53 ` [PATCH v4 2/5] coresight: tnoc: add AG tnoc standalone compatible to the platform driver Jie Gan
2026-07-01  2:08   ` sashiko-bot
2026-07-01  6:58   ` Krzysztof Kozlowski
2026-07-01  1:53 ` [PATCH v4 3/5] arm64: dts: qcom: kaanapali: fix traceNoC probe issue Jie Gan
2026-07-01  2:07   ` sashiko-bot
2026-07-01  1:53 ` [PATCH v4 4/5] arm64: dts: qcom: sm8750: " Jie Gan
2026-07-01  2:06   ` sashiko-bot
2026-07-01  1:53 ` [PATCH v4 5/5] arm64: dts: qcom: glymur: use Aggregator TNOC compatible Jie Gan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox