Re: [PATCH v1 1/4] ASoC: dt-bindings: qcom,q6apm-lpass-dais: Document DAI subnode
From: Krzysztof Kozlowski
Date: Tue Mar 10 2026 - 05:57:40 EST
On Mon, Mar 09, 2026 at 04:42:57PM +0530, Mohammad Rafi Shaik wrote:
> Extend the qcom,q6apm-lpass-dais device tree binding to explicitly
> describe Digital Audio Interface (DAI) child nodes.
>
> Add #address-cells and #size-cells to allow representation of multiple
> DAI instances as child nodes, and define a dai@<id> pattern to document
> per-DAI properties such as the interface ID and associated clocks.
>
> Qualcomm platforms like talos integrate third-party audio codecs or use
> different external audio paths. These designs often require additional
> configuration such as explicit MI2S MCLK settings for audio to work.
>
> Co-developed-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxxxxxxxx>
> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxxxxxxxx>
> Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@xxxxxxxxxxxxxxxx>
> ---
> .../bindings/sound/qcom,q6apm-lpass-dais.yaml | 41 ++++++++++++++++++-
> 1 file changed, 40 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml b/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
> index 2fb95544d..1d770cbcb 100644
> --- a/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
> +++ b/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
> @@ -21,6 +21,34 @@ properties:
> '#sound-dai-cells':
> const: 1
>
> + '#address-cells':
> + const: 1
> +
> + '#size-cells':
> + const: 0
> +
> +# Digital Audio Interfaces
> +patternProperties:
> + '^dai@[0-9]+$':
> + type: object
> + description:
> + Q6DSP Digital Audio Interfaces.
> +
> + properties:
> + reg:
> + description:
> + Digital Audio Interface ID
> +
> + clocks:
> + minItems: 1
> + maxItems: 3
> +
> + clock-names:
> + minItems: 1
> + maxItems: 3
No, this is just way too generic. There is no such syntax in the kernel
and this should stop you right there. You are not allowed to add your
own style.
I don't think DAI is here a separate device needing its own resources
expressed in DT. This is still part of ADSP so you just described in DT
internal routing between two services on ADSP.
> +
> + additionalProperties: false
> +
> required:
> - compatible
> - '#sound-dai-cells'
> @@ -29,7 +57,18 @@ unevaluatedProperties: false
>
> examples:
> - |
> - dais {
Why?
> + #include <dt-bindings/sound/qcom,q6afe.h>
> +
> + bedais {
> compatible = "qcom,q6apm-lpass-dais";
> #sound-dai-cells = <1>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + dai@16 {
> + reg = <PRIMARY_MI2S_RX>;
> + clocks = <&q6prmcc LPASS_CLK_ID_MCLK_1
> + LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
So one entry, not three.
> + clock-names = "mclk";
> + };
> };
> --
> 2.34.1
>