Message ID | 20240807071054.12742-1-quic_jinlmao@quicinc.com |
---|---|
Headers | show |
Series | coresight: Add remote etm support | expand |
On 07/08/2024 08:10, Mao Jinlong wrote: > qcom,inst-id is the instance id used by qmi API to communicate with > remote processor. > > Signed-off-by: Mao Jinlong <quic_jinlmao@quicinc.com> > --- > .../bindings/arm/qcom,coresight-remote-etm.yaml | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml b/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml > index 4fd5752978cd..a65121505c68 100644 > --- a/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml > +++ b/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml > @@ -20,6 +20,13 @@ properties: > compatible: > const: qcom,coresight-remote-etm That is a generic name, without any clue of the QMI transport. Are there other ways in which an ETM could be connected ? Given how this QMI inst-id is added, I wonder if this is an after thought ? Why was the dt pushed without a proper driver for it ? Suzuki > > + qcom,inst-id: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: > + This id is used by qmi API to communicate with remote processor for > + enabling and disabling remote etm. Each processor has its unique instance > + id. > + > out-ports: > $ref: /schemas/graph.yaml#/properties/ports > additionalProperties: false > @@ -31,6 +38,7 @@ properties: > > required: > - compatible > + - qcom,inst-id > - out-ports > > additionalProperties: false > @@ -40,6 +48,8 @@ examples: > etm { > compatible = "qcom,coresight-remote-etm"; > > + qcom,inst-id = <5>; > + > out-ports { > port { > modem_etm0_out_funnel_modem: endpoint {
On 2024/8/8 18:25, Suzuki K Poulose wrote: > On 07/08/2024 08:10, Mao Jinlong wrote: >> qcom,inst-id is the instance id used by qmi API to communicate with >> remote processor. >> >> Signed-off-by: Mao Jinlong <quic_jinlmao@quicinc.com> >> --- >> .../bindings/arm/qcom,coresight-remote-etm.yaml | 10 ++++++++++ >> 1 file changed, 10 insertions(+) >> >> diff --git >> a/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml >> b/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml >> index 4fd5752978cd..a65121505c68 100644 >> --- >> a/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml >> +++ >> b/Documentation/devicetree/bindings/arm/qcom,coresight-remote-etm.yaml >> @@ -20,6 +20,13 @@ properties: >> compatible: >> const: qcom,coresight-remote-etm > > That is a generic name, without any clue of the QMI transport. Are there > other ways in which an ETM could be connected ? Given how this QMI > inst-id is added, I wonder if this is an after thought ? Why was the dt > pushed without a proper driver for it ? > > > Suzuki Hi Suzuki, This driver is to enable/disable ETM of remote processors by QMI service. QMI connection is the only way to communicate between kernel driver and remote QMI service. Instance id is required. The id is unique for each remote processor. The dt is pushed to solve the device tree warning in Qualcomm's devicetree. https://lore.kernel.org/linux-arm-msm/20231210072633.4243-1-quic_jinlmao@quicinc.com/ https://lore.kernel.org/linux-arm-msm/20231210072633.4243-2-quic_jinlmao@quicinc.com/ Thanks Jinlong Mao > > >> + qcom,inst-id: >> + $ref: /schemas/types.yaml#/definitions/uint32 >> + description: >> + This id is used by qmi API to communicate with remote processor >> for >> + enabling and disabling remote etm. Each processor has its >> unique instance >> + id. >> + >> out-ports: >> $ref: /schemas/graph.yaml#/properties/ports >> additionalProperties: false >> @@ -31,6 +38,7 @@ properties: >> required: >> - compatible >> + - qcom,inst-id >> - out-ports >> additionalProperties: false >> @@ -40,6 +48,8 @@ examples: >> etm { >> compatible = "qcom,coresight-remote-etm"; >> + qcom,inst-id = <5>; >> + >> out-ports { >> port { >> modem_etm0_out_funnel_modem: endpoint { >