Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties

From: AngeloGioacchino Del Regno
Date: Thu May 05 2022 - 04:08:29 EST


Il 29/04/22 22:30, Nícolas F. R. A. Prado ha scritto:
The Mediatek AFE PCM controller for MT8192 allows sharing of an I2S bus
between two busses. Add a pattern for these properties in the
dt-binding.

Signed-off-by: Nícolas F. R. A. Prado <nfraprado@xxxxxxxxxxxxx>
---

Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml b/Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml
index 7a25bc9b8060..5b03c8dbf318 100644
--- a/Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml
+++ b/Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml
@@ -54,6 +54,11 @@ properties:
- const: aud_infra_clk
- const: aud_infra_26m_clk
+patternProperties:
+ "^i2s[0-35-9]-share$":
+ description: Name of the I2S bus that is shared with this bus
+ pattern: "^I2S[0-35-9]$"
+
required:
- compatible
- interrupts


The only other way of doing this would be to complicate this in the driver
so that we can do something like

"i2s-share = <0 2>"; instead of i2s0-share = "I2S2";

...and I don't think that this would be any more straightforward than the
provided way.

There's an improvement that we can do to that pattern description though,
which would be explaining that declaring 'i2s0-share = "I2S2"' means that
I2S2's data pin will be used as DATA-OUT, while i2s0 is DATA-IN.

Another thing that comes to mind here is that this is a MediaTek specific
property and *not* a generic one, which means that both the driver and
this binding should be fixed to get a "mediatek," prefix, so, this property
should - in reality - be "mediatek,i2s[0-35-9]-share" instead.

I think that everyone agrees about that, but let's see what the others say.

Cheers,
Angelo