diff mbox series

[v2,1/1] ASoC: dt-bindings: tlv320aic32x4: convert to DT schema format

Message ID 20230616083549.2331830-1-alexander.stein@ew.tq-group.com (mailing list archive)
State Accepted
Commit 289650d61c600ac4f631028c761f38042ba599c8
Headers show
Series [v2,1/1] ASoC: dt-bindings: tlv320aic32x4: convert to DT schema format | expand

Commit Message

Alexander Stein June 16, 2023, 8:35 a.m. UTC
Convert the binding to DT schema format.
Since commit 514b044cba667 ("ASoC: tlv320aic32x4: Model PLL in CCF")
clocks & clock-names = "mclk" is mandatory, it has been added to required
properties as well. '#sound-dai-cells' is added for reference from
simple-audio-card.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
Changes in v2:
* Rebased onto for-next of [1]
* Add vendor prefix 'ti' to file name
* Simplify 'reg' property
* Removed description from 'reset-gpios'
* Added reference to dai-common.yaml
* Fixed node name in example

There is no in-tree user for aic32x4-gpio-func, so I just converted the
bindings to YAML and skipped introducing a dt-binding header for
defining the constants.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git/log/

 .../bindings/sound/ti,tlv320aic32x4.yaml      | 101 ++++++++++++++++++
 .../bindings/sound/tlv320aic32x4.txt          |  42 --------
 2 files changed, 101 insertions(+), 42 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/ti,tlv320aic32x4.yaml
 delete mode 100644 Documentation/devicetree/bindings/sound/tlv320aic32x4.txt

Comments

Krzysztof Kozlowski June 16, 2023, 9:34 a.m. UTC | #1
On 16/06/2023 10:35, Alexander Stein wrote:
> Convert the binding to DT schema format.
> Since commit 514b044cba667 ("ASoC: tlv320aic32x4: Model PLL in CCF")
> clocks & clock-names = "mclk" is mandatory, it has been added to required
> properties as well. '#sound-dai-cells' is added for reference from
> simple-audio-card.
> 
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> ---


Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof
Mark Brown June 16, 2023, 11:54 a.m. UTC | #2
On Fri, Jun 16, 2023 at 10:35:49AM +0200, Alexander Stein wrote:
> Convert the binding to DT schema format.
> Since commit 514b044cba667 ("ASoC: tlv320aic32x4: Model PLL in CCF")
> clocks & clock-names = "mclk" is mandatory, it has been added to required
> properties as well. '#sound-dai-cells' is added for reference from
> simple-audio-card.

This doesn't apply against current code, please check and resend.  This
should be an incremental patch perhaps?
Alexander Stein June 16, 2023, 12:17 p.m. UTC | #3
Hi Mark,

Am Freitag, 16. Juni 2023, 13:54:49 CEST schrieb Mark Brown:
> On Fri, Jun 16, 2023 at 10:35:49AM +0200, Alexander Stein wrote:
> > Convert the binding to DT schema format.
> > Since commit 514b044cba667 ("ASoC: tlv320aic32x4: Model PLL in CCF")
> > clocks & clock-names = "mclk" is mandatory, it has been added to required
> > properties as well. '#sound-dai-cells' is added for reference from
> > simple-audio-card.
> 
> This doesn't apply against current code, please check and resend.  This
> should be an incremental patch perhaps?

Is there any change to original .txt file I am not aware of? The to be created 
.yaml file is new, so there is no increment.
To which base/branch/tag should I rebase this?

Thanks and best regards,
Alexander
Mark Brown June 16, 2023, 12:21 p.m. UTC | #4
On Fri, Jun 16, 2023 at 02:17:40PM +0200, Alexander Stein wrote:
> Am Freitag, 16. Juni 2023, 13:54:49 CEST schrieb Mark Brown:

> > This doesn't apply against current code, please check and resend.  This
> > should be an incremental patch perhaps?

> Is there any change to original .txt file I am not aware of? The to be created 
> .yaml file is new, so there is no increment.

That'll be the issue, yes.

> To which base/branch/tag should I rebase this?

