[PATCH v3 2/2] coresight: add coresight Trace Network On Chip driver

Yuanfang Zhang quic_yuanfang at quicinc.com
Wed May 7 22:37:57 PDT 2025



On 5/7/2025 7:59 PM, Suzuki K Poulose wrote:
> On 07/05/2025 09:52, Suzuki K Poulose wrote:
>> On 07/05/2025 05:26, Yuanfang Zhang wrote:
>>>
>>>
>>> On 5/6/2025 7:20 PM, Suzuki K Poulose wrote:
>>>> On 14/04/2025 10:16, Yuanfang Zhang wrote:
>>>>>
>>>>>
>>>>> On 4/11/2025 5:59 PM, Suzuki K Poulose wrote:
>>>>>> On 11/04/2025 09:57, Yuanfang Zhang wrote:
>>>>>>> Add a driver to support Coresight device Trace Network On Chip (TNOC),
>>>>>>> which is an integration hierarchy integrating functionalities of TPDA
>>>>>>> and funnels. It aggregates the trace and transports to coresight trace
>>>>>>> bus.
>>>>>>>
>>>>>>> Compared to current configuration, it has the following advantages:
>>>>>>> 1. Reduce wires between subsystems.
>>>>>>> 2. Continue cleaning the infrastructure.
>>>>>>> 3. Reduce Data overhead by transporting raw data from source to target.
>>>>>>>
>>>>>>>      +------------------------+                +-------------------------+
>>>>>>>      | Video Subsystem        |                |Video Subsystem          |
>>>>>>>      |       +-------------+  |                |       +------------+    |
>>>>>>>      |       | Video TPDM  |  |                |       | Video TPDM |    |
>>>>>>>      |       +-------------+  |                |       +------------+    |
>>>>>>>      |            |           |                |              |           |
>>>>>>>      |            v           |                |              v          |
>>>>>>>      |   +---------------+    |                |        +-----------+    |
>>>>>>>      |   | Video funnel  |    |                |        |Video TNOC |    |
>>>>>>>      |   +---------------+    |                |        +-----------+    |
>>>>>>>      +------------|-----------+                +------------|------------+
>>>>>>>                   |                                         |
>>>>>>>                   v-----+                                   |
>>>>>>> +--------------------|---------+                         |
>>>>>>> |  Multimedia        v         |                         |
>>>>>>> |  Subsystem   +--------+      |                         |
>>>>>>> |              |  TPDA  |      |                         v
>>>>>>> |              +----|---+      |              +---------------------+
>>>>>>> |                   |          |              |    Aggregator TNOC  |
>>>>>>> |                   |          |              +----------|----------+
>>>>>>> |                   +--        |                         |
>>>>>>> |                     |        |                         |
>>>>>>> |                     |        |                         |
>>>>>>> |              +------v-----+  |                         |
>>>>>>> |              |  Funnel    |  |                         |
>>>>>>> |              +------------+  |                         |
>>>>>>> +----------------|-------------+                         |
>>>>>>>                     |                                       |
>>>>>>>                     v                                       v
>>>>>>>          +--------------------+                    +------------------+
>>>>>>>          |   Coresight Sink   |                    |  Coresight Sink  |
>>>>>>>          +--------------------+                    +------------------+
>>>>>>
>>>>>> If each NOC has TraceID, how do you reliably decode the trace ?
>>>>>> Is there a single NOC/TPDA in the path from Source to sink ?
>>>>>
>>>>> Not each TNOC has TraceID, there is only one TNOC has TraceID for one path
>>>>> from Source to sink. In the example, only the aggregator TNOC has traceID.
>>>>> Decode trace relying on TraceID + Inport number.
>>>>> It can has mutiple TNOC/TPDA in one path.
>>>>
>>>> So do we only describe the TNOCs that need traceId in the DT ? (e.g., Aggregator TNOC above ?) How about Video TNOC ? Don't we allocate a
>>>> trace id for it by default, when it is described ?
>>>>
>>>> Suzuki
>>>>
>>> yes, now only describe the TNOCs which need traceID, Video TNOC is another type, it is interconnect TNOC which collects trace from subsystems
>>> and transfers Aggr TNOC, it doesn't have ATID. Its driver is different from this patch, I want to describe it when upstream its driver.
> 
> So, if both are TNOC and there different types of them, how do you plan
> to identify, which is what ?
> 
I will describe interconnect TNOC as a platform device because it doesn't have PID register.
It will have a compatible "qcom,coresight-interconnect-tnoc".
 
> And we also have a dt-bindings which simply says "coresight-tnoc". Isn't too generic if it is meant to be "aggregator" ?
> 
aggregator TNOC is generic TNOC, the dt-bindings is for this generic TNOC. interconnect TNOC is special TNOC, There will be a separate dt-bindings to describe it.
> Suzuki
> 
> 
> 
>>
>> Thanks! Please could you make sure to describe all of this when sending
>> out a patch in the cover letter ?
>>
sure, will update the cover letter.
>> Cheers
>> Suzuki
>>
>>
>>>
>>> Yuanfang
>>>
>>>
>>>
>>>
>>>
>>>
>>
> 




More information about the linux-arm-kernel mailing list