lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <44524ce9-b24e-7e2d-819c-232149e29f0e@quicinc.com>
Date:   Mon, 15 May 2023 13:52:41 +0800
From:   Hao Zhang <quic_hazha@...cinc.com>
To:     Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
        Suzuki K Poulose <suzuki.poulose@....com>,
        Mike Leach <mike.leach@...aro.org>,
        Leo Yan <leo.yan@...aro.org>,
        Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
        Mathieu Poirier <mathieu.poirier@...aro.org>,
        Konrad Dybcio <konradybcio@...il.com>,
        "Rob Herring" <robh+dt@...nel.org>,
        Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
        Andy Gross <agross@...nel.org>,
        "Paul Walmsley" <paul.walmsley@...ive.com>,
        Palmer Dabbelt <palmer@...belt.com>,
        Albert Ou <aou@...s.berkeley.edu>,
        Jonathan Corbet <corbet@....net>
CC:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        <coresight@...ts.linaro.org>,
        <linux-arm-kernel@...ts.infradead.org>,
        <linux-kernel@...r.kernel.org>, <devicetree@...r.kernel.org>,
        Tingwei Zhang <quic_tingweiz@...cinc.com>,
        Jinlong Mao <quic_jinlmao@...cinc.com>,
        "Yuanfang Zhang" <quic_yuanfang@...cinc.com>,
        Tao Zhang <quic_taozha@...cinc.com>,
        Trilok Soni <quic_tsoni@...cinc.com>,
        <linux-arm-msm@...r.kernel.org>,
        "Bjorn Andersson" <andersson@...nel.org>,
        <linux-doc@...r.kernel.org>
Subject: Re: [PATCH v4 2/3] dt-bindings: arm: Add Coresight Dummy Trace



On 5/7/2023 4:04 PM, Krzysztof Kozlowski wrote:
> On 05/05/2023 11:24, Hao Zhang wrote:
>> Add new coresight-dummy.yaml file describing the bindings required
>> to define coresight dummy trace in the device trees.
>>
>> Signed-off-by: Hao Zhang <quic_hazha@...cinc.com>
>> ---
>>   .../bindings/arm/arm,coresight-dummy.yaml     | 102 ++++++++++++++++++
>>   1 file changed, 102 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/arm/arm,coresight-dummy.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/arm/arm,coresight-dummy.yaml b/Documentation/devicetree/bindings/arm/arm,coresight-dummy.yaml
>> new file mode 100644
>> index 000000000000..126518863eea
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/arm/arm,coresight-dummy.yaml
>> @@ -0,0 +1,102 @@
>> +# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/arm/arm,coresight-dummy.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: ARM Coresight Dummy component
>> +
>> +description: |
>> +  Coresight Dummy Trace Module is for the specific devices that kernel
>> +  don't have permission to access or configure, e.g., CoreSight TPDMs
>> +  on Qualcomm platforms. So there need driver to register dummy devices
>> +  as Coresight devices. It may also be used to define components that
>> +  may not have any programming interfaces (e.g, static links), so that
>> +  paths can be established in the driver. Provide Coresight API for
>> +  dummy device operations, such as enabling and disabling dummy devices.
>> +  Build the Coresight path for dummy sink or dummy source for debugging.
>> +
>> +  The primary use case of the coresight dummy is to build path in kernel
>> +  side for dummy sink and dummy source.
>> +
>> +maintainers:
>> +  - Mao Jinlong <quic_jinlmao@...cinc.com>
>> +  - Tao Zhang <quic_taozha@...cinc.com>
>> +  - Hao Zhang <quic_hazha@...cinc.com>
>> +  - Yuanfang Zhang <quic_yuanfang@...cinc.com>
>> +
>> +properties:
>> +  compatible:
>> +    items:
> 
> You were asked to drop oneOf, not to replace with items. Drop items.
> Drop oneOf. It's just enum.
> 

Hi Krzysztof,

I will drop items and update it in the next version.

Thanks,
Hao

>> +      - enum:
>> +          - arm,coresight-dummy-sink
>> +          - arm,coresight-dummy-source
>> +
>> +  out-ports:
>> +    $ref: /schemas/graph.yaml#/properties/ports
>> +
>> +    properties:
>> +      port:
>> +        description: Output connection from the source to Coresight
>> +          Trace bus.
>> +        $ref: /schemas/graph.yaml#/properties/port
>> +
>> +  in-ports:
>> +    $ref: /schemas/graph.yaml#/properties/ports
>> +
>> +    properties:
>> +      port:
>> +        description: Input connection from the Coresight Trace bus to
>> +          dummy sink, such as Embedded USB debugger(EUD).
>> +        $ref: /schemas/graph.yaml#/properties/port
>> +
>> +required:
>> +  - compatible
>> +
>> +if:
>> +  # If the compatible contains the below value
>> +  properties:
>> +    compatible:
>> +      contains:
>> +        const: arm,coresight-dummy-sink
>> +
>> +then:
>> +  required:
>> +    - in-ports
>> +
>> +else:
>> +  required:
>> +    - out-ports
> 
> No improvements. Implement Rob's comments.
> 

Hi Krzysztof, Rob,

There are two comments from Rob:
1) I could imagine the OS wanting to know more information than just
'dummy'. Is data from an unknown source useful? Likewise, don't you want
to know where you are sending data too?
2) This still allows the nodes when they don't make sense. I think this
needs to be 2 schema files. The only common part is 'compatible' and
that's not even shared.


1. The necessary information for coresight is connection(ports) between 
different components. However, this information is not very intuitive. 
There would be a generic change to support coresight name in the 
further. You can refer to the below link, this solution is still under 
discussion, I think it's also helpful for our query.
https://lore.kernel.org/linux-arm-kernel/b7abee2a-99ca-26d6-5850-60ee19d9c0e9@quicinc.com/T/

2. Dummy driver is very simple, the only goal of it is to build a path 
in kernel for subsystem, so we want to handle dummy source and sink in 
one generic driver. For one same driver, shall we split the schema file?

Please feel free to comment.

Thanks,
Hao

> Best regards,
> Krzysztof
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