Re: [PATCH v2 2/2] arm64: dts: qcom: kaanapali: fix traceNoC probe issue
From: Jie Gan
Date: Mon Jun 29 2026 - 21:04:17 EST
On 6/29/2026 10:28 PM, Leo Yan wrote:
On Mon, Jun 29, 2026 at 10:08:17AM +0800, Jie Gan wrote:
[...]
Can I fix the issue by adding "arm,primecell-periphid" property. That's
would be the best temp solution as it avoids breaking the original design of
both the TraceNoC AMBA driver and interconnect TraceNoC platform driver.
Before proceeding with the "arm,primecell-periphid" property, could you
clarify a bit:
- For an interconnect TraceNoC, what would be the consequence of
enabling ATID? Would it simply be a no-op, or are there any side
effects? Or is the concern that the trace IDs could be exhausted?
TPDM0(or ATB source) -> interconnect TraceNoC0 -> Aggregator TraceNoc -> sink
TPDM1(or ATB source) -> interconnect TraceNoC1 -> Aggregator TraceNoc -> sink
We only have one Aggregator TraceNoC and many interconnect TraceNoC devices for one platform. All interconnect TraceNoC devices are connected to Aggregator TraceNoC devices in the topology, so the itnoc doesnt need an ATID.
That's the design purpose from hardware perspective.
- How can you guarantee that a interconnect TraceNoC will never
require ATID in the future?
The interconnect TraceNoC is primarily introduced to reduce routing complexity in the hardware design. It is typically deployed as an intermediate TraceNoC that connects to an Aggregator TraceNoC (AG TraceNoC).
For example, a modem subsystem may contain many TPDM devices. Directly connecting every TPDM to the AG TraceNoC would result in significant wiring complexity. Instead, an itnoc is placed within the modem subsystem to locally aggregate the TPDM connections. All TPDMs first connect to the itnoc, and the itnoc then connects to the system-level AG TraceNoC.
From a hardware perspective, there is no fundamental difference between an itnoc and an AG TraceNoC. They use the same TraceNoC hardware implementation and share the same AMBA bus type. The distinction is purely functional: an itnoc is used for local trace aggregation within a subsystem, whereas an AG TraceNoC serves as the top-level aggregation point for the SoC.
Thanks,
Jie
The TraceNoC device here must be treated as an AMBA device and I am
continuing to investigate the issue with our hardware team.
We aim to fix it from hardware perspetive for existing platforms if possible
and ensure it is fixed in future platforms.
I'm concerned that all of use end up repeatedly fixing similar issues
whenever hardware configurations change or modules are reused in
different topologies.
For example, if future platforms may require ATID support for an
interconnect TraceNoC, then the issue will pop up again.
Thanks,
Leo