As ever

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
Alexander Stein June 16, 2023, 12:24 p.m. UTC | #5
Hi Mark,

Am Freitag, 16. Juni 2023, 14:21:29 CEST schrieb Mark Brown:
> On Fri, Jun 16, 2023 at 02:17:40PM +0200, Alexander Stein wrote:
> > Am Freitag, 16. Juni 2023, 13:54:49 CEST schrieb Mark Brown:
> > > This doesn't apply against current code, please check and resend.  This
> > > should be an incremental patch perhaps?
> > 
> > Is there any change to original .txt file I am not aware of? The to be
> > created .yaml file is new, so there is no increment.
> 
> That'll be the issue, yes.

Ok, there is nothing I can do, right?

> > To which base/branch/tag should I rebase this?
> 
> As ever
> 
>    https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git
> for-next

As mentioned in the changelog, that's already the case.

Thanks and best regards,
Alexander
Mark Brown June 16, 2023, 12:30 p.m. UTC | #6
On Fri, Jun 16, 2023 at 02:24:17PM +0200, Alexander Stein wrote:
> Am Freitag, 16. Juni 2023, 14:21:29 CEST schrieb Mark Brown:

> > That'll be the issue, yes.

> Ok, there is nothing I can do, right?

You could check for dependencies and tell me about them.  For example in
this case it turns out the issue is that there's a fix to add supply
names that went in which is only on my fixes branch.
Alexander Stein June 16, 2023, 1:22 p.m. UTC | #7
Am Freitag, 16. Juni 2023, 14:30:37 CEST schrieb Mark Brown:
> On Fri, Jun 16, 2023 at 02:24:17PM +0200, Alexander Stein wrote:
> > Am Freitag, 16. Juni 2023, 14:21:29 CEST schrieb Mark Brown:
> > > That'll be the issue, yes.
> > 
> > Ok, there is nothing I can do, right?
> 
> You could check for dependencies and tell me about them.  For example in
> this case it turns out the issue is that there's a fix to add supply
> names that went in which is only on my fixes branch.

You are referring to [1]? That's part of next-branch since next-20230523. So 
this patch should apply on top without conflicts., e.g. today's https://
git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next.

Best regards,
Alexander

[1] https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git/commit/?
id=3a2e3fa795052b42da013931bc2e451bcecf4f0c
Mark Brown June 16, 2023, 1:37 p.m. UTC | #8
On Fri, Jun 16, 2023 at 03:22:31PM +0200, Alexander Stein wrote:
> Am Freitag, 16. Juni 2023, 14:30:37 CEST schrieb Mark Brown:

> > You could check for dependencies and tell me about them.  For example in
> > this case it turns out the issue is that there's a fix to add supply
> > names that went in which is only on my fixes branch.

> You are referring to [1]? That's part of next-branch since next-20230523. So 
> this patch should apply on top without conflicts., e.g. today's https://
> git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next.

