From: Jihed Chaibi <jihed.chaibi.dev@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: andreas@kemnade.info, peter.ujfalusi@gmail.com,
dmitry.torokhov@gmail.com, robh@kernel.org, krzk+dt@kernel.org,
lgirdwood@gmail.com, tiwai@suse.com, conor+dt@kernel.org,
lee@kernel.org, ukleinek@kernel.org, broonie@kernel.org,
gregkh@linuxfoundation.org, linux-input@vger.kernel.org,
devicetree@vger.kernel.org, linux-pwm@vger.kernel.org,
linux-sound@vger.kernel.org, linux-usb@vger.kernel.org,
shuah@kernel.org, jihed.chaibi.dev@gmail.com
Subject: [PATCH v2 2/9] mfd: dt-bindings: ti,twl6040: convert to DT schema
Date: Thu, 14 Aug 2025 15:21:22 +0200 [thread overview]
Message-ID: <20250814132129.138943-3-jihed.chaibi.dev@gmail.com> (raw)
In-Reply-To: <20250814132129.138943-1-jihed.chaibi.dev@gmail.com>
Convert the legacy TXT binding for the TWL6040 MFD to the modern YAML
DT schema format. This adds formal validation and improves documentation
for the TWL6040/TWL6041 audio codec, which provides audio, vibra, and GPO
functionality on OMAP4+ platforms.
Changes in v2:
- Renamed twl6040,audpwron-gpio to ti,audpwron-gpio for consistency
with TI naming, this fixes the dt_binding_check vendor name error.
- Minor description clarifications for improved readability.
Signed-off-by: Jihed Chaibi <jihed.chaibi.dev@gmail.com>
---
.../devicetree/bindings/mfd/ti,twl6040.yaml | 155 ++++++++++++++++++
.../devicetree/bindings/mfd/twl6040.txt | 67 --------
2 files changed, 155 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 000000000..7365e4c04
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/ti,twl6040.yaml
@@ -0,0 +1,155 @@
+# 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/TWL6041 Audio Codec
+
+maintainers:
+ - Peter Ujfalusi <peter.ujfalusi@gmail.com>
+
+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':
+ description: TWL6040 is a provider of PDMCLK which is used by McPDM.
+ const: 0
+
+ ti,audpwron-gpio:
+ description: The GPIO specifier for the audio power-on line.
+ maxItems: 1
+
+ vio-supply:
+ description: Regulator for the VIO supply.
+
+ v2v1-supply:
+ description: Regulator for the V2V1 supply.
+
+ enable-active-high:
+ type: boolean
+ description: If present, powers on the device during boot.
+
+ clocks:
+ minItems: 1
+ maxItems: 2
+
+ clock-names:
+ minItems: 1
+ maxItems: 2
+ items:
+ enum: [clk32k, mclk]
+
+ # Vibra functionality :
+
+ vddvibl-supply:
+ description: Regulator for the left vibra motor supply.
+
+ vddvibr-supply:
+ description: Regulator for the right vibra motor supply.
+
+ vibra:
+ type: object
+ description: Node for vibra motor configuration parameters.
+ properties:
+ ti,vibldrv-res:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Resistance parameter for the left driver.
+
+ ti,vibrdrv-res:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Resistance parameter for the right driver.
+
+ ti,viblmotor-res:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Resistance parameter for the left motor.
+
+ ti,vibrmotor-res:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Resistance parameter for the right motor.
+
+ vddvibl_uV:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Optional override for the VDDVIBL default voltage (in uV).
+
+ vddvibr_uV:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Optional override for the VDDVIBR default voltage (in uV).
+ required:
+ - ti,vibldrv-res
+ - ti,vibrdrv-res
+ - ti,viblmotor-res
+ - ti,vibrmotor-res
+ additionalProperties: false
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - gpio-controller
+ - '#gpio-cells'
+ - '#clock-cells'
+ - ti,audpwron-gpio
+ - vio-supply
+ - v2v1-supply
+ - vddvibl-supply
+ - vddvibr-supply
+ - vibra
+
+additionalProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ twl6040: twl@4b {
+ compatible = "ti,twl6040";
+ reg = <0x4b>;
+
+ interrupts = <0 119 4>;
+ interrupt-parent = <&gic>;
+
+ gpio-controller;
+ #gpio-cells = <1>;
+ #clock-cells = <0>;
+ ti,audpwron-gpio = <&gpio4 31 0>;
+
+ vio-supply = <&v1v8>;
+ v2v1-supply = <&v2v1>;
+ enable-active-high;
+
+ /* regulators for vibra motor */
+ vddvibl-supply = <&vbat>;
+ vddvibr-supply = <&vbat>;
+
+ vibra {
+ /* Vibra driver, motor resistance parameters */
+ ti,vibldrv-res = <8>;
+ ti,vibrdrv-res = <3>;
+ ti,viblmotor-res = <10>;
+ ti,vibrmotor-res = <10>;
+ };
+ };
+ };
diff --git a/Documentation/devicetree/bindings/mfd/twl6040.txt b/Documentation/devicetree/bindings/mfd/twl6040.txt
deleted file mode 100644
index dfd8683ed..000000000
--- a/Documentation/devicetree/bindings/mfd/twl6040.txt
+++ /dev/null
@@ -1,67 +0,0 @@
-Texas Instruments TWL6040 family
-
-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.
-
-Required properties:
-- compatible : "ti,twl6040" for twl6040, "ti,twl6041" for twl6041
-- reg: must be 0x4b for i2c address
-- interrupts: twl6040 has one interrupt line connecteded to the main SoC
-- gpio-controller:
-- #gpio-cells = <1>: twl6040 provides GPO lines.
-- #clock-cells = <0>; twl6040 is a provider of pdmclk which is used by McPDM
-- twl6040,audpwron-gpio: Power on GPIO line for the twl6040
-
-- vio-supply: Regulator for the twl6040 VIO supply
-- v2v1-supply: Regulator for the twl6040 V2V1 supply
-
-Optional properties, nodes:
-- enable-active-high: To power on the twl6040 during boot.
-- clocks: phandle to the clk32k and/or to mclk clock provider
-- clock-names: Must be "clk32k" for the 32K clock and "mclk" for the MCLK.
-
-Vibra functionality
-Required properties:
-- vddvibl-supply: Regulator for the left vibra motor
-- vddvibr-supply: Regulator for the right vibra motor
-- vibra { }: Configuration section for vibra parameters containing the following
- properties:
-- ti,vibldrv-res: Resistance parameter for left driver
-- ti,vibrdrv-res: Resistance parameter for right driver
-- ti,viblmotor-res: Resistance parameter for left motor
-- ti,viblmotor-res: Resistance parameter for right motor
-
-Optional properties within vibra { } section:
-- vddvibl_uV: If the vddvibl default voltage need to be changed
-- vddvibr_uV: If the vddvibr default voltage need to be changed
-
-Example:
-&i2c1 {
- twl6040: twl@4b {
- compatible = "ti,twl6040";
-
- interrupts = <0 119 4>;
- interrupt-parent = <&gic>;
- twl6040,audpwron-gpio = <&gpio4 31 0>;
-
- vio-supply = <&v1v8>;
- v2v1-supply = <&v2v1>;
- enable-active-high;
-
- /* regulators for vibra motor */
- vddvibl-supply = <&vbat>;
- vddvibr-supply = <&vbat>;
-
- vibra {
- /* Vibra driver, motor resistance parameters */
- ti,vibldrv-res = <8>;
- ti,vibrdrv-res = <3>;
- ti,viblmotor-res = <10>;
- ti,vibrmotor-res = <10>;
- };
- };
-};
-
-/include/ "twl6040.dtsi"
--
2.39.5
next prev parent reply other threads:[~2025-08-14 13:21 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-14 13:21 [PATCH v2 0/9] dt-bindings: Convert TWL4030/6040 family binding to DT schema Jihed Chaibi
2025-08-14 13:21 ` [PATCH v2 1/9] mfd: dt-bindings: ti,twl4030-audio: convert " Jihed Chaibi
2025-08-14 13:21 ` Jihed Chaibi [this message]
2025-08-14 14:27 ` [PATCH v2 2/9] mfd: dt-bindings: ti,twl6040: " Andreas Kemnade
2025-08-14 13:21 ` [PATCH v2 3/9] input: dt-bindings: ti,twl4030-keypad: " Jihed Chaibi
2025-08-14 18:35 ` Dmitry Torokhov
2025-08-14 13:21 ` [PATCH v2 4/9] mfd: dt-bindings: ti,twl4030-power: " Jihed Chaibi
2025-08-14 14:10 ` Andreas Kemnade
2025-08-14 13:21 ` [PATCH v2 5/9] pwm: dt-bindings: ti,twl-pwm: " Jihed Chaibi
2025-08-14 13:21 ` [PATCH v2 6/9] pwm: dt-bindings: ti,twl-pwmled: " Jihed Chaibi
2025-08-14 13:21 ` [PATCH v2 7/9] Documentation: omap-twl4030: " Jihed Chaibi
2025-08-14 13:33 ` Mark Brown
2025-08-14 14:27 ` Jihed Chaibi
2025-08-14 13:21 ` [PATCH v2 8/9] usb: dt-bindings: ti,twlxxxx-usb: " Jihed Chaibi
2025-08-14 13:21 ` [PATCH v2 9/9] dt-bindings: mfd: twl: Add missing sub-nodes for TWL4030 & TWL603x Jihed Chaibi
2025-08-14 14:22 ` Andreas Kemnade
2025-08-15 15:00 ` [PATCH v2 0/9] dt-bindings: Convert TWL4030/6040 family binding to DT schema Andreas Kemnade
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250814132129.138943-3-jihed.chaibi.dev@gmail.com \
--to=jihed.chaibi.dev@gmail.com \
--cc=andreas@kemnade.info \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.torokhov@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=krzk+dt@kernel.org \
--cc=lee@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pwm@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=peter.ujfalusi@gmail.com \
--cc=robh@kernel.org \
--cc=shuah@kernel.org \
--cc=tiwai@suse.com \
--cc=ukleinek@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).