[PATCH 1/1] ASoC: dt-bindings: tlv320aic32x4: convert to DT schema format
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 --- 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.
.../bindings/sound/tlv320aic32x4.txt | 42 ------- .../bindings/sound/tlv320aic32x4.yaml | 103 ++++++++++++++++++ 2 files changed, 103 insertions(+), 42 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/tlv320aic32x4.txt create mode 100644 Documentation/devicetree/bindings/sound/tlv320aic32x4.yaml
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 */ - >; -}; diff --git a/Documentation/devicetree/bindings/sound/tlv320aic32x4.yaml b/Documentation/devicetree/bindings/sound/tlv320aic32x4.yaml new file mode 100644 index 0000000000000..ebf84cdcb68d5 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tlv320aic32x4.yaml @@ -0,0 +1,103 @@ +# 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/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: + description: | + I2C address or SPI chip select of the device + + 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 + description: | + GPIO used for hardware reset + + '#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 + +additionalProperties: false + +allOf: + - if: + not: + required: + - ldoin-supply + then: + required: + - av-supply + - dv-supply + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + codec: tlv320aic32x4@18 { + compatible = "ti,tlv320aic32x4"; + reg = <0x18>; + iov-supply = <®_3v3>; + ldoin-supply = <®_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 */ + >; + }; + };
On Thu, Jun 08, 2023 at 10:15:47AM +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.
On 08/06/2023 10:15, 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
- 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.yaml b/Documentation/devicetree/bindings/sound/tlv320aic32x4.yaml new file mode 100644 index 0000000000000..ebf84cdcb68d5 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tlv320aic32x4.yaml
Filename based on compatibles, so at least vendor prefix missing.
@@ -0,0 +1,103 @@ +# 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/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:
- description: |
I2C address or SPI chip select of the device
Drop description. Instead missing maxItems.
- 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
- description: |
GPIO used for hardware reset
Drop description, it's obvious.
- '#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 goes here. Missing ref to dai-common.
+additionalProperties: false
+allOf:
- if:
not:
required:
- ldoin-supply
- then:
required:
- av-supply
- dv-supply
+examples:
- |
- #include <dt-bindings/gpio/gpio.h>
- i2c {
#address-cells = <1>;
#size-cells = <0>;
codec: tlv320aic32x4@18 {
Node names should be generic. See also explanation and list of examples in DT specification: https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetre...
compatible = "ti,tlv320aic32x4";
reg = <0x18>;
Best regards, Krzysztof
On Thu, 08 Jun 2023 10:15:47 +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
participants (3)
-
Alexander Stein
-
Krzysztof Kozlowski
-
Mark Brown