So, I actually apply on for-6.x branches (which change regularly so I
tend to just tell people to use for-next as it works most of the time).
In this case you've got a dependency on something which is only in the
fixes branch, that'd be what'd be good to surface.
Mark Brown June 16, 2023, 4:17 p.m. UTC | #9
On Fri, 16 Jun 2023 10:35:49 +0200, Alexander Stein wrote:
> Convert the binding to DT schema format.
> Since commit 514b044cba667 ("ASoC: tlv320aic32x4: Model PLL in CCF")
> clocks & clock-names = "mclk" is mandatory, it has been added to required
> properties as well. '#sound-dai-cells' is added for reference from
> simple-audio-card.
> 
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[1/1] ASoC: dt-bindings: tlv320aic32x4: convert to DT schema format
      commit: 289650d61c600ac4f631028c761f38042ba599c8

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
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/sound/ti,tlv320aic32x4.yaml b/Documentation/devicetree/bindings/sound/ti,tlv320aic32x4.yaml
new file mode 100644
index 0000000000000..a7cc9aa344684
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/ti,tlv320aic32x4.yaml
@@ -0,0 +1,101 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (C) 2019 Texas Instruments Incorporated
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/ti,tlv320aic32x4.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments TLV320AIC32x4 Stereo Audio codec
+
+maintainers:
+  - Alexander Stein <alexander.stein@ew.tq-group.com>
+
+description: |
+  The TLV320AIC32x4 audio codec can be accessed using I2C or SPI
+
+properties:
+  compatible:
+    enum:
+      - ti,tas2505
+      - ti,tlv320aic32x4
+      - ti,tlv320aic32x6
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: Master clock
+
+  clock-names:
+    items:
+      - const: mclk
+
+  av-supply:
+    description: Analog core power supply
+
+  dv-supply:
+    description: Digital core power supply
+
+  iov-supply:
+    description: Digital IO power supply
+
+  ldoin-supply:
+    description: LDO power supply
+
+  reset-gpios:
+    maxItems: 1
+
+  '#sound-dai-cells':
+    const: 0
+
+  aic32x4-gpio-func:
+    description: |
+       GPIO function configuration for pins MFP1-MFP5.
+       Types are defined in include/sound/tlv320aic32x4.h
+    $ref: /schemas/types.yaml#/definitions/uint32-array
+    minItems: 5
+    maxItems: 5
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - clock-names
+  - iov-supply
+
+allOf:
+  - $ref: dai-common.yaml#
+  - if:
+      not:
+        required:
+          - ldoin-supply
+    then:
+      required:
+        - av-supply
+        - dv-supply
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+    i2c {
+      #address-cells = <1>;
+      #size-cells = <0>;
+      audio-codec@18 {
+        compatible = "ti,tlv320aic32x4";
+        reg = <0x18>;
+        iov-supply = <&reg_3v3>;
+        ldoin-supply = <&reg_3v3>;
+        clocks = <&clks 201>;
+        clock-names = "mclk";
+        aic32x4-gpio-func= <
+          0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
+          0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
+          0x04 /* MFP3 AIC32X4_MFP3_GPIO_ENABLED */
+          0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
+          0x08 /* MFP5 AIC32X4_MFP5_GPIO_INPUT */
+        >;
+      };
+    };
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt b/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt
deleted file mode 100644
index 0b4e21bde5bc1..0000000000000
--- a/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt
+++ /dev/null
@@ -1,42 +0,0 @@ 
-Texas Instruments - tlv320aic32x4 Codec module
-
-The tlv320aic32x4 serial control bus communicates through I2C protocols
-
-Required properties:
- - compatible - "string" - One of:
-	"ti,tlv320aic32x4" TLV320AIC3204
-	"ti,tlv320aic32x6" TLV320AIC3206, TLV320AIC3256
-	"ti,tas2505" TAS2505, TAS2521
- - reg: I2C slave address
- - *-supply: Required supply regulators are:
-    "iov" - digital IO power supply
-    "ldoin" - LDO power supply
-    "dv" - Digital core power supply
-    "av" - Analog core power supply
-    If you supply ldoin, dv and av are optional. Otherwise they are required
-   See regulator/regulator.txt for more information about the detailed binding
-   format.
-
-Optional properties:
- - reset-gpios: Reset-GPIO phandle with args as described in gpio/gpio.txt
- - clocks/clock-names: Clock named 'mclk' for the master clock of the codec.
-   See clock/clock-bindings.txt for information about the detailed format.
- - aic32x4-gpio-func - <array of 5 int>
-	- Types are defined in include/sound/tlv320aic32x4.h
-
-
-Example:
-
-codec: tlv320aic32x4@18 {
-	compatible = "ti,tlv320aic32x4";
-	reg = <0x18>;
-	clocks = <&clks 201>;
-	clock-names = "mclk";
-	aic32x4-gpio-func= <
-			0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
-			0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
-			0x04 /* MFP3 AIC32X4_MFP3_GPIO_ENABLED */
-			0xff /* AIC32X4_MFPX_DEFAULT_VALUE */
-			0x08 /* MFP5 AIC32X4_MFP5_GPIO_INPUT */
-		>;
-};