* [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: kernel, AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, Tzung-Bi Shih, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek These patches add properties that were missing on the dt-bindings of the audio components used by mt8192-asurada. Namely the i2s-share properties for the sound platform and the #sound-dai-cells on the rt1015p and rt5682 codecs when they're referenced by the machine sound node. Nícolas F. R. A. Prado (3): ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties ASoC: dt-bindings: rt1015p: Add #sound-dai-cells ASoC: dt-bindings: rt5682: Add #sound-dai-cells Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml | 5 +++++ Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml | 3 +++ Documentation/devicetree/bindings/sound/rt5682.txt | 2 ++ 3 files changed, 10 insertions(+) -- 2.36.0 ^ permalink raw reply [flat|nested] 64+ messages in thread
* [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: kernel, AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, Tzung-Bi Shih, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek These patches add properties that were missing on the dt-bindings of the audio components used by mt8192-asurada. Namely the i2s-share properties for the sound platform and the #sound-dai-cells on the rt1015p and rt5682 codecs when they're referenced by the machine sound node. Nícolas F. R. A. Prado (3): ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties ASoC: dt-bindings: rt1015p: Add #sound-dai-cells ASoC: dt-bindings: rt5682: Add #sound-dai-cells Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml | 5 +++++ Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml | 3 +++ Documentation/devicetree/bindings/sound/rt5682.txt | 2 ++ 3 files changed, 10 insertions(+) -- 2.36.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: devicetree, alsa-devel, Nícolas F. R. A. Prado, Tzung-Bi Shih, Liam Girdwood, Jiaxin Yu, linux-kernel, Shane Chien, Rob Herring, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel, AngeloGioacchino Del Regno These patches add properties that were missing on the dt-bindings of the audio components used by mt8192-asurada. Namely the i2s-share properties for the sound platform and the #sound-dai-cells on the rt1015p and rt5682 codecs when they're referenced by the machine sound node. Nícolas F. R. A. Prado (3): ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties ASoC: dt-bindings: rt1015p: Add #sound-dai-cells ASoC: dt-bindings: rt5682: Add #sound-dai-cells Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml | 5 +++++ Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml | 3 +++ Documentation/devicetree/bindings/sound/rt5682.txt | 2 ++ 3 files changed, 10 insertions(+) -- 2.36.0 ^ permalink raw reply [flat|nested] 64+ messages in thread
* [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: kernel, AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, Tzung-Bi Shih, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek These patches add properties that were missing on the dt-bindings of the audio components used by mt8192-asurada. Namely the i2s-share properties for the sound platform and the #sound-dai-cells on the rt1015p and rt5682 codecs when they're referenced by the machine sound node. Nícolas F. R. A. Prado (3): ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties ASoC: dt-bindings: rt1015p: Add #sound-dai-cells ASoC: dt-bindings: rt5682: Add #sound-dai-cells Documentation/devicetree/bindings/sound/mt8192-afe-pcm.yaml | 5 +++++ Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml | 3 +++ Documentation/devicetree/bindings/sound/rt5682.txt | 2 ++ 3 files changed, 10 insertions(+) -- 2.36.0 _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-04-29 20:30 ` Nícolas F. R. A. Prado (?) (?) @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado -1 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: kernel, AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek 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@collabora.com> --- 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 -- 2.36.0 ^ permalink raw reply related [flat|nested] 64+ messages in thread
* [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: kernel, AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek 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@collabora.com> --- 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 -- 2.36.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 64+ messages in thread
* [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: devicetree, alsa-devel, Nícolas F. R. A. Prado, Liam Girdwood, Jiaxin Yu, linux-kernel, Shane Chien, Rob Herring, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel, AngeloGioacchino Del Regno 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@collabora.com> --- 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 -- 2.36.0 ^ permalink raw reply related [flat|nested] 64+ messages in thread
* [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: kernel, AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek 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@collabora.com> --- 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 -- 2.36.0 _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply related [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-04-29 20:30 ` Nícolas F. R. A. Prado (?) (?) @ 2022-05-04 20:38 ` Rob Herring -1 siblings, 0 replies; 64+ messages in thread From: Rob Herring @ 2022-05-04 20:38 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: Mark Brown, kernel, AngeloGioacchino Del Regno, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, Apr 29, 2022 at 04:30:37PM -0400, Nícolas F. R. A. Prado wrote: > 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@collabora.com> > > --- > > 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]$" Why not a phandle to the the other bus? That would be the DT way to do it. But I'm not sure I really understand who is sharing what here. > + > required: > - compatible > - interrupts > -- > 2.36.0 > > ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-04 20:38 ` Rob Herring 0 siblings, 0 replies; 64+ messages in thread From: Rob Herring @ 2022-05-04 20:38 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: devicetree, alsa-devel, Liam Girdwood, Jiaxin Yu, linux-kernel, Shane Chien, Mark Brown, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel, AngeloGioacchino Del Regno On Fri, Apr 29, 2022 at 04:30:37PM -0400, Nícolas F. R. A. Prado wrote: > 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@collabora.com> > > --- > > 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]$" Why not a phandle to the the other bus? That would be the DT way to do it. But I'm not sure I really understand who is sharing what here. > + > required: > - compatible > - interrupts > -- > 2.36.0 > > ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-04 20:38 ` Rob Herring 0 siblings, 0 replies; 64+ messages in thread From: Rob Herring @ 2022-05-04 20:38 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: Mark Brown, kernel, AngeloGioacchino Del Regno, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, Apr 29, 2022 at 04:30:37PM -0400, Nícolas F. R. A. Prado wrote: > 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@collabora.com> > > --- > > 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]$" Why not a phandle to the the other bus? That would be the DT way to do it. But I'm not sure I really understand who is sharing what here. > + > required: > - compatible > - interrupts > -- > 2.36.0 > > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-04 20:38 ` Rob Herring 0 siblings, 0 replies; 64+ messages in thread From: Rob Herring @ 2022-05-04 20:38 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: Mark Brown, kernel, AngeloGioacchino Del Regno, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, Apr 29, 2022 at 04:30:37PM -0400, Nícolas F. R. A. Prado wrote: > 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@collabora.com> > > --- > > 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]$" Why not a phandle to the the other bus? That would be the DT way to do it. But I'm not sure I really understand who is sharing what here. > + > required: > - compatible > - interrupts > -- > 2.36.0 > > _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-05-04 20:38 ` Rob Herring (?) (?) @ 2022-05-05 2:13 ` Jiaxin Yu -1 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-05 2:13 UTC (permalink / raw) To: Rob Herring, Nícolas F. R. A. Prado Cc: Mark Brown, kernel, AngeloGioacchino Del Regno, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Wed, 2022-05-04 at 15:38 -0500, Rob Herring wrote: > On Fri, Apr 29, 2022 at 04:30:37PM -0400, Nícolas F. R. A. Prado > wrote: > > 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@collabora.com> > > > > --- > > > > 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]$" > > Why not a phandle to the the other bus? That would be the DT way to > do > it. But I'm not sure I really understand who is sharing what here. > I can explain the usage of this property. The I2S interface of MT8192 only have 3 pins [bit clock/ frame clock/ data in(or out)]. So if we want use them as normal I2S that has 4 pins [bit clock/ frame clock/ data in/ data out], we need to combine two MT8192 I2S interface to use. But we need to specify whose clock they use. E.g. "i2s9-share = "I2S8"". > > + > > required: > > - compatible > > - interrupts > > -- > > 2.36.0 > > > > ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 2:13 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-05 2:13 UTC (permalink / raw) To: Rob Herring, Nícolas F. R. A. Prado Cc: Mark Brown, kernel, AngeloGioacchino Del Regno, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Wed, 2022-05-04 at 15:38 -0500, Rob Herring wrote: > On Fri, Apr 29, 2022 at 04:30:37PM -0400, Nícolas F. R. A. Prado > wrote: > > 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@collabora.com> > > > > --- > > > > 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]$" > > Why not a phandle to the the other bus? That would be the DT way to > do > it. But I'm not sure I really understand who is sharing what here. > I can explain the usage of this property. The I2S interface of MT8192 only have 3 pins [bit clock/ frame clock/ data in(or out)]. So if we want use them as normal I2S that has 4 pins [bit clock/ frame clock/ data in/ data out], we need to combine two MT8192 I2S interface to use. But we need to specify whose clock they use. E.g. "i2s9-share = "I2S8"". > > + > > required: > > - compatible > > - interrupts > > -- > > 2.36.0 > > > > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 2:13 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-05 2:13 UTC (permalink / raw) To: Rob Herring, Nícolas F. R. A. Prado Cc: Mark Brown, kernel, AngeloGioacchino Del Regno, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Wed, 2022-05-04 at 15:38 -0500, Rob Herring wrote: > On Fri, Apr 29, 2022 at 04:30:37PM -0400, Nícolas F. R. A. Prado > wrote: > > 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@collabora.com> > > > > --- > > > > 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]$" > > Why not a phandle to the the other bus? That would be the DT way to > do > it. But I'm not sure I really understand who is sharing what here. > I can explain the usage of this property. The I2S interface of MT8192 only have 3 pins [bit clock/ frame clock/ data in(or out)]. So if we want use them as normal I2S that has 4 pins [bit clock/ frame clock/ data in/ data out], we need to combine two MT8192 I2S interface to use. But we need to specify whose clock they use. E.g. "i2s9-share = "I2S8"". > > + > > required: > > - compatible > > - interrupts > > -- > > 2.36.0 > > > > _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 2:13 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-05 2:13 UTC (permalink / raw) To: Rob Herring, Nícolas F. R. A. Prado Cc: devicetree, alsa-devel, Liam Girdwood, linux-kernel, Shane Chien, Mark Brown, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel, AngeloGioacchino Del Regno On Wed, 2022-05-04 at 15:38 -0500, Rob Herring wrote: > On Fri, Apr 29, 2022 at 04:30:37PM -0400, Nícolas F. R. A. Prado > wrote: > > 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@collabora.com> > > > > --- > > > > 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]$" > > Why not a phandle to the the other bus? That would be the DT way to > do > it. But I'm not sure I really understand who is sharing what here. > I can explain the usage of this property. The I2S interface of MT8192 only have 3 pins [bit clock/ frame clock/ data in(or out)]. So if we want use them as normal I2S that has 4 pins [bit clock/ frame clock/ data in/ data out], we need to combine two MT8192 I2S interface to use. But we need to specify whose clock they use. E.g. "i2s9-share = "I2S8"". > > + > > required: > > - compatible > > - interrupts > > -- > > 2.36.0 > > > > ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-04-29 20:30 ` Nícolas F. R. A. Prado (?) (?) @ 2022-05-05 8:08 ` AngeloGioacchino Del Regno -1 siblings, 0 replies; 64+ messages in thread From: AngeloGioacchino Del Regno @ 2022-05-05 8:08 UTC (permalink / raw) To: Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek 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@collabora.com> > --- > > 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 ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:08 ` AngeloGioacchino Del Regno 0 siblings, 0 replies; 64+ messages in thread From: AngeloGioacchino Del Regno @ 2022-05-05 8:08 UTC (permalink / raw) To: Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek 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@collabora.com> > --- > > 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 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:08 ` AngeloGioacchino Del Regno 0 siblings, 0 replies; 64+ messages in thread From: AngeloGioacchino Del Regno @ 2022-05-05 8:08 UTC (permalink / raw) To: Nícolas F. R. A. Prado, Mark Brown Cc: devicetree, alsa-devel, Liam Girdwood, Jiaxin Yu, linux-kernel, Shane Chien, Rob Herring, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel 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@collabora.com> > --- > > 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 ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:08 ` AngeloGioacchino Del Regno 0 siblings, 0 replies; 64+ messages in thread From: AngeloGioacchino Del Regno @ 2022-05-05 8:08 UTC (permalink / raw) To: Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Jiaxin Yu, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek 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@collabora.com> > --- > > 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 _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-05-05 8:08 ` AngeloGioacchino Del Regno (?) (?) @ 2022-05-05 8:48 ` Jiaxin Yu -1 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-05 8:48 UTC (permalink / raw) To: AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: > 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@collabora.com> > > --- > > > > 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 Hi Angelo, 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open I2S2 to provide clock. Conversely, if we want to use I2S2, we don't need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are generally designed as input. So usually we use 'i2s0-share = "I2S1"'. Even numbers represent input, odd numbers represent output. Yes, I think adding the "mediatek," prefix is the right way to define a non-generic property. Best Regards, Jiaxin Yu ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:48 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-05 8:48 UTC (permalink / raw) To: AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: > 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@collabora.com> > > --- > > > > 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 Hi Angelo, 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open I2S2 to provide clock. Conversely, if we want to use I2S2, we don't need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are generally designed as input. So usually we use 'i2s0-share = "I2S1"'. Even numbers represent input, odd numbers represent output. Yes, I think adding the "mediatek," prefix is the right way to define a non-generic property. Best Regards, Jiaxin Yu _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:48 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-05 8:48 UTC (permalink / raw) To: AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: > 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@collabora.com> > > --- > > > > 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 Hi Angelo, 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open I2S2 to provide clock. Conversely, if we want to use I2S2, we don't need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are generally designed as input. So usually we use 'i2s0-share = "I2S1"'. Even numbers represent input, odd numbers represent output. Yes, I think adding the "mediatek," prefix is the right way to define a non-generic property. Best Regards, Jiaxin Yu _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:48 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-05 8:48 UTC (permalink / raw) To: AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Mark Brown Cc: devicetree, alsa-devel, Liam Girdwood, linux-kernel, Shane Chien, Rob Herring, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: > 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@collabora.com> > > --- > > > > 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 Hi Angelo, 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open I2S2 to provide clock. Conversely, if we want to use I2S2, we don't need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are generally designed as input. So usually we use 'i2s0-share = "I2S1"'. Even numbers represent input, odd numbers represent output. Yes, I think adding the "mediatek," prefix is the right way to define a non-generic property. Best Regards, Jiaxin Yu ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-05-05 8:48 ` Jiaxin Yu (?) (?) @ 2022-05-05 8:52 ` AngeloGioacchino Del Regno -1 siblings, 0 replies; 64+ messages in thread From: AngeloGioacchino Del Regno @ 2022-05-05 8:52 UTC (permalink / raw) To: Jiaxin Yu, Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek Il 05/05/22 10:48, Jiaxin Yu ha scritto: > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: >> 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@collabora.com> >>> --- >>> >>> 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 > > Hi Angelo, > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open > I2S2 to provide clock. Conversely, if we want to use I2S2, we don't > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > generally designed as input. So usually we use 'i2s0-share = "I2S1"'. > Even numbers represent input, odd numbers represent output. > > Yes, I think adding the "mediatek," prefix is the right way to define a > non-generic property. > Hello Jiaxin, if I get this correctly, i2s0-share = "I2S2" would be *invalid*... as you just explained, i2sX, where: X = even number -> always DATA IN X = odd number -> always DATA OUT ...this means that the dt-binding needs a pattern to specify that only odd can be assigned to only even. Nicolas, take note! :-) :-) Thanks, Angelo ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:52 ` AngeloGioacchino Del Regno 0 siblings, 0 replies; 64+ messages in thread From: AngeloGioacchino Del Regno @ 2022-05-05 8:52 UTC (permalink / raw) To: Jiaxin Yu, Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek Il 05/05/22 10:48, Jiaxin Yu ha scritto: > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: >> 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@collabora.com> >>> --- >>> >>> 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 > > Hi Angelo, > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open > I2S2 to provide clock. Conversely, if we want to use I2S2, we don't > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > generally designed as input. So usually we use 'i2s0-share = "I2S1"'. > Even numbers represent input, odd numbers represent output. > > Yes, I think adding the "mediatek," prefix is the right way to define a > non-generic property. > Hello Jiaxin, if I get this correctly, i2s0-share = "I2S2" would be *invalid*... as you just explained, i2sX, where: X = even number -> always DATA IN X = odd number -> always DATA OUT ...this means that the dt-binding needs a pattern to specify that only odd can be assigned to only even. Nicolas, take note! :-) :-) Thanks, Angelo _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:52 ` AngeloGioacchino Del Regno 0 siblings, 0 replies; 64+ messages in thread From: AngeloGioacchino Del Regno @ 2022-05-05 8:52 UTC (permalink / raw) To: Jiaxin Yu, Nícolas F. R. A. Prado, Mark Brown Cc: devicetree, alsa-devel, Liam Girdwood, linux-kernel, Shane Chien, Rob Herring, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel Il 05/05/22 10:48, Jiaxin Yu ha scritto: > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: >> 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@collabora.com> >>> --- >>> >>> 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 > > Hi Angelo, > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open > I2S2 to provide clock. Conversely, if we want to use I2S2, we don't > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > generally designed as input. So usually we use 'i2s0-share = "I2S1"'. > Even numbers represent input, odd numbers represent output. > > Yes, I think adding the "mediatek," prefix is the right way to define a > non-generic property. > Hello Jiaxin, if I get this correctly, i2s0-share = "I2S2" would be *invalid*... as you just explained, i2sX, where: X = even number -> always DATA IN X = odd number -> always DATA OUT ...this means that the dt-binding needs a pattern to specify that only odd can be assigned to only even. Nicolas, take note! :-) :-) Thanks, Angelo ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 8:52 ` AngeloGioacchino Del Regno 0 siblings, 0 replies; 64+ messages in thread From: AngeloGioacchino Del Regno @ 2022-05-05 8:52 UTC (permalink / raw) To: Jiaxin Yu, Nícolas F. R. A. Prado, Mark Brown Cc: kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek Il 05/05/22 10:48, Jiaxin Yu ha scritto: > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: >> 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@collabora.com> >>> --- >>> >>> 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 > > Hi Angelo, > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open > I2S2 to provide clock. Conversely, if we want to use I2S2, we don't > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > generally designed as input. So usually we use 'i2s0-share = "I2S1"'. > Even numbers represent input, odd numbers represent output. > > Yes, I think adding the "mediatek," prefix is the right way to define a > non-generic property. > Hello Jiaxin, if I get this correctly, i2s0-share = "I2S2" would be *invalid*... as you just explained, i2sX, where: X = even number -> always DATA IN X = odd number -> always DATA OUT ...this means that the dt-binding needs a pattern to specify that only odd can be assigned to only even. Nicolas, take note! :-) :-) Thanks, Angelo _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-05-05 8:52 ` AngeloGioacchino Del Regno (?) (?) @ 2022-05-05 16:25 ` Nícolas F. R. A. Prado -1 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-05 16:25 UTC (permalink / raw) To: AngeloGioacchino Del Regno Cc: Jiaxin Yu, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno wrote: > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: > > > 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@collabora.com> > > > > --- > > > > > > > > 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 > > > > Hi Angelo, > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open > > I2S2 to provide clock. Conversely, if we want to use I2S2, we don't > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > generally designed as input. So usually we use 'i2s0-share = "I2S1"'. > > Even numbers represent input, odd numbers represent output. > > > > Yes, I think adding the "mediatek," prefix is the right way to define a > > non-generic property. > > Hi Jiaxin, thank you for the insights. > > Hello Jiaxin, > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... as you > just explained, i2sX, where: > > X = even number -> always DATA IN > X = odd number -> always DATA OUT > > ...this means that the dt-binding needs a pattern to specify that only odd > can be assigned to only even. So, the situation seems different at least on mt8192-asurada-spherion. Here, I2S8 is used for the headset microphone and I2S9 for the headset audio. Even for input and odd for output agree with Jiaxin's description. However, the input bus seems to be the main one, that is, disabling I2S8: amixer cset name='UL2_CH1 I2S8_CH1' 0 amixer cset name='UL2_CH2 I2S8_CH2' 0 not only disables the microphone but also the audio on the headset. If I add i2s9-share = "I2S8"; on the DT, then everything works, I can disable I2S8 without impacting the headset audio. So the pattern for the property on this platform is the opposite that Jiaxin mentioned. This tells me that we should keep the binding more generic (not assume where odds and evens go). I will still apply the other suggestions mentioned though. Thanks, Nícolas > > Nicolas, take note! :-) :-) > > Thanks, > Angelo > > -- > To unsubscribe, send mail to kernel-unsubscribe@lists.collabora.co.uk. ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 16:25 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-05 16:25 UTC (permalink / raw) To: AngeloGioacchino Del Regno Cc: Jiaxin Yu, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno wrote: > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: > > > 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@collabora.com> > > > > --- > > > > > > > > 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 > > > > Hi Angelo, > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open > > I2S2 to provide clock. Conversely, if we want to use I2S2, we don't > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > generally designed as input. So usually we use 'i2s0-share = "I2S1"'. > > Even numbers represent input, odd numbers represent output. > > > > Yes, I think adding the "mediatek," prefix is the right way to define a > > non-generic property. > > Hi Jiaxin, thank you for the insights. > > Hello Jiaxin, > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... as you > just explained, i2sX, where: > > X = even number -> always DATA IN > X = odd number -> always DATA OUT > > ...this means that the dt-binding needs a pattern to specify that only odd > can be assigned to only even. So, the situation seems different at least on mt8192-asurada-spherion. Here, I2S8 is used for the headset microphone and I2S9 for the headset audio. Even for input and odd for output agree with Jiaxin's description. However, the input bus seems to be the main one, that is, disabling I2S8: amixer cset name='UL2_CH1 I2S8_CH1' 0 amixer cset name='UL2_CH2 I2S8_CH2' 0 not only disables the microphone but also the audio on the headset. If I add i2s9-share = "I2S8"; on the DT, then everything works, I can disable I2S8 without impacting the headset audio. So the pattern for the property on this platform is the opposite that Jiaxin mentioned. This tells me that we should keep the binding more generic (not assume where odds and evens go). I will still apply the other suggestions mentioned though. Thanks, Nícolas > > Nicolas, take note! :-) :-) > > Thanks, > Angelo > > -- > To unsubscribe, send mail to kernel-unsubscribe@lists.collabora.co.uk. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 16:25 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-05 16:25 UTC (permalink / raw) To: AngeloGioacchino Del Regno Cc: Jiaxin Yu, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno wrote: > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: > > > 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@collabora.com> > > > > --- > > > > > > > > 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 > > > > Hi Angelo, > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open > > I2S2 to provide clock. Conversely, if we want to use I2S2, we don't > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > generally designed as input. So usually we use 'i2s0-share = "I2S1"'. > > Even numbers represent input, odd numbers represent output. > > > > Yes, I think adding the "mediatek," prefix is the right way to define a > > non-generic property. > > Hi Jiaxin, thank you for the insights. > > Hello Jiaxin, > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... as you > just explained, i2sX, where: > > X = even number -> always DATA IN > X = odd number -> always DATA OUT > > ...this means that the dt-binding needs a pattern to specify that only odd > can be assigned to only even. So, the situation seems different at least on mt8192-asurada-spherion. Here, I2S8 is used for the headset microphone and I2S9 for the headset audio. Even for input and odd for output agree with Jiaxin's description. However, the input bus seems to be the main one, that is, disabling I2S8: amixer cset name='UL2_CH1 I2S8_CH1' 0 amixer cset name='UL2_CH2 I2S8_CH2' 0 not only disables the microphone but also the audio on the headset. If I add i2s9-share = "I2S8"; on the DT, then everything works, I can disable I2S8 without impacting the headset audio. So the pattern for the property on this platform is the opposite that Jiaxin mentioned. This tells me that we should keep the binding more generic (not assume where odds and evens go). I will still apply the other suggestions mentioned though. Thanks, Nícolas > > Nicolas, take note! :-) :-) > > Thanks, > Angelo > > -- > To unsubscribe, send mail to kernel-unsubscribe@lists.collabora.co.uk. _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-05 16:25 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-05 16:25 UTC (permalink / raw) To: AngeloGioacchino Del Regno Cc: devicetree, alsa-devel, Shane Chien, Liam Girdwood, Jiaxin Yu, linux-kernel, Rob Herring, Mark Brown, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno wrote: > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno wrote: > > > 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@collabora.com> > > > > --- > > > > > > > > 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 > > > > Hi Angelo, > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need open > > I2S2 to provide clock. Conversely, if we want to use I2S2, we don't > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > generally designed as input. So usually we use 'i2s0-share = "I2S1"'. > > Even numbers represent input, odd numbers represent output. > > > > Yes, I think adding the "mediatek," prefix is the right way to define a > > non-generic property. > > Hi Jiaxin, thank you for the insights. > > Hello Jiaxin, > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... as you > just explained, i2sX, where: > > X = even number -> always DATA IN > X = odd number -> always DATA OUT > > ...this means that the dt-binding needs a pattern to specify that only odd > can be assigned to only even. So, the situation seems different at least on mt8192-asurada-spherion. Here, I2S8 is used for the headset microphone and I2S9 for the headset audio. Even for input and odd for output agree with Jiaxin's description. However, the input bus seems to be the main one, that is, disabling I2S8: amixer cset name='UL2_CH1 I2S8_CH1' 0 amixer cset name='UL2_CH2 I2S8_CH2' 0 not only disables the microphone but also the audio on the headset. If I add i2s9-share = "I2S8"; on the DT, then everything works, I can disable I2S8 without impacting the headset audio. So the pattern for the property on this platform is the opposite that Jiaxin mentioned. This tells me that we should keep the binding more generic (not assume where odds and evens go). I will still apply the other suggestions mentioned though. Thanks, Nícolas > > Nicolas, take note! :-) :-) > > Thanks, > Angelo > > -- > To unsubscribe, send mail to kernel-unsubscribe@lists.collabora.co.uk. ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-05-05 16:25 ` Nícolas F. R. A. Prado (?) (?) @ 2022-05-06 5:45 ` Jiaxin Yu -1 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-06 5:45 UTC (permalink / raw) To: Nícolas F. R. A. Prado, AngeloGioacchino Del Regno Cc: Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno > wrote: > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > wrote: > > > > 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@collabora.com> > > > > > --- > > > > > > > > > > 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 > > > > > > Hi Angelo, > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need > > > open > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > don't > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > > generally designed as input. So usually we use 'i2s0-share = > > > "I2S1"'. > > > Even numbers represent input, odd numbers represent output. > > > > > > Yes, I think adding the "mediatek," prefix is the right way to > > > define a > > > non-generic property. > > > > > Hi Jiaxin, > > thank you for the insights. > > > > > Hello Jiaxin, > > > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... > > as you > > just explained, i2sX, where: > > > > X = even number -> always DATA IN > > X = odd number -> always DATA OUT > > > > ...this means that the dt-binding needs a pattern to specify that > > only odd > > can be assigned to only even. > > So, the situation seems different at least on mt8192-asurada- > spherion. > Here, I2S8 is used for the headset microphone and I2S9 for the > headset audio. > Even for input and odd for output agree with Jiaxin's description. > However, the > input bus seems to be the main one, that is, disabling I2S8: > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > not only disables the microphone but also the audio on the headset. > If I add > > i2s9-share = "I2S8"; > > on the DT, then everything works, I can disable I2S8 without > impacting the > headset audio. So the pattern for the property on this platform is > the opposite > that Jiaxin mentioned. This tells me that we should keep the binding > more > generic (not assume where odds and evens go). I will still apply the > other > suggestions mentioned though. > > Thanks, > Nícolas > Hi Nícolas, From software point, I2S8 and I2S9 belong to different hardware, so if you turn off I2S8 with CMD1, of course it will not affect I2S9. CMD1: amixer cset name='UL2_CH1 I2S8_CH1' 0 amixer cset name='UL2_CH2 I2S8_CH2' 0 Frome hardware point, I2S9 will use(share) I2S8's clock. If we don't want the user to perceive this, the driver need to help do something. So this property 'i2s9-share = "I2S8";' will be added to inform the driver. Best Regards, Jiaxin Yu > > Nicolas, take note! :-) :-) > > > > Thanks, > > Angelo > > > > To unsubscribe, send mail to > > kernel-unsubscribe@lists.collabora.co.uk. ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 5:45 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-06 5:45 UTC (permalink / raw) To: Nícolas F. R. A. Prado, AngeloGioacchino Del Regno Cc: Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno > wrote: > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > wrote: > > > > 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@collabora.com> > > > > > --- > > > > > > > > > > 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 > > > > > > Hi Angelo, > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need > > > open > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > don't > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > > generally designed as input. So usually we use 'i2s0-share = > > > "I2S1"'. > > > Even numbers represent input, odd numbers represent output. > > > > > > Yes, I think adding the "mediatek," prefix is the right way to > > > define a > > > non-generic property. > > > > > Hi Jiaxin, > > thank you for the insights. > > > > > Hello Jiaxin, > > > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... > > as you > > just explained, i2sX, where: > > > > X = even number -> always DATA IN > > X = odd number -> always DATA OUT > > > > ...this means that the dt-binding needs a pattern to specify that > > only odd > > can be assigned to only even. > > So, the situation seems different at least on mt8192-asurada- > spherion. > Here, I2S8 is used for the headset microphone and I2S9 for the > headset audio. > Even for input and odd for output agree with Jiaxin's description. > However, the > input bus seems to be the main one, that is, disabling I2S8: > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > not only disables the microphone but also the audio on the headset. > If I add > > i2s9-share = "I2S8"; > > on the DT, then everything works, I can disable I2S8 without > impacting the > headset audio. So the pattern for the property on this platform is > the opposite > that Jiaxin mentioned. This tells me that we should keep the binding > more > generic (not assume where odds and evens go). I will still apply the > other > suggestions mentioned though. > > Thanks, > Nícolas > Hi Nícolas, From software point, I2S8 and I2S9 belong to different hardware, so if you turn off I2S8 with CMD1, of course it will not affect I2S9. CMD1: amixer cset name='UL2_CH1 I2S8_CH1' 0 amixer cset name='UL2_CH2 I2S8_CH2' 0 Frome hardware point, I2S9 will use(share) I2S8's clock. If we don't want the user to perceive this, the driver need to help do something. So this property 'i2s9-share = "I2S8";' will be added to inform the driver. Best Regards, Jiaxin Yu > > Nicolas, take note! :-) :-) > > > > Thanks, > > Angelo > > > > To unsubscribe, send mail to > > kernel-unsubscribe@lists.collabora.co.uk. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 5:45 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-06 5:45 UTC (permalink / raw) To: Nícolas F. R. A. Prado, AngeloGioacchino Del Regno Cc: devicetree, alsa-devel, Mark Brown, Liam Girdwood, linux-kernel, Shane Chien, Rob Herring, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno > wrote: > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > wrote: > > > > 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@collabora.com> > > > > > --- > > > > > > > > > > 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 > > > > > > Hi Angelo, > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need > > > open > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > don't > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > > generally designed as input. So usually we use 'i2s0-share = > > > "I2S1"'. > > > Even numbers represent input, odd numbers represent output. > > > > > > Yes, I think adding the "mediatek," prefix is the right way to > > > define a > > > non-generic property. > > > > > Hi Jiaxin, > > thank you for the insights. > > > > > Hello Jiaxin, > > > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... > > as you > > just explained, i2sX, where: > > > > X = even number -> always DATA IN > > X = odd number -> always DATA OUT > > > > ...this means that the dt-binding needs a pattern to specify that > > only odd > > can be assigned to only even. > > So, the situation seems different at least on mt8192-asurada- > spherion. > Here, I2S8 is used for the headset microphone and I2S9 for the > headset audio. > Even for input and odd for output agree with Jiaxin's description. > However, the > input bus seems to be the main one, that is, disabling I2S8: > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > not only disables the microphone but also the audio on the headset. > If I add > > i2s9-share = "I2S8"; > > on the DT, then everything works, I can disable I2S8 without > impacting the > headset audio. So the pattern for the property on this platform is > the opposite > that Jiaxin mentioned. This tells me that we should keep the binding > more > generic (not assume where odds and evens go). I will still apply the > other > suggestions mentioned though. > > Thanks, > Nícolas > Hi Nícolas, From software point, I2S8 and I2S9 belong to different hardware, so if you turn off I2S8 with CMD1, of course it will not affect I2S9. CMD1: amixer cset name='UL2_CH1 I2S8_CH1' 0 amixer cset name='UL2_CH2 I2S8_CH2' 0 Frome hardware point, I2S9 will use(share) I2S8's clock. If we don't want the user to perceive this, the driver need to help do something. So this property 'i2s9-share = "I2S8";' will be added to inform the driver. Best Regards, Jiaxin Yu > > Nicolas, take note! :-) :-) > > > > Thanks, > > Angelo > > > > To unsubscribe, send mail to > > kernel-unsubscribe@lists.collabora.co.uk. ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 5:45 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-06 5:45 UTC (permalink / raw) To: Nícolas F. R. A. Prado, AngeloGioacchino Del Regno Cc: Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno > wrote: > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > wrote: > > > > 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@collabora.com> > > > > > --- > > > > > > > > > > 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 > > > > > > Hi Angelo, > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need > > > open > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > don't > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > > generally designed as input. So usually we use 'i2s0-share = > > > "I2S1"'. > > > Even numbers represent input, odd numbers represent output. > > > > > > Yes, I think adding the "mediatek," prefix is the right way to > > > define a > > > non-generic property. > > > > > Hi Jiaxin, > > thank you for the insights. > > > > > Hello Jiaxin, > > > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... > > as you > > just explained, i2sX, where: > > > > X = even number -> always DATA IN > > X = odd number -> always DATA OUT > > > > ...this means that the dt-binding needs a pattern to specify that > > only odd > > can be assigned to only even. > > So, the situation seems different at least on mt8192-asurada- > spherion. > Here, I2S8 is used for the headset microphone and I2S9 for the > headset audio. > Even for input and odd for output agree with Jiaxin's description. > However, the > input bus seems to be the main one, that is, disabling I2S8: > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > not only disables the microphone but also the audio on the headset. > If I add > > i2s9-share = "I2S8"; > > on the DT, then everything works, I can disable I2S8 without > impacting the > headset audio. So the pattern for the property on this platform is > the opposite > that Jiaxin mentioned. This tells me that we should keep the binding > more > generic (not assume where odds and evens go). I will still apply the > other > suggestions mentioned though. > > Thanks, > Nícolas > Hi Nícolas, From software point, I2S8 and I2S9 belong to different hardware, so if you turn off I2S8 with CMD1, of course it will not affect I2S9. CMD1: amixer cset name='UL2_CH1 I2S8_CH1' 0 amixer cset name='UL2_CH2 I2S8_CH2' 0 Frome hardware point, I2S9 will use(share) I2S8's clock. If we don't want the user to perceive this, the driver need to help do something. So this property 'i2s9-share = "I2S8";' will be added to inform the driver. Best Regards, Jiaxin Yu > > Nicolas, take note! :-) :-) > > > > Thanks, > > Angelo > > > > To unsubscribe, send mail to > > kernel-unsubscribe@lists.collabora.co.uk. _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-05-06 5:45 ` Jiaxin Yu (?) (?) @ 2022-05-06 14:09 ` Nícolas F. R. A. Prado -1 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-06 14:09 UTC (permalink / raw) To: Jiaxin Yu Cc: AngeloGioacchino Del Regno, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, May 06, 2022 at 01:45:24PM +0800, Jiaxin Yu wrote: > On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno > > wrote: > > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > > wrote: > > > > > 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@collabora.com> > > > > > > --- > > > > > > > > > > > > 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 > > > > > > > > Hi Angelo, > > > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need > > > > open > > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > > don't > > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > > > generally designed as input. So usually we use 'i2s0-share = > > > > "I2S1"'. > > > > Even numbers represent input, odd numbers represent output. > > > > > > > > Yes, I think adding the "mediatek," prefix is the right way to > > > > define a > > > > non-generic property. > > > > > > > > Hi Jiaxin, > > > > thank you for the insights. > > > > > > > > Hello Jiaxin, > > > > > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... > > > as you > > > just explained, i2sX, where: > > > > > > X = even number -> always DATA IN > > > X = odd number -> always DATA OUT > > > > > > ...this means that the dt-binding needs a pattern to specify that > > > only odd > > > can be assigned to only even. > > > > So, the situation seems different at least on mt8192-asurada- > > spherion. > > Here, I2S8 is used for the headset microphone and I2S9 for the > > headset audio. > > Even for input and odd for output agree with Jiaxin's description. > > However, the > > input bus seems to be the main one, that is, disabling I2S8: > > > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > not only disables the microphone but also the audio on the headset. > > If I add > > > > i2s9-share = "I2S8"; > > > > on the DT, then everything works, I can disable I2S8 without > > impacting the > > headset audio. So the pattern for the property on this platform is > > the opposite > > that Jiaxin mentioned. This tells me that we should keep the binding > > more > > generic (not assume where odds and evens go). I will still apply the > > other > > suggestions mentioned though. > > > > Thanks, > > Nícolas > > > Hi Nícolas, > > From software point, I2S8 and I2S9 belong to different hardware, so if > you turn off I2S8 with CMD1, of course it will not affect I2S9. > > CMD1: > amixer cset name='UL2_CH1 I2S8_CH1' 0 > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > Frome hardware point, I2S9 will use(share) I2S8's clock. If we don't > want the user to perceive this, the driver need to help do something. > So this property 'i2s9-share = "I2S8";' will be added to inform the > driver. Hi Jiaxin, yes, that's what I figured. What I was saying is that for the binding, your example was i2s0-share = "I2S1" ^ even,input ^ odd,output while on mt8192-asurada-spherion the use case is i2s9-share = "I2S8"; ^ odd,output ^ even,input So Angelo's idea to require in the dt-binding that the left side is always even (input) and the right side always odd (based on your example), wouldn't work for my use case. Basically it's a question of whether the input always shares the clock from an output (your example), or if output always shares the clock from an input (my use case), or if both are valid. I'm taking from this that both are valid, so I won't add any such restriction in the dt-binding in the following version, but do let me know if this is not the case. Thanks, Nícolas ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 14:09 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-06 14:09 UTC (permalink / raw) To: Jiaxin Yu Cc: AngeloGioacchino Del Regno, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, May 06, 2022 at 01:45:24PM +0800, Jiaxin Yu wrote: > On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno > > wrote: > > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > > wrote: > > > > > 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@collabora.com> > > > > > > --- > > > > > > > > > > > > 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 > > > > > > > > Hi Angelo, > > > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need > > > > open > > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > > don't > > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > > > generally designed as input. So usually we use 'i2s0-share = > > > > "I2S1"'. > > > > Even numbers represent input, odd numbers represent output. > > > > > > > > Yes, I think adding the "mediatek," prefix is the right way to > > > > define a > > > > non-generic property. > > > > > > > > Hi Jiaxin, > > > > thank you for the insights. > > > > > > > > Hello Jiaxin, > > > > > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... > > > as you > > > just explained, i2sX, where: > > > > > > X = even number -> always DATA IN > > > X = odd number -> always DATA OUT > > > > > > ...this means that the dt-binding needs a pattern to specify that > > > only odd > > > can be assigned to only even. > > > > So, the situation seems different at least on mt8192-asurada- > > spherion. > > Here, I2S8 is used for the headset microphone and I2S9 for the > > headset audio. > > Even for input and odd for output agree with Jiaxin's description. > > However, the > > input bus seems to be the main one, that is, disabling I2S8: > > > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > not only disables the microphone but also the audio on the headset. > > If I add > > > > i2s9-share = "I2S8"; > > > > on the DT, then everything works, I can disable I2S8 without > > impacting the > > headset audio. So the pattern for the property on this platform is > > the opposite > > that Jiaxin mentioned. This tells me that we should keep the binding > > more > > generic (not assume where odds and evens go). I will still apply the > > other > > suggestions mentioned though. > > > > Thanks, > > Nícolas > > > Hi Nícolas, > > From software point, I2S8 and I2S9 belong to different hardware, so if > you turn off I2S8 with CMD1, of course it will not affect I2S9. > > CMD1: > amixer cset name='UL2_CH1 I2S8_CH1' 0 > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > Frome hardware point, I2S9 will use(share) I2S8's clock. If we don't > want the user to perceive this, the driver need to help do something. > So this property 'i2s9-share = "I2S8";' will be added to inform the > driver. Hi Jiaxin, yes, that's what I figured. What I was saying is that for the binding, your example was i2s0-share = "I2S1" ^ even,input ^ odd,output while on mt8192-asurada-spherion the use case is i2s9-share = "I2S8"; ^ odd,output ^ even,input So Angelo's idea to require in the dt-binding that the left side is always even (input) and the right side always odd (based on your example), wouldn't work for my use case. Basically it's a question of whether the input always shares the clock from an output (your example), or if output always shares the clock from an input (my use case), or if both are valid. I'm taking from this that both are valid, so I won't add any such restriction in the dt-binding in the following version, but do let me know if this is not the case. Thanks, Nícolas _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 14:09 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-06 14:09 UTC (permalink / raw) To: Jiaxin Yu Cc: devicetree, alsa-devel, Liam Girdwood, Rob Herring, linux-kernel, Shane Chien, Mark Brown, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel, AngeloGioacchino Del Regno On Fri, May 06, 2022 at 01:45:24PM +0800, Jiaxin Yu wrote: > On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno > > wrote: > > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > > wrote: > > > > > 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@collabora.com> > > > > > > --- > > > > > > > > > > > > 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 > > > > > > > > Hi Angelo, > > > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need > > > > open > > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > > don't > > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > > > generally designed as input. So usually we use 'i2s0-share = > > > > "I2S1"'. > > > > Even numbers represent input, odd numbers represent output. > > > > > > > > Yes, I think adding the "mediatek," prefix is the right way to > > > > define a > > > > non-generic property. > > > > > > > > Hi Jiaxin, > > > > thank you for the insights. > > > > > > > > Hello Jiaxin, > > > > > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... > > > as you > > > just explained, i2sX, where: > > > > > > X = even number -> always DATA IN > > > X = odd number -> always DATA OUT > > > > > > ...this means that the dt-binding needs a pattern to specify that > > > only odd > > > can be assigned to only even. > > > > So, the situation seems different at least on mt8192-asurada- > > spherion. > > Here, I2S8 is used for the headset microphone and I2S9 for the > > headset audio. > > Even for input and odd for output agree with Jiaxin's description. > > However, the > > input bus seems to be the main one, that is, disabling I2S8: > > > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > not only disables the microphone but also the audio on the headset. > > If I add > > > > i2s9-share = "I2S8"; > > > > on the DT, then everything works, I can disable I2S8 without > > impacting the > > headset audio. So the pattern for the property on this platform is > > the opposite > > that Jiaxin mentioned. This tells me that we should keep the binding > > more > > generic (not assume where odds and evens go). I will still apply the > > other > > suggestions mentioned though. > > > > Thanks, > > Nícolas > > > Hi Nícolas, > > From software point, I2S8 and I2S9 belong to different hardware, so if > you turn off I2S8 with CMD1, of course it will not affect I2S9. > > CMD1: > amixer cset name='UL2_CH1 I2S8_CH1' 0 > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > Frome hardware point, I2S9 will use(share) I2S8's clock. If we don't > want the user to perceive this, the driver need to help do something. > So this property 'i2s9-share = "I2S8";' will be added to inform the > driver. Hi Jiaxin, yes, that's what I figured. What I was saying is that for the binding, your example was i2s0-share = "I2S1" ^ even,input ^ odd,output while on mt8192-asurada-spherion the use case is i2s9-share = "I2S8"; ^ odd,output ^ even,input So Angelo's idea to require in the dt-binding that the left side is always even (input) and the right side always odd (based on your example), wouldn't work for my use case. Basically it's a question of whether the input always shares the clock from an output (your example), or if output always shares the clock from an input (my use case), or if both are valid. I'm taking from this that both are valid, so I won't add any such restriction in the dt-binding in the following version, but do let me know if this is not the case. Thanks, Nícolas ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 14:09 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-06 14:09 UTC (permalink / raw) To: Jiaxin Yu Cc: AngeloGioacchino Del Regno, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, May 06, 2022 at 01:45:24PM +0800, Jiaxin Yu wrote: > On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del Regno > > wrote: > > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > > wrote: > > > > > 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@collabora.com> > > > > > > --- > > > > > > > > > > > > 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 > > > > > > > > Hi Angelo, > > > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there need > > > > open > > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > > don't > > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware are > > > > generally designed as input. So usually we use 'i2s0-share = > > > > "I2S1"'. > > > > Even numbers represent input, odd numbers represent output. > > > > > > > > Yes, I think adding the "mediatek," prefix is the right way to > > > > define a > > > > non-generic property. > > > > > > > > Hi Jiaxin, > > > > thank you for the insights. > > > > > > > > Hello Jiaxin, > > > > > > if I get this correctly, i2s0-share = "I2S2" would be *invalid*... > > > as you > > > just explained, i2sX, where: > > > > > > X = even number -> always DATA IN > > > X = odd number -> always DATA OUT > > > > > > ...this means that the dt-binding needs a pattern to specify that > > > only odd > > > can be assigned to only even. > > > > So, the situation seems different at least on mt8192-asurada- > > spherion. > > Here, I2S8 is used for the headset microphone and I2S9 for the > > headset audio. > > Even for input and odd for output agree with Jiaxin's description. > > However, the > > input bus seems to be the main one, that is, disabling I2S8: > > > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > not only disables the microphone but also the audio on the headset. > > If I add > > > > i2s9-share = "I2S8"; > > > > on the DT, then everything works, I can disable I2S8 without > > impacting the > > headset audio. So the pattern for the property on this platform is > > the opposite > > that Jiaxin mentioned. This tells me that we should keep the binding > > more > > generic (not assume where odds and evens go). I will still apply the > > other > > suggestions mentioned though. > > > > Thanks, > > Nícolas > > > Hi Nícolas, > > From software point, I2S8 and I2S9 belong to different hardware, so if > you turn off I2S8 with CMD1, of course it will not affect I2S9. > > CMD1: > amixer cset name='UL2_CH1 I2S8_CH1' 0 > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > Frome hardware point, I2S9 will use(share) I2S8's clock. If we don't > want the user to perceive this, the driver need to help do something. > So this property 'i2s9-share = "I2S8";' will be added to inform the > driver. Hi Jiaxin, yes, that's what I figured. What I was saying is that for the binding, your example was i2s0-share = "I2S1" ^ even,input ^ odd,output while on mt8192-asurada-spherion the use case is i2s9-share = "I2S8"; ^ odd,output ^ even,input So Angelo's idea to require in the dt-binding that the left side is always even (input) and the right side always odd (based on your example), wouldn't work for my use case. Basically it's a question of whether the input always shares the clock from an output (your example), or if output always shares the clock from an input (my use case), or if both are valid. I'm taking from this that both are valid, so I won't add any such restriction in the dt-binding in the following version, but do let me know if this is not the case. Thanks, Nícolas _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties 2022-05-06 14:09 ` Nícolas F. R. A. Prado (?) (?) @ 2022-05-06 14:44 ` Jiaxin Yu -1 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-06 14:44 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: AngeloGioacchino Del Regno, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, 2022-05-06 at 10:09 -0400, Nícolas F. R. A. Prado wrote: > On Fri, May 06, 2022 at 01:45:24PM +0800, Jiaxin Yu wrote: > > On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > > > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del > > > Regno > > > wrote: > > > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > > > wrote: > > > > > > 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@collabora.com> > > > > > > > --- > > > > > > > > > > > > > > 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 > > > > > > > > > > Hi Angelo, > > > > > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there > > > > > need > > > > > open > > > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > > > don't > > > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware > > > > > are > > > > > generally designed as input. So usually we use 'i2s0-share = > > > > > "I2S1"'. > > > > > Even numbers represent input, odd numbers represent output. > > > > > > > > > > Yes, I think adding the "mediatek," prefix is the right way > > > > > to > > > > > define a > > > > > non-generic property. > > > > > > > > > > > Hi Jiaxin, > > > > > > thank you for the insights. > > > > > > > > > > > Hello Jiaxin, > > > > > > > > if I get this correctly, i2s0-share = "I2S2" would be > > > > *invalid*... > > > > as you > > > > just explained, i2sX, where: > > > > > > > > X = even number -> always DATA IN > > > > X = odd number -> always DATA OUT > > > > > > > > ...this means that the dt-binding needs a pattern to specify > > > > that > > > > only odd > > > > can be assigned to only even. > > > > > > So, the situation seems different at least on mt8192-asurada- > > > spherion. > > > Here, I2S8 is used for the headset microphone and I2S9 for the > > > headset audio. > > > Even for input and odd for output agree with Jiaxin's > > > description. > > > However, the > > > input bus seems to be the main one, that is, disabling I2S8: > > > > > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > > > not only disables the microphone but also the audio on the > > > headset. > > > If I add > > > > > > i2s9-share = "I2S8"; > > > > > > on the DT, then everything works, I can disable I2S8 without > > > impacting the > > > headset audio. So the pattern for the property on this platform > > > is > > > the opposite > > > that Jiaxin mentioned. This tells me that we should keep the > > > binding > > > more > > > generic (not assume where odds and evens go). I will still apply > > > the > > > other > > > suggestions mentioned though. > > > > > > Thanks, > > > Nícolas > > > > > > > Hi Nícolas, > > > > From software point, I2S8 and I2S9 belong to different hardware, so > > if > > you turn off I2S8 with CMD1, of course it will not affect I2S9. > > > > CMD1: > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > Frome hardware point, I2S9 will use(share) I2S8's clock. If we > > don't > > want the user to perceive this, the driver need to help do > > something. > > So this property 'i2s9-share = "I2S8";' will be added to inform the > > driver. > > Hi Jiaxin, > > yes, that's what I figured. What I was saying is that for the > binding, your > example was > > i2s0-share = "I2S1" > ^ even,input ^ odd,output > > while on mt8192-asurada-spherion the use case is > > i2s9-share = "I2S8"; > ^ odd,output ^ even,input > > So Angelo's idea to require in the dt-binding that the left side is > always even > (input) and the right side always odd (based on your example), > wouldn't work for > my use case. > > Basically it's a question of whether the input always shares the > clock from an > output (your example), or if output always shares the clock from an > input (my > use case), or if both are valid. I'm taking from this that both are > valid, so I > won't add any such restriction in the dt-binding in the following > version, but > do let me know if this is not the case. > > Thanks, > Nícolas Hi Nícolas, Yes, you are right. They completely depend on which set of I2S clock are used on the platform hardware. i2s9-share = "I2S8" ==> The I2S8 and the I2S9 combine into one set of standard I2S, and use I2S8's clock. i2s8-share = "I2S9" ==> The I2S8 and the I2S9 combine into one set of standard I2S, and use I2S9's clock. Best Regards, Jiaxin Yu ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 14:44 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-06 14:44 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: AngeloGioacchino Del Regno, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, 2022-05-06 at 10:09 -0400, Nícolas F. R. A. Prado wrote: > On Fri, May 06, 2022 at 01:45:24PM +0800, Jiaxin Yu wrote: > > On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > > > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del > > > Regno > > > wrote: > > > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > > > wrote: > > > > > > 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@collabora.com> > > > > > > > --- > > > > > > > > > > > > > > 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 > > > > > > > > > > Hi Angelo, > > > > > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there > > > > > need > > > > > open > > > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > > > don't > > > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware > > > > > are > > > > > generally designed as input. So usually we use 'i2s0-share = > > > > > "I2S1"'. > > > > > Even numbers represent input, odd numbers represent output. > > > > > > > > > > Yes, I think adding the "mediatek," prefix is the right way > > > > > to > > > > > define a > > > > > non-generic property. > > > > > > > > > > > Hi Jiaxin, > > > > > > thank you for the insights. > > > > > > > > > > > Hello Jiaxin, > > > > > > > > if I get this correctly, i2s0-share = "I2S2" would be > > > > *invalid*... > > > > as you > > > > just explained, i2sX, where: > > > > > > > > X = even number -> always DATA IN > > > > X = odd number -> always DATA OUT > > > > > > > > ...this means that the dt-binding needs a pattern to specify > > > > that > > > > only odd > > > > can be assigned to only even. > > > > > > So, the situation seems different at least on mt8192-asurada- > > > spherion. > > > Here, I2S8 is used for the headset microphone and I2S9 for the > > > headset audio. > > > Even for input and odd for output agree with Jiaxin's > > > description. > > > However, the > > > input bus seems to be the main one, that is, disabling I2S8: > > > > > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > > > not only disables the microphone but also the audio on the > > > headset. > > > If I add > > > > > > i2s9-share = "I2S8"; > > > > > > on the DT, then everything works, I can disable I2S8 without > > > impacting the > > > headset audio. So the pattern for the property on this platform > > > is > > > the opposite > > > that Jiaxin mentioned. This tells me that we should keep the > > > binding > > > more > > > generic (not assume where odds and evens go). I will still apply > > > the > > > other > > > suggestions mentioned though. > > > > > > Thanks, > > > Nícolas > > > > > > > Hi Nícolas, > > > > From software point, I2S8 and I2S9 belong to different hardware, so > > if > > you turn off I2S8 with CMD1, of course it will not affect I2S9. > > > > CMD1: > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > Frome hardware point, I2S9 will use(share) I2S8's clock. If we > > don't > > want the user to perceive this, the driver need to help do > > something. > > So this property 'i2s9-share = "I2S8";' will be added to inform the > > driver. > > Hi Jiaxin, > > yes, that's what I figured. What I was saying is that for the > binding, your > example was > > i2s0-share = "I2S1" > ^ even,input ^ odd,output > > while on mt8192-asurada-spherion the use case is > > i2s9-share = "I2S8"; > ^ odd,output ^ even,input > > So Angelo's idea to require in the dt-binding that the left side is > always even > (input) and the right side always odd (based on your example), > wouldn't work for > my use case. > > Basically it's a question of whether the input always shares the > clock from an > output (your example), or if output always shares the clock from an > input (my > use case), or if both are valid. I'm taking from this that both are > valid, so I > won't add any such restriction in the dt-binding in the following > version, but > do let me know if this is not the case. > > Thanks, > Nícolas Hi Nícolas, Yes, you are right. They completely depend on which set of I2S clock are used on the platform hardware. i2s9-share = "I2S8" ==> The I2S8 and the I2S9 combine into one set of standard I2S, and use I2S8's clock. i2s8-share = "I2S9" ==> The I2S8 and the I2S9 combine into one set of standard I2S, and use I2S9's clock. Best Regards, Jiaxin Yu _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 14:44 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-06 14:44 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: AngeloGioacchino Del Regno, Mark Brown, kernel, Krzysztof Kozlowski, Liam Girdwood, Matthias Brugger, Rob Herring, Shane Chien, alsa-devel, devicetree, linux-arm-kernel, linux-kernel, linux-mediatek On Fri, 2022-05-06 at 10:09 -0400, Nícolas F. R. A. Prado wrote: > On Fri, May 06, 2022 at 01:45:24PM +0800, Jiaxin Yu wrote: > > On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > > > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del > > > Regno > > > wrote: > > > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > > > wrote: > > > > > > 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@collabora.com> > > > > > > > --- > > > > > > > > > > > > > > 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 > > > > > > > > > > Hi Angelo, > > > > > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there > > > > > need > > > > > open > > > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > > > don't > > > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware > > > > > are > > > > > generally designed as input. So usually we use 'i2s0-share = > > > > > "I2S1"'. > > > > > Even numbers represent input, odd numbers represent output. > > > > > > > > > > Yes, I think adding the "mediatek," prefix is the right way > > > > > to > > > > > define a > > > > > non-generic property. > > > > > > > > > > > Hi Jiaxin, > > > > > > thank you for the insights. > > > > > > > > > > > Hello Jiaxin, > > > > > > > > if I get this correctly, i2s0-share = "I2S2" would be > > > > *invalid*... > > > > as you > > > > just explained, i2sX, where: > > > > > > > > X = even number -> always DATA IN > > > > X = odd number -> always DATA OUT > > > > > > > > ...this means that the dt-binding needs a pattern to specify > > > > that > > > > only odd > > > > can be assigned to only even. > > > > > > So, the situation seems different at least on mt8192-asurada- > > > spherion. > > > Here, I2S8 is used for the headset microphone and I2S9 for the > > > headset audio. > > > Even for input and odd for output agree with Jiaxin's > > > description. > > > However, the > > > input bus seems to be the main one, that is, disabling I2S8: > > > > > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > > > not only disables the microphone but also the audio on the > > > headset. > > > If I add > > > > > > i2s9-share = "I2S8"; > > > > > > on the DT, then everything works, I can disable I2S8 without > > > impacting the > > > headset audio. So the pattern for the property on this platform > > > is > > > the opposite > > > that Jiaxin mentioned. This tells me that we should keep the > > > binding > > > more > > > generic (not assume where odds and evens go). I will still apply > > > the > > > other > > > suggestions mentioned though. > > > > > > Thanks, > > > Nícolas > > > > > > > Hi Nícolas, > > > > From software point, I2S8 and I2S9 belong to different hardware, so > > if > > you turn off I2S8 with CMD1, of course it will not affect I2S9. > > > > CMD1: > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > Frome hardware point, I2S9 will use(share) I2S8's clock. If we > > don't > > want the user to perceive this, the driver need to help do > > something. > > So this property 'i2s9-share = "I2S8";' will be added to inform the > > driver. > > Hi Jiaxin, > > yes, that's what I figured. What I was saying is that for the > binding, your > example was > > i2s0-share = "I2S1" > ^ even,input ^ odd,output > > while on mt8192-asurada-spherion the use case is > > i2s9-share = "I2S8"; > ^ odd,output ^ even,input > > So Angelo's idea to require in the dt-binding that the left side is > always even > (input) and the right side always odd (based on your example), > wouldn't work for > my use case. > > Basically it's a question of whether the input always shares the > clock from an > output (your example), or if output always shares the clock from an > input (my > use case), or if both are valid. I'm taking from this that both are > valid, so I > won't add any such restriction in the dt-binding in the following > version, but > do let me know if this is not the case. > > Thanks, > Nícolas Hi Nícolas, Yes, you are right. They completely depend on which set of I2S clock are used on the platform hardware. i2s9-share = "I2S8" ==> The I2S8 and the I2S9 combine into one set of standard I2S, and use I2S8's clock. i2s8-share = "I2S9" ==> The I2S8 and the I2S9 combine into one set of standard I2S, and use I2S9's clock. Best Regards, Jiaxin Yu _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties @ 2022-05-06 14:44 ` Jiaxin Yu 0 siblings, 0 replies; 64+ messages in thread From: Jiaxin Yu @ 2022-05-06 14:44 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: devicetree, alsa-devel, Liam Girdwood, Rob Herring, linux-kernel, Shane Chien, Mark Brown, linux-mediatek, Krzysztof Kozlowski, Matthias Brugger, kernel, linux-arm-kernel, AngeloGioacchino Del Regno On Fri, 2022-05-06 at 10:09 -0400, Nícolas F. R. A. Prado wrote: > On Fri, May 06, 2022 at 01:45:24PM +0800, Jiaxin Yu wrote: > > On Thu, 2022-05-05 at 12:25 -0400, Nícolas F. R. A. Prado wrote: > > > > > > > On Thu, May 05, 2022 at 10:52:45AM +0200, AngeloGioacchino Del > > > Regno > > > wrote: > > > > Il 05/05/22 10:48, Jiaxin Yu ha scritto: > > > > > On Thu, 2022-05-05 at 10:08 +0200, AngeloGioacchino Del Regno > > > > > wrote: > > > > > > 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@collabora.com> > > > > > > > --- > > > > > > > > > > > > > > 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 > > > > > > > > > > Hi Angelo, > > > > > > > > > > 'i2s0-share = "I2S2"' means that if we want use I2S0, there > > > > > need > > > > > open > > > > > I2S2 to provide clock. Conversely, if we want to use I2S2, we > > > > > don't > > > > > need to open I2S0. However, MediaTek I2S0 and I2S2 hardware > > > > > are > > > > > generally designed as input. So usually we use 'i2s0-share = > > > > > "I2S1"'. > > > > > Even numbers represent input, odd numbers represent output. > > > > > > > > > > Yes, I think adding the "mediatek," prefix is the right way > > > > > to > > > > > define a > > > > > non-generic property. > > > > > > > > > > > Hi Jiaxin, > > > > > > thank you for the insights. > > > > > > > > > > > Hello Jiaxin, > > > > > > > > if I get this correctly, i2s0-share = "I2S2" would be > > > > *invalid*... > > > > as you > > > > just explained, i2sX, where: > > > > > > > > X = even number -> always DATA IN > > > > X = odd number -> always DATA OUT > > > > > > > > ...this means that the dt-binding needs a pattern to specify > > > > that > > > > only odd > > > > can be assigned to only even. > > > > > > So, the situation seems different at least on mt8192-asurada- > > > spherion. > > > Here, I2S8 is used for the headset microphone and I2S9 for the > > > headset audio. > > > Even for input and odd for output agree with Jiaxin's > > > description. > > > However, the > > > input bus seems to be the main one, that is, disabling I2S8: > > > > > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > > > not only disables the microphone but also the audio on the > > > headset. > > > If I add > > > > > > i2s9-share = "I2S8"; > > > > > > on the DT, then everything works, I can disable I2S8 without > > > impacting the > > > headset audio. So the pattern for the property on this platform > > > is > > > the opposite > > > that Jiaxin mentioned. This tells me that we should keep the > > > binding > > > more > > > generic (not assume where odds and evens go). I will still apply > > > the > > > other > > > suggestions mentioned though. > > > > > > Thanks, > > > Nícolas > > > > > > > Hi Nícolas, > > > > From software point, I2S8 and I2S9 belong to different hardware, so > > if > > you turn off I2S8 with CMD1, of course it will not affect I2S9. > > > > CMD1: > > amixer cset name='UL2_CH1 I2S8_CH1' 0 > > amixer cset name='UL2_CH2 I2S8_CH2' 0 > > > > Frome hardware point, I2S9 will use(share) I2S8's clock. If we > > don't > > want the user to perceive this, the driver need to help do > > something. > > So this property 'i2s9-share = "I2S8";' will be added to inform the > > driver. > > Hi Jiaxin, > > yes, that's what I figured. What I was saying is that for the > binding, your > example was > > i2s0-share = "I2S1" > ^ even,input ^ odd,output > > while on mt8192-asurada-spherion the use case is > > i2s9-share = "I2S8"; > ^ odd,output ^ even,input > > So Angelo's idea to require in the dt-binding that the left side is > always even > (input) and the right side always odd (based on your example), > wouldn't work for > my use case. > > Basically it's a question of whether the input always shares the > clock from an > output (your example), or if output always shares the clock from an > input (my > use case), or if both are valid. I'm taking from this that both are > valid, so I > won't add any such restriction in the dt-binding in the following > version, but > do let me know if this is not the case. > > Thanks, > Nícolas Hi Nícolas, Yes, you are right. They completely depend on which set of I2S clock are used on the platform hardware. i2s9-share = "I2S8" ==> The I2S8 and the I2S9 combine into one set of standard I2S, and use I2S8's clock. i2s8-share = "I2S9" ==> The I2S8 and the I2S9 combine into one set of standard I2S, and use I2S9's clock. Best Regards, Jiaxin Yu ^ permalink raw reply [flat|nested] 64+ messages in thread
* [PATCH 2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells 2022-04-29 20:30 ` Nícolas F. R. A. Prado @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado -1 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: kernel, AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Krzysztof Kozlowski, Liam Girdwood, Rob Herring, Tzung-Bi Shih, alsa-devel, devicetree, linux-kernel The rt1015p codec can be pointed to through a sound-dai property to be used as part of a machine sound driver. dtc expects #sound-dai-cells to be defined in the codec's node in those cases, so add it in the dt-binding and set it to 0. Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> --- Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml b/Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml index fdb7f295ef2d..1d73204451b1 100644 --- a/Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml +++ b/Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml @@ -25,6 +25,9 @@ properties: 0 means shut down; 1 means power on. maxItems: 1 + "#sound-dai-cells": + const: 0 + required: - compatible -- 2.36.0 ^ permalink raw reply related [flat|nested] 64+ messages in thread
* [PATCH 2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: devicetree, alsa-devel, Nícolas F. R. A. Prado, Liam Girdwood, linux-kernel, Tzung-Bi Shih, Rob Herring, Krzysztof Kozlowski, kernel, AngeloGioacchino Del Regno The rt1015p codec can be pointed to through a sound-dai property to be used as part of a machine sound driver. dtc expects #sound-dai-cells to be defined in the codec's node in those cases, so add it in the dt-binding and set it to 0. Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> --- Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml b/Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml index fdb7f295ef2d..1d73204451b1 100644 --- a/Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml +++ b/Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml @@ -25,6 +25,9 @@ properties: 0 means shut down; 1 means power on. maxItems: 1 + "#sound-dai-cells": + const: 0 + required: - compatible -- 2.36.0 ^ permalink raw reply related [flat|nested] 64+ messages in thread
* Re: [PATCH 2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells 2022-04-29 20:30 ` Nícolas F. R. A. Prado @ 2022-05-04 20:39 ` Rob Herring -1 siblings, 0 replies; 64+ messages in thread From: Rob Herring @ 2022-05-04 20:39 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: alsa-devel, Mark Brown, Krzysztof Kozlowski, kernel, AngeloGioacchino Del Regno, Liam Girdwood, Tzung-Bi Shih, Rob Herring, linux-kernel, devicetree On Fri, 29 Apr 2022 16:30:38 -0400, Nícolas F. R. A. Prado wrote: > The rt1015p codec can be pointed to through a sound-dai property to be > used as part of a machine sound driver. dtc expects #sound-dai-cells to > be defined in the codec's node in those cases, so add it in the > dt-binding and set it to 0. > > Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> > --- > > Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml | 3 +++ > 1 file changed, 3 insertions(+) > Acked-by: Rob Herring <robh@kernel.org> ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells @ 2022-05-04 20:39 ` Rob Herring 0 siblings, 0 replies; 64+ messages in thread From: Rob Herring @ 2022-05-04 20:39 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: devicetree, alsa-devel, Liam Girdwood, Rob Herring, linux-kernel, Tzung-Bi Shih, Mark Brown, Krzysztof Kozlowski, kernel, AngeloGioacchino Del Regno On Fri, 29 Apr 2022 16:30:38 -0400, Nícolas F. R. A. Prado wrote: > The rt1015p codec can be pointed to through a sound-dai property to be > used as part of a machine sound driver. dtc expects #sound-dai-cells to > be defined in the codec's node in those cases, so add it in the > dt-binding and set it to 0. > > Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> > --- > > Documentation/devicetree/bindings/sound/realtek,rt1015p.yaml | 3 +++ > 1 file changed, 3 insertions(+) > Acked-by: Rob Herring <robh@kernel.org> ^ permalink raw reply [flat|nested] 64+ messages in thread
* [PATCH 3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells 2022-04-29 20:30 ` Nícolas F. R. A. Prado @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado -1 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: kernel, AngeloGioacchino Del Regno, Nícolas F. R. A. Prado, Krzysztof Kozlowski, Liam Girdwood, Rob Herring, alsa-devel, devicetree, linux-kernel The rt5682 codec can be pointed to through a sound-dai property to be used as part of a machine sound driver. dtc expects #sound-dai-cells to be defined in the codec's node in those cases, so add it in the dt-binding and set it to 0. Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> --- Documentation/devicetree/bindings/sound/rt5682.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/sound/rt5682.txt b/Documentation/devicetree/bindings/sound/rt5682.txt index cd8c53d8497e..c5f2b8febcee 100644 --- a/Documentation/devicetree/bindings/sound/rt5682.txt +++ b/Documentation/devicetree/bindings/sound/rt5682.txt @@ -46,6 +46,8 @@ Optional properties: - realtek,dmic-clk-driving-high : Set the high driving of the DMIC clock out. +- #sound-dai-cells: Should be set to '<0>'. + Pins on the device (for linking into audio routes) for RT5682: * DMIC L1 -- 2.36.0 ^ permalink raw reply related [flat|nested] 64+ messages in thread
* [PATCH 3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells @ 2022-04-29 20:30 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-04-29 20:30 UTC (permalink / raw) To: Mark Brown Cc: devicetree, alsa-devel, Nícolas F. R. A. Prado, Liam Girdwood, linux-kernel, Rob Herring, Krzysztof Kozlowski, kernel, AngeloGioacchino Del Regno The rt5682 codec can be pointed to through a sound-dai property to be used as part of a machine sound driver. dtc expects #sound-dai-cells to be defined in the codec's node in those cases, so add it in the dt-binding and set it to 0. Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> --- Documentation/devicetree/bindings/sound/rt5682.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/sound/rt5682.txt b/Documentation/devicetree/bindings/sound/rt5682.txt index cd8c53d8497e..c5f2b8febcee 100644 --- a/Documentation/devicetree/bindings/sound/rt5682.txt +++ b/Documentation/devicetree/bindings/sound/rt5682.txt @@ -46,6 +46,8 @@ Optional properties: - realtek,dmic-clk-driving-high : Set the high driving of the DMIC clock out. +- #sound-dai-cells: Should be set to '<0>'. + Pins on the device (for linking into audio routes) for RT5682: * DMIC L1 -- 2.36.0 ^ permalink raw reply related [flat|nested] 64+ messages in thread
* Re: [PATCH 3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells 2022-04-29 20:30 ` Nícolas F. R. A. Prado @ 2022-05-04 20:39 ` Rob Herring -1 siblings, 0 replies; 64+ messages in thread From: Rob Herring @ 2022-05-04 20:39 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: devicetree, Mark Brown, Rob Herring, kernel, alsa-devel, AngeloGioacchino Del Regno, linux-kernel, Krzysztof Kozlowski, Liam Girdwood On Fri, 29 Apr 2022 16:30:39 -0400, Nícolas F. R. A. Prado wrote: > The rt5682 codec can be pointed to through a sound-dai property to be > used as part of a machine sound driver. dtc expects #sound-dai-cells to > be defined in the codec's node in those cases, so add it in the > dt-binding and set it to 0. > > Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> > --- > > Documentation/devicetree/bindings/sound/rt5682.txt | 2 ++ > 1 file changed, 2 insertions(+) > Acked-by: Rob Herring <robh@kernel.org> ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells @ 2022-05-04 20:39 ` Rob Herring 0 siblings, 0 replies; 64+ messages in thread From: Rob Herring @ 2022-05-04 20:39 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: devicetree, alsa-devel, linux-kernel, Rob Herring, Liam Girdwood, Mark Brown, Krzysztof Kozlowski, kernel, AngeloGioacchino Del Regno On Fri, 29 Apr 2022 16:30:39 -0400, Nícolas F. R. A. Prado wrote: > The rt5682 codec can be pointed to through a sound-dai property to be > used as part of a machine sound driver. dtc expects #sound-dai-cells to > be defined in the codec's node in those cases, so add it in the > dt-binding and set it to 0. > > Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com> > --- > > Documentation/devicetree/bindings/sound/rt5682.txt | 2 ++ > 1 file changed, 2 insertions(+) > Acked-by: Rob Herring <robh@kernel.org> ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada 2022-04-29 20:30 ` Nícolas F. R. A. Prado (?) (?) @ 2022-05-09 17:17 ` Mark Brown -1 siblings, 0 replies; 64+ messages in thread From: Mark Brown @ 2022-05-09 17:17 UTC (permalink / raw) To: nfraprado Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi On Fri, 29 Apr 2022 16:30:36 -0400, Nícolas F. R. A. Prado wrote: > These patches add properties that were missing on the dt-bindings of the > audio components used by mt8192-asurada. Namely the i2s-share > properties for the sound platform and the #sound-dai-cells on the > rt1015p and rt5682 codecs when they're referenced by the machine sound > node. > > > [...] Applied to https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next Thanks! [1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties commit: e056cf4341ae3f856f1e38da02b27cb04de4c69b [2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells commit: 2f45536587e53a7a22024e12fbe97ef13598e623 [3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells commit: 0adccaf1eac91a2c2ee6a54a6de042affe9860f4 All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted. You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed. If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced. Please add any relevant lists and maintainers to the CCs when replying to this mail. Thanks, Mark ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 17:17 ` Mark Brown 0 siblings, 0 replies; 64+ messages in thread From: Mark Brown @ 2022-05-09 17:17 UTC (permalink / raw) To: nfraprado Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi On Fri, 29 Apr 2022 16:30:36 -0400, Nícolas F. R. A. Prado wrote: > These patches add properties that were missing on the dt-bindings of the > audio components used by mt8192-asurada. Namely the i2s-share > properties for the sound platform and the #sound-dai-cells on the > rt1015p and rt5682 codecs when they're referenced by the machine sound > node. > > > [...] Applied to https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next Thanks! [1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties commit: e056cf4341ae3f856f1e38da02b27cb04de4c69b [2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells commit: 2f45536587e53a7a22024e12fbe97ef13598e623 [3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells commit: 0adccaf1eac91a2c2ee6a54a6de042affe9860f4 All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted. You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed. If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced. Please add any relevant lists and maintainers to the CCs when replying to this mail. Thanks, Mark _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 17:17 ` Mark Brown 0 siblings, 0 replies; 64+ messages in thread From: Mark Brown @ 2022-05-09 17:17 UTC (permalink / raw) To: nfraprado Cc: devicetree, alsa-devel, tzungbi, linux-kernel, jiaxin.yu, lgirdwood, shane.chien, robh+dt, linux-mediatek, krzysztof.kozlowski+dt, matthias.bgg, kernel, linux-arm-kernel, angelogioacchino.delregno On Fri, 29 Apr 2022 16:30:36 -0400, Nícolas F. R. A. Prado wrote: > These patches add properties that were missing on the dt-bindings of the > audio components used by mt8192-asurada. Namely the i2s-share > properties for the sound platform and the #sound-dai-cells on the > rt1015p and rt5682 codecs when they're referenced by the machine sound > node. > > > [...] Applied to https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next Thanks! [1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties commit: e056cf4341ae3f856f1e38da02b27cb04de4c69b [2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells commit: 2f45536587e53a7a22024e12fbe97ef13598e623 [3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells commit: 0adccaf1eac91a2c2ee6a54a6de042affe9860f4 All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted. You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed. If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced. Please add any relevant lists and maintainers to the CCs when replying to this mail. Thanks, Mark ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 17:17 ` Mark Brown 0 siblings, 0 replies; 64+ messages in thread From: Mark Brown @ 2022-05-09 17:17 UTC (permalink / raw) To: nfraprado Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi On Fri, 29 Apr 2022 16:30:36 -0400, Nícolas F. R. A. Prado wrote: > These patches add properties that were missing on the dt-bindings of the > audio components used by mt8192-asurada. Namely the i2s-share > properties for the sound platform and the #sound-dai-cells on the > rt1015p and rt5682 codecs when they're referenced by the machine sound > node. > > > [...] Applied to https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next Thanks! [1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties commit: e056cf4341ae3f856f1e38da02b27cb04de4c69b [2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells commit: 2f45536587e53a7a22024e12fbe97ef13598e623 [3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells commit: 0adccaf1eac91a2c2ee6a54a6de042affe9860f4 All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted. You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed. If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced. Please add any relevant lists and maintainers to the CCs when replying to this mail. Thanks, Mark _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada 2022-05-09 17:17 ` Mark Brown (?) (?) @ 2022-05-09 18:16 ` Nícolas F. R. A. Prado -1 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-09 18:16 UTC (permalink / raw) To: Mark Brown Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi On Mon, May 09, 2022 at 06:17:41PM +0100, Mark Brown wrote: > On Fri, 29 Apr 2022 16:30:36 -0400, Nícolas F. R. A. Prado wrote: > > These patches add properties that were missing on the dt-bindings of the > > audio components used by mt8192-asurada. Namely the i2s-share > > properties for the sound platform and the #sound-dai-cells on the > > rt1015p and rt5682 codecs when they're referenced by the machine sound > > node. > > > > > > [...] > > Applied to > > https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next > > Thanks! > > [1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties > commit: e056cf4341ae3f856f1e38da02b27cb04de4c69b > [2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells > commit: 2f45536587e53a7a22024e12fbe97ef13598e623 > [3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells > commit: 0adccaf1eac91a2c2ee6a54a6de042affe9860f4 Hi Mark, this series wasn't supposed to be merged yet, I'm in the process of preparing and sending a v2. Well, for patch 1 at least, which needs some improvements still. Patches 2 and 3 weren't going to be changed, so those would be fine to keep merged if you want. Thanks, Nícolas ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 18:16 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-09 18:16 UTC (permalink / raw) To: Mark Brown Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi On Mon, May 09, 2022 at 06:17:41PM +0100, Mark Brown wrote: > On Fri, 29 Apr 2022 16:30:36 -0400, Nícolas F. R. A. Prado wrote: > > These patches add properties that were missing on the dt-bindings of the > > audio components used by mt8192-asurada. Namely the i2s-share > > properties for the sound platform and the #sound-dai-cells on the > > rt1015p and rt5682 codecs when they're referenced by the machine sound > > node. > > > > > > [...] > > Applied to > > https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next > > Thanks! > > [1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties > commit: e056cf4341ae3f856f1e38da02b27cb04de4c69b > [2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells > commit: 2f45536587e53a7a22024e12fbe97ef13598e623 > [3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells > commit: 0adccaf1eac91a2c2ee6a54a6de042affe9860f4 Hi Mark, this series wasn't supposed to be merged yet, I'm in the process of preparing and sending a v2. Well, for patch 1 at least, which needs some improvements still. Patches 2 and 3 weren't going to be changed, so those would be fine to keep merged if you want. Thanks, Nícolas _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 18:16 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-09 18:16 UTC (permalink / raw) To: Mark Brown Cc: devicetree, alsa-devel, tzungbi, linux-kernel, jiaxin.yu, lgirdwood, shane.chien, robh+dt, linux-mediatek, krzysztof.kozlowski+dt, matthias.bgg, kernel, linux-arm-kernel, angelogioacchino.delregno On Mon, May 09, 2022 at 06:17:41PM +0100, Mark Brown wrote: > On Fri, 29 Apr 2022 16:30:36 -0400, Nícolas F. R. A. Prado wrote: > > These patches add properties that were missing on the dt-bindings of the > > audio components used by mt8192-asurada. Namely the i2s-share > > properties for the sound platform and the #sound-dai-cells on the > > rt1015p and rt5682 codecs when they're referenced by the machine sound > > node. > > > > > > [...] > > Applied to > > https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next > > Thanks! > > [1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties > commit: e056cf4341ae3f856f1e38da02b27cb04de4c69b > [2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells > commit: 2f45536587e53a7a22024e12fbe97ef13598e623 > [3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells > commit: 0adccaf1eac91a2c2ee6a54a6de042affe9860f4 Hi Mark, this series wasn't supposed to be merged yet, I'm in the process of preparing and sending a v2. Well, for patch 1 at least, which needs some improvements still. Patches 2 and 3 weren't going to be changed, so those would be fine to keep merged if you want. Thanks, Nícolas ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 18:16 ` Nícolas F. R. A. Prado 0 siblings, 0 replies; 64+ messages in thread From: Nícolas F. R. A. Prado @ 2022-05-09 18:16 UTC (permalink / raw) To: Mark Brown Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi On Mon, May 09, 2022 at 06:17:41PM +0100, Mark Brown wrote: > On Fri, 29 Apr 2022 16:30:36 -0400, Nícolas F. R. A. Prado wrote: > > These patches add properties that were missing on the dt-bindings of the > > audio components used by mt8192-asurada. Namely the i2s-share > > properties for the sound platform and the #sound-dai-cells on the > > rt1015p and rt5682 codecs when they're referenced by the machine sound > > node. > > > > > > [...] > > Applied to > > https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next > > Thanks! > > [1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties > commit: e056cf4341ae3f856f1e38da02b27cb04de4c69b > [2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells > commit: 2f45536587e53a7a22024e12fbe97ef13598e623 > [3/3] ASoC: dt-bindings: rt5682: Add #sound-dai-cells > commit: 0adccaf1eac91a2c2ee6a54a6de042affe9860f4 Hi Mark, this series wasn't supposed to be merged yet, I'm in the process of preparing and sending a v2. Well, for patch 1 at least, which needs some improvements still. Patches 2 and 3 weren't going to be changed, so those would be fine to keep merged if you want. Thanks, Nícolas _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada 2022-05-09 18:16 ` Nícolas F. R. A. Prado (?) (?) @ 2022-05-09 18:19 ` Mark Brown -1 siblings, 0 replies; 64+ messages in thread From: Mark Brown @ 2022-05-09 18:19 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi [-- Attachment #1: Type: text/plain, Size: 442 bytes --] On Mon, May 09, 2022 at 02:16:29PM -0400, Nícolas F. R. A. Prado wrote: > this series wasn't supposed to be merged yet, I'm in the process of preparing > and sending a v2. Well, for patch 1 at least, which needs some improvements > still. Patches 2 and 3 weren't going to be changed, so those would be fine to > keep merged if you want. Please send a revert for the first patch with appropriate changelog if you want it dropping. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 18:19 ` Mark Brown 0 siblings, 0 replies; 64+ messages in thread From: Mark Brown @ 2022-05-09 18:19 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi [-- Attachment #1.1: Type: text/plain, Size: 442 bytes --] On Mon, May 09, 2022 at 02:16:29PM -0400, Nícolas F. R. A. Prado wrote: > this series wasn't supposed to be merged yet, I'm in the process of preparing > and sending a v2. Well, for patch 1 at least, which needs some improvements > still. Patches 2 and 3 weren't going to be changed, so those would be fine to > keep merged if you want. Please send a revert for the first patch with appropriate changelog if you want it dropping. [-- Attachment #1.2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --] [-- Attachment #2: Type: text/plain, Size: 176 bytes --] _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 18:19 ` Mark Brown 0 siblings, 0 replies; 64+ messages in thread From: Mark Brown @ 2022-05-09 18:19 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: devicetree, alsa-devel, tzungbi, linux-kernel, jiaxin.yu, lgirdwood, shane.chien, robh+dt, linux-mediatek, krzysztof.kozlowski+dt, matthias.bgg, kernel, linux-arm-kernel, angelogioacchino.delregno [-- Attachment #1: Type: text/plain, Size: 442 bytes --] On Mon, May 09, 2022 at 02:16:29PM -0400, Nícolas F. R. A. Prado wrote: > this series wasn't supposed to be merged yet, I'm in the process of preparing > and sending a v2. Well, for patch 1 at least, which needs some improvements > still. Patches 2 and 3 weren't going to be changed, so those would be fine to > keep merged if you want. Please send a revert for the first patch with appropriate changelog if you want it dropping. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 64+ messages in thread
* Re: [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada @ 2022-05-09 18:19 ` Mark Brown 0 siblings, 0 replies; 64+ messages in thread From: Mark Brown @ 2022-05-09 18:19 UTC (permalink / raw) To: Nícolas F. R. A. Prado Cc: matthias.bgg, devicetree, krzysztof.kozlowski+dt, jiaxin.yu, angelogioacchino.delregno, linux-kernel, shane.chien, linux-mediatek, lgirdwood, linux-arm-kernel, alsa-devel, robh+dt, kernel, tzungbi [-- Attachment #1.1: Type: text/plain, Size: 442 bytes --] On Mon, May 09, 2022 at 02:16:29PM -0400, Nícolas F. R. A. Prado wrote: > this series wasn't supposed to be merged yet, I'm in the process of preparing > and sending a v2. Well, for patch 1 at least, which needs some improvements > still. Patches 2 and 3 weren't going to be changed, so those would be fine to > keep merged if you want. Please send a revert for the first patch with appropriate changelog if you want it dropping. [-- Attachment #1.2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --] [-- Attachment #2: Type: text/plain, Size: 170 bytes --] _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek ^ permalink raw reply [flat|nested] 64+ messages in thread
end of thread, other threads:[~2022-05-09 18:20 UTC | newest] Thread overview: 64+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2022-04-29 20:30 [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada Nícolas F. R. A. Prado 2022-04-29 20:30 ` Nícolas F. R. A. Prado 2022-04-29 20:30 ` Nícolas F. R. A. Prado 2022-04-29 20:30 ` Nícolas F. R. A. Prado 2022-04-29 20:30 ` [PATCH 1/3] ASoC: dt-bindings: mediatek: mt8192: Add i2s-share properties Nícolas F. R. A. Prado 2022-04-29 20:30 ` Nícolas F. R. A. Prado 2022-04-29 20:30 ` Nícolas F. R. A. Prado 2022-04-29 20:30 ` Nícolas F. R. A. Prado 2022-05-04 20:38 ` Rob Herring 2022-05-04 20:38 ` Rob Herring 2022-05-04 20:38 ` Rob Herring 2022-05-04 20:38 ` Rob Herring 2022-05-05 2:13 ` Jiaxin Yu 2022-05-05 2:13 ` Jiaxin Yu 2022-05-05 2:13 ` Jiaxin Yu 2022-05-05 2:13 ` Jiaxin Yu 2022-05-05 8:08 ` AngeloGioacchino Del Regno 2022-05-05 8:08 ` AngeloGioacchino Del Regno 2022-05-05 8:08 ` AngeloGioacchino Del Regno 2022-05-05 8:08 ` AngeloGioacchino Del Regno 2022-05-05 8:48 ` Jiaxin Yu 2022-05-05 8:48 ` Jiaxin Yu 2022-05-05 8:48 ` Jiaxin Yu 2022-05-05 8:48 ` Jiaxin Yu 2022-05-05 8:52 ` AngeloGioacchino Del Regno 2022-05-05 8:52 ` AngeloGioacchino Del Regno 2022-05-05 8:52 ` AngeloGioacchino Del Regno 2022-05-05 8:52 ` AngeloGioacchino Del Regno 2022-05-05 16:25 ` Nícolas F. R. A. Prado 2022-05-05 16:25 ` Nícolas F. R. A. Prado 2022-05-05 16:25 ` Nícolas F. R. A. Prado 2022-05-05 16:25 ` Nícolas F. R. A. Prado 2022-05-06 5:45 ` Jiaxin Yu 2022-05-06 5:45 ` Jiaxin Yu 2022-05-06 5:45 ` Jiaxin Yu 2022-05-06 5:45 ` Jiaxin Yu 2022-05-06 14:09 ` Nícolas F. R. A. Prado 2022-05-06 14:09 ` Nícolas F. R. A. Prado 2022-05-06 14:09 ` Nícolas F. R. A. Prado 2022-05-06 14:09 ` Nícolas F. R. A. Prado 2022-05-06 14:44 ` Jiaxin Yu 2022-05-06 14:44 ` Jiaxin Yu 2022-05-06 14:44 ` Jiaxin Yu 2022-05-06 14:44 ` Jiaxin Yu 2022-04-29 20:30 ` [PATCH 2/3] ASoC: dt-bindings: rt1015p: Add #sound-dai-cells Nícolas F. R. A. Prado 2022-04-29 20:30 ` Nícolas F. R. A. Prado 2022-05-04 20:39 ` Rob Herring 2022-05-04 20:39 ` Rob Herring 2022-04-29 20:30 ` [PATCH 3/3] ASoC: dt-bindings: rt5682: " Nícolas F. R. A. Prado 2022-04-29 20:30 ` Nícolas F. R. A. Prado 2022-05-04 20:39 ` Rob Herring 2022-05-04 20:39 ` Rob Herring 2022-05-09 17:17 ` [PATCH 0/3] Add missing dt-binding properties for audio components on mt8192-asurada Mark Brown 2022-05-09 17:17 ` Mark Brown 2022-05-09 17:17 ` Mark Brown 2022-05-09 17:17 ` Mark Brown 2022-05-09 18:16 ` Nícolas F. R. A. Prado 2022-05-09 18:16 ` Nícolas F. R. A. Prado 2022-05-09 18:16 ` Nícolas F. R. A. Prado 2022-05-09 18:16 ` Nícolas F. R. A. Prado 2022-05-09 18:19 ` Mark Brown 2022-05-09 18:19 ` Mark Brown 2022-05-09 18:19 ` Mark Brown 2022-05-09 18:19 ` Mark Brown
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.