Message ID | 20230308235751.495-21-quic_wcheng@quicinc.com |
---|---|
State | New |
Headers | show |
Series | Introduce QC USB SND audio offloading support | expand |
On 09/03/2023 00:57, Wesley Cheng wrote: > Add a dt-binding to describe the definition of enabling the Q6 USB backend > device for audio offloading. The node carries information, which is passed > along to the QC USB SND class driver counterpart. These parameters will be > utilized during QMI stream enable requests. > > Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com> > --- > .../bindings/sound/qcom,q6usb-dais.yaml | 49 +++++++++++++++++++ > 1 file changed, 49 insertions(+) > create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml > > diff --git a/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml b/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml > new file mode 100644 > index 000000000000..8477abc511dd > --- /dev/null > +++ b/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml > @@ -0,0 +1,49 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/sound/qcom,q6usb-dais.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Qualcomm ASoC USB backend DAI > + > +maintainers: > + - Wesley Cheng <quic_wcheng@quicinc.com> > + > +description: > + The Q6USB backend is a supported AFE port on the Q6DSP. This backend > + driver will communicate the required settings to the QC USB SND class What does the "driver" mean? Linux driver? Then drop and focus on hardware/Q6DSP. > + driver for properly enabling the audio stream. Parameters defined > + under this node will carry settings, which will be passed along during > + the QMI stream enable request. > + > +properties: > + compatible: > + enum: > + - qcom,q6usb-dais Can q6usb mean anything else? Why "-dais" suffix? > + > + iommus: > + maxItems: 1 > + > + "#sound-dai-cells": > + const: 1 > + > + qcom,usb-audio-intr-num: > + description: > + Desired XHCI interrupter number to use. > + $ref: /schemas/types.yaml#/definitions/uint32 Why this should be configurable per board or SoC? It's the first use in DT and in the same time sounds generic... > + > +required: > + - compatible > + - "#sound-dai-cells" > + - qcom,usb-audio-intr-num > + > +additionalProperties: false > + > +examples: > + - | > + dais { > + compatible = "qcom,q6usb-dais"; > + #sound-dai-cells = <1>; > + iommus = <&apps_smmu 0x180f 0x0>; > + qcom,usb-audio-intr-num = <2>; > + }; Best regards, Krzysztof
Hi Krzysztof, On 3/10/2023 12:54 AM, Krzysztof Kozlowski wrote: > On 09/03/2023 00:57, Wesley Cheng wrote: >> Add a dt-binding to describe the definition of enabling the Q6 USB backend >> device for audio offloading. The node carries information, which is passed >> along to the QC USB SND class driver counterpart. These parameters will be >> utilized during QMI stream enable requests. >> >> Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com> >> --- >> .../bindings/sound/qcom,q6usb-dais.yaml | 49 +++++++++++++++++++ >> 1 file changed, 49 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml >> >> diff --git a/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml b/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml >> new file mode 100644 >> index 000000000000..8477abc511dd >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml >> @@ -0,0 +1,49 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/sound/qcom,q6usb-dais.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Qualcomm ASoC USB backend DAI >> + >> +maintainers: >> + - Wesley Cheng <quic_wcheng@quicinc.com> >> + >> +description: >> + The Q6USB backend is a supported AFE port on the Q6DSP. This backend >> + driver will communicate the required settings to the QC USB SND class > > What does the "driver" mean? Linux driver? Then drop and focus on > hardware/Q6DSP. > Sorry for the late reply, was side tracked on some other priorities, and reviving this series again. The driver here is a Linux ASoC based DPCM backend driver, which will interface with the CPU dai (q6afe). >> + driver for properly enabling the audio stream. Parameters defined >> + under this node will carry settings, which will be passed along during >> + the QMI stream enable request. >> + >> +properties: >> + compatible: >> + enum: >> + - qcom,q6usb-dais > > Can q6usb mean anything else? Why "-dais" suffix? > As of now, no...will remove the dai suffix. >> + >> + iommus: >> + maxItems: 1 >> + >> + "#sound-dai-cells": >> + const: 1 >> + >> + qcom,usb-audio-intr-num: >> + description: >> + Desired XHCI interrupter number to use. >> + $ref: /schemas/types.yaml#/definitions/uint32 > > Why this should be configurable per board or SoC? It's the first use in > DT and in the same time sounds generic... > Would depend on which interrupter we want to use. This should be configurable per platform in case the audio DSP decides to work off a specific interrupter. Thanks Wesley Cheng >> + >> +required: >> + - compatible >> + - "#sound-dai-cells" >> + - qcom,usb-audio-intr-num >> + >> +additionalProperties: false >> + >> +examples: >> + - | >> + dais { >> + compatible = "qcom,q6usb-dais"; >> + #sound-dai-cells = <1>; >> + iommus = <&apps_smmu 0x180f 0x0>; >> + qcom,usb-audio-intr-num = <2>; >> + }; > > Best regards, > Krzysztof >
diff --git a/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml b/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml new file mode 100644 index 000000000000..8477abc511dd --- /dev/null +++ b/Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml @@ -0,0 +1,49 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/qcom,q6usb-dais.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm ASoC USB backend DAI + +maintainers: + - Wesley Cheng <quic_wcheng@quicinc.com> + +description: + The Q6USB backend is a supported AFE port on the Q6DSP. This backend + driver will communicate the required settings to the QC USB SND class + driver for properly enabling the audio stream. Parameters defined + under this node will carry settings, which will be passed along during + the QMI stream enable request. + +properties: + compatible: + enum: + - qcom,q6usb-dais + + iommus: + maxItems: 1 + + "#sound-dai-cells": + const: 1 + + qcom,usb-audio-intr-num: + description: + Desired XHCI interrupter number to use. + $ref: /schemas/types.yaml#/definitions/uint32 + +required: + - compatible + - "#sound-dai-cells" + - qcom,usb-audio-intr-num + +additionalProperties: false + +examples: + - | + dais { + compatible = "qcom,q6usb-dais"; + #sound-dai-cells = <1>; + iommus = <&apps_smmu 0x180f 0x0>; + qcom,usb-audio-intr-num = <2>; + };
Add a dt-binding to describe the definition of enabling the Q6 USB backend device for audio offloading. The node carries information, which is passed along to the QC USB SND class driver counterpart. These parameters will be utilized during QMI stream enable requests. Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com> --- .../bindings/sound/qcom,q6usb-dais.yaml | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/qcom,q6usb-dais.yaml