Re: [PATCH v3] dt-bindings: mfd: Convert TI TWL6040 to DT schema
From: Rob Herring
Date: Mon Aug 31 2026 - 11:37:39 EST
On Mon, Aug 17, 2026 at 10:02:07AM +0000, Eduard Bostina wrote:
> Convert the Texas Instruments TWL6040 audio codecs family bindings to DT
> schema.
>
> During the conversion, the following updates were made:
> - Changed 'twl6040,audpwron-gpio' to 'ti,audpwron-gpio', which was
> misnamed in the old txt binding.
> - Made 'gpio-controller', '#gpio-cells', and 'ti,audpwron-gpio' optional
> because modern platforms do not require them.
> - Renamed the vibra 'vddvibl_uV'/'vddvibr_uV' properties to
> 'ti,vddvibl-uV'/'ti,vddvibr-uV', the names actually read by the
> twl6040-vibra driver.
> - Required 'vddvibl-supply' and 'vddvibr-supply' when the 'vibra' child
> node is present, since the twl6040-vibra driver unconditionally
> requests both.
>
> Signed-off-by: Eduard Bostina <egbostina@xxxxxxxxx>
> ---
> Changes in v3:
> - Required 'vddvibl-supply' and 'vddvibr-supply' when the 'vibra' child
> node is present, since the twl6040-vibra driver requests both
> unconditionally.
>
> Link to v2: https://lore.kernel.org/all/20260816092847.2522994-1-egbostina@xxxxxxxxx/
> Link to v1: https://lore.kernel.org/all/20260815083451.2147129-1-egbostina@xxxxxxxxx/
>
> .../devicetree/bindings/mfd/ti,twl6040.yaml | 151 ++++++++++++++++++
> .../devicetree/bindings/mfd/twl6040.txt | 67 --------
> 2 files changed, 151 insertions(+), 67 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/mfd/ti,twl6040.yaml
> delete mode 100644 Documentation/devicetree/bindings/mfd/twl6040.txt
>
> diff --git a/Documentation/devicetree/bindings/mfd/ti,twl6040.yaml b/Documentation/devicetree/bindings/mfd/ti,twl6040.yaml
> new file mode 100644
> index 000000000000..0d4e620d25a5
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/ti,twl6040.yaml
> @@ -0,0 +1,151 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/ti,twl6040.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments TWL6040 family audio codec
> +
> +maintainers:
> + - Eduard Bostina <egbostina@xxxxxxxxx>
> +
> +description:
> + The TWL6040s are 8-channel high quality low-power audio codecs providing
> + audio, vibra and GPO functionality on OMAP4+ platforms. They are connected
> + to the host processor via i2c for commands, McPDM for audio data and
> + commands.
> +
> +properties:
> + compatible:
> + enum:
> + - ti,twl6040
> + - ti,twl6041
> +
> + reg:
> + const: 0x4b
> +
> + interrupts:
> + maxItems: 1
> +
> + gpio-controller: true
> +
> + "#gpio-cells":
> + const: 1
> +
> + "#clock-cells":
> + const: 0
> +
> + ti,audpwron-gpio:
> + maxItems: 1
> + description: Power on GPIO line for the twl6040
> +
> + vio-supply:
> + description: Regulator for the twl6040 VIO supply
> +
> + v2v1-supply:
> + description: Regulator for the twl6040 V2V1 supply
> +
> + enable-active-high:
> + type: boolean
> + description: To power on the twl6040 during boot.
> +
> + clocks:
> + minItems: 1
> + maxItems: 2
> +
> + clock-names:
> + minItems: 1
> + maxItems: 2
> + items:
> + enum:
> + - clk32k
> + - mclk
> +
> + vddvibl-supply:
> + description: Regulator for the left vibra motor
> +
> + vddvibr-supply:
> + description: Regulator for the right vibra motor
> +
> + vibra:
> + type: object
> + additionalProperties: false
blank line
> + properties:
> + ti,vibldrv-res:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Resistance parameter for left driver
blank line
> + ti,vibrdrv-res:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Resistance parameter for right driver
and so on...
With those fixes,
Reviewed-by: Rob Herring (Arm) <robh@xxxxxxxxxx>
> + ti,viblmotor-res:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Resistance parameter for left motor
> + ti,vibrmotor-res:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: Resistance parameter for right motor
> + ti,vddvibl-uV:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: vddvibl default voltage if it needs to be changed
> + ti,vddvibr-uV:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: vddvibr default voltage if it needs to be changed