All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v8 0/3] dt-bindings: mfd: twl: Consolidate and fix TI TWL family bindings
@ 2025-09-14 19:25 Jihed Chaibi
  2025-09-14 19:25 ` [PATCH v8 1/3] dt-bindings: mfd: twl: Add missing sub-nodes for TWL4030 & TWL603x Jihed Chaibi
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Jihed Chaibi @ 2025-09-14 19:25 UTC (permalink / raw)
  To: andreas
  Cc: lee, krzk+dt, tony, robh, conor+dt, ukleinek, devicetree,
	linux-kernel, linux-pwm, linux-omap, jihed.chaibi.dev

Following extensive maintainer feedback, this patch implements the
"define then disable" pattern. All possible child nodes are now defined
at the top level. Conditional if/then blocks are used to explicitly
disallow sub-modules that are not present on specific chip variants.

This refactoring also moves pre-existing sub-node definitions
(e.g. madc, pwrbutton, gpadc, etc.) out of the conditional blocks
to the top level, following the new pattern.

The complete dtbs_check for this binding is clean except for two
warnings originating from pre-existing bugs in the OMAP DTS files,
for which fixes have already been submitted separately [1][2].

---
Changes in v8:
  - Restructured binding to define all properties at the top level
    and use 'property-name: false' to conditionally disable them.
    This includes refactoring pre-existing sub-node definitions.
  - Referenced the existing ti,twl6030-charger.yaml and
    ti,twl6030-gpadc.yaml schemas for the TWL603x charger and gpadc nodes.
  - No changes for (2/3) & (3/3).

Changes in v7:
  - (1/3): Moved twl4030/twl6030-specific child node definitions (audio,
    usb etc.) into the conditional 'if/then' block to improve schema
    accuracy.
  - (2/3 & 3/3): No changes.

Changes in v6:
  - Refactored the ti,twl4030-power compatible schema to be much stricter,
    removing obsolete board-specific compatibles (-n900, -beagleboard-xm),
    that were added in v5. The schema now only permits specific, valid
    fallback combinations.
  - This series presents two new patches (2/3) & (3/3), which update the
    affected DTS files by removing obsolete entries.
  - Enforced the presence of the compatible property on all relevant
    sub-nodes by adding 'required: - compatible', closing a key validation
    loophole.
  - Applied various formatting cleanups for readability and correctness.

Changes in v5:
  - Restructured the entire binding to define properties at the top
    level instead of if/then blocks, per maintainer feedback.
  - Added specific compatible enums for new child nodes instead of a
    generic 'compatible: true'.
  - Set 'unevaluatedProperties: false' for 'pwm' and 'pwmled' nodes to
    enforce strict validation.
  - Expanded 'power' node compatible enum to include all board-specific
    compatible strings (used in existing device trees, e.g. OMAP3-based
    boards) for more complete coverage.
  - Corrected the schema for the 'power' node compatible to properly
    handle single and fallback entries.

Changes in v4:
  - Reworked binding to be independent and bisectable per maintainer
    feedback by using 'additionalProperties: true' for child nodes.
  - Added board-specific compatibles to the 'power' node enum.
  - Added definitions for 'clocks' and 'clock-names' properties.
  - Renamed 'twl6030-usb' child node to 'usb-comparator' to match
    existing Device Tree usage (twl6030.dtsi).
  - Fixed some spelling/grammar erros in the description.

Changes in v3:
  - New patch to consolidate simple bindings (power, pwm) and add
    definitions for all child nodes to fix dtbs_check validation
    errors found in v2.

Changes in v2:
  - This patch is split from larger series [3] per maintainer feedback.
  - Added missing sub-node definitions, resolving dtbs_check errors.

[1] https://lore.kernel.org/all/20250822222530.113520-1-jihed.chaibi.dev@gmail.com/
[2] https://lore.kernel.org/all/20250822225052.136919-1-jihed.chaibi.dev@gmail.com/
[3] https://lore.kernel.org/all/20250816021523.167049-1-jihed.chaibi.dev@gmail.com/

Jihed Chaibi (3):
  dt-bindings: mfd: twl: Add missing sub-nodes for TWL4030 & TWL603x
  ARM: dts: omap3: beagle-xm: Correct obsolete TWL4030 power compatible
  ARM: dts: omap3: n900: Correct obsolete TWL4030 power compatible

 .../devicetree/bindings/mfd/ti,twl.yaml       | 319 +++++++++++++++---
 .../devicetree/bindings/mfd/twl4030-power.txt |  48 ---
 .../devicetree/bindings/pwm/ti,twl-pwm.txt    |  17 -
 .../devicetree/bindings/pwm/ti,twl-pwmled.txt |  17 -
 arch/arm/boot/dts/ti/omap/omap3-beagle-xm.dts |   2 +-
 arch/arm/boot/dts/ti/omap/omap3-n900.dts      |   2 +-
 6 files changed, 275 insertions(+), 130 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/mfd/twl4030-power.txt
 delete mode 100644 Documentation/devicetree/bindings/pwm/ti,twl-pwm.txt
 delete mode 100644 Documentation/devicetree/bindings/pwm/ti,twl-pwmled.txt

-- 
2.39.5


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2025-11-04 23:07 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-14 19:25 [PATCH v8 0/3] dt-bindings: mfd: twl: Consolidate and fix TI TWL family bindings Jihed Chaibi
2025-09-14 19:25 ` [PATCH v8 1/3] dt-bindings: mfd: twl: Add missing sub-nodes for TWL4030 & TWL603x Jihed Chaibi
2025-09-21 22:12   ` Andreas Kemnade
2025-09-25 12:02   ` (subset) " Lee Jones
2025-09-14 19:25 ` [PATCH v8 2/3] ARM: dts: omap3: beagle-xm: Correct obsolete TWL4030 power compatible Jihed Chaibi
2025-09-14 19:25 ` [PATCH v8 3/3] ARM: dts: omap3: n900: " Jihed Chaibi
2025-11-04 23:06 ` (subset) [PATCH v8 0/3] dt-bindings: mfd: twl: Consolidate and fix TI TWL family bindings Kevin Hilman

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.