From: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
To: Krzysztof Kozlowski <krzk@kernel.org>
Cc: Srinivas Kandagatla <srini@kernel.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Subject: Re: [PATCH v5 1/3] ASoC: dt-bindings: qcom,q6apm-lpass-dais: Document DAI subnode
Date: Wed, 15 Jul 2026 12:28:44 +0530 [thread overview]
Message-ID: <5612a63b-4052-41af-8676-9d92811dee9d@oss.qualcomm.com> (raw)
In-Reply-To: <20260715-crafty-cheerful-goat-baba95@quoll>
On 7/15/2026 11:35 AM, Krzysztof Kozlowski wrote:
> On Tue, Jul 14, 2026 at 08:22:48PM +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.
>>
>> On platforms such as Monaco and Lemans, third-party codecs are hardware
>> wired to the SoC and do not always have an in-tree codec driver to manage
>> their clocks. For these designs, clock line enablement must be driven
>> from the platform side, and this series provides the necessary support
>> for that.
>>
>> On QAIF-based platforms such as Shikra and Hawi, responsibility for voting
>> I2S MCLK and BCLK has moved from the DSP to the kernel. This series
>> introduces the required device tree binding support to represent and
>> vote for these clocks from the kernel.
>>
>> Co-developed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
>> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
>> Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
>> ---
>> .../bindings/sound/qcom,q6apm-lpass-dais.yaml | 89 +++++++++++++++++++
>> 1 file changed, 89 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml b/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
>> index 2fb95544d..b37c62ccd 100644
>> --- a/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
>> +++ b/Documentation/devicetree/bindings/sound/qcom,q6apm-lpass-dais.yaml
>> @@ -21,6 +21,82 @@ properties:
>> '#sound-dai-cells':
>> const: 1
>>
>> + '#address-cells':
>> + const: 1
>> +
>> + '#size-cells':
>> + const: 0
>> +
>> +# Digital Audio Interfaces
>> +patternProperties:
>> + '^dai@[0-9a-f]+$':
>> + type: object
>> + description:
>> + Q6DSP Digital Audio Interfaces.
>> +
>> + properties:
>> + reg:
>> + maxItems: 1
>> + description:
>> + Digital Audio Interface ID
>> +
>> + clocks:
>> + minItems: 1
>> + maxItems: 2
>> + description: MI2S clocks (mclk, bclk and/or eclk).
>> +
>> + clock-names:
>> + minItems: 1
>> + maxItems: 2
>> +
>> + allOf:
>> + - oneOf:
>> + - properties:
>
> Please don't do such stuff. Did you find it somewhere? If yes, then
> where - so we can remove it?
>
It was not copied from another binding.
It was my attempt to model the valid clock combinations.
> I gave you the close-to-exact syntax I expect. It was nothing like this.
clocks:
minItems: 1
maxItems: 3
clock-names:
minItems: 1
maxItems: 3
items:
enum:
- mclk
- bclk
- eclk
The enum version does not enforce the positional relationship between
clocks and clock-names,
which is why I tried the oneOf approach.
My concern with the suggested syntax is that mclk is not mandatory for
all platforms.
For example, HAWI only requires bclk and does not use mclk, so requiring
mclk as the first clock-name would reject valid DTs.
Is there a preferred binding pattern for expressing optional mclk while
still preserving the positional mapping between clocks and clock-names?
can you please suggest better approach to fix this if any.
Thanks & regards,
Rafi
>
> Best regards,
> Krzysztof
>
next prev parent reply other threads:[~2026-07-15 6:58 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-14 14:52 [PATCH v5 0/3] ASoC: qcom: qdsp6: Add MI2S clock control Mohammad Rafi Shaik
2026-07-14 14:52 ` [PATCH v5 1/3] ASoC: dt-bindings: qcom,q6apm-lpass-dais: Document DAI subnode Mohammad Rafi Shaik
2026-07-15 6:05 ` Krzysztof Kozlowski
2026-07-15 6:58 ` Mohammad Rafi Shaik [this message]
2026-07-16 6:19 ` Krzysztof Kozlowski
2026-07-20 9:48 ` Mohammad Rafi Shaik
2026-07-14 14:52 ` [PATCH v5 2/3] ASoC: qcom: q6apm-lpass-dais: Add MI2S clock control Mohammad Rafi Shaik
2026-07-14 14:52 ` [PATCH v5 3/3] ASoC: qcom: sc8280xp: enhance machine driver for board-specific config Mohammad Rafi Shaik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5612a63b-4052-41af-8676-9d92811dee9d@oss.qualcomm.com \
--to=mohammad.rafi.shaik@oss.qualcomm.com \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=perex@perex.cz \
--cc=robh@kernel.org \
--cc=srini@kernel.org \
--cc=srinivas.kandagatla@oss.qualcomm.com \
--cc=tiwai@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®