* [PATCH] regulator: dt-bindigs: ti,pbias-omap: Convert to DT schema
@ 2026-07-17 18:06 Bhargav Joshi
2026-07-17 18:15 ` sashiko-bot
0 siblings, 1 reply; 2+ messages in thread
From: Bhargav Joshi @ 2026-07-17 18:06 UTC (permalink / raw)
To: Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Tony Lindgren
Cc: linux-kernel, devicetree, goledhruva, m-chawdhry, daniel.baluta,
simona.toaca, j.bhargav.u
Convert Texas Instruments PBIAS internal regulator from text to DT
schema. No Functional changes are introduced.
Signed-off-by: Bhargav Joshi <j.bhargav.u@gmail.com>
---
.../bindings/regulator/pbias-regulator.txt | 32 -----
.../bindings/regulator/ti,pbias-omap.yaml | 152 +++++++++++++++++++++
2 files changed, 152 insertions(+), 32 deletions(-)
diff --git a/Documentation/devicetree/bindings/regulator/pbias-regulator.txt b/Documentation/devicetree/bindings/regulator/pbias-regulator.txt
deleted file mode 100644
index acbcb452a69a..000000000000
--- a/Documentation/devicetree/bindings/regulator/pbias-regulator.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-PBIAS internal regulator for SD card dual voltage i/o pads on OMAP SoCs.
-
-Required properties:
-- compatible:
- - should be "ti,pbias-dra7" for DRA7
- - should be "ti,pbias-omap2" for OMAP2
- - should be "ti,pbias-omap3" for OMAP3
- - should be "ti,pbias-omap4" for OMAP4
- - should be "ti,pbias-omap5" for OMAP5
- - "ti,pbias-omap" is deprecated
-- reg: pbias register offset from syscon base and size of pbias register.
-- syscon : phandle of the system control module
-- regulator-name : should be
- pbias_mmc_omap2430 for OMAP2430, OMAP3 SoCs
- pbias_sim_omap3 for OMAP3 SoCs
- pbias_mmc_omap4 for OMAP4 SoCs
- pbias_mmc_omap5 for OMAP5 and DRA7 SoC
-
-Optional properties:
-- Any optional property defined in bindings/regulator/regulator.txt
-
-Example:
-
- pbias_regulator: pbias_regulator {
- compatible = "ti,pbias-omap";
- reg = <0 0x4>;
- syscon = <&omap5_padconf_global>;
- pbias_mmc_reg: pbias_mmc_omap5 {
- regulator-name = "pbias_mmc_omap5";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <3000000>;
- };
diff --git a/Documentation/devicetree/bindings/regulator/ti,pbias-omap.yaml b/Documentation/devicetree/bindings/regulator/ti,pbias-omap.yaml
new file mode 100644
index 000000000000..61a4dc87c48c
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/ti,pbias-omap.yaml
@@ -0,0 +1,152 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/ti,pbias-omap.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments PBIAS internal regulator.
+
+maintainers:
+ - Tony Lindgren <tony@atomide.com>
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - ti,pbias-dra7
+ - ti,pbias-omap2
+ - ti,pbias-omap3
+ - ti,pbias-omap4
+ - ti,pbias-omap5
+ - const: ti,pbias-omap
+
+ reg:
+ maxItems: 1
+
+ syscon:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description: phandle of the system control module
+
+ pbias_mmc_omap2430:
+ type: object
+ $ref: regulator.yaml#
+
+ properties:
+ regulator-name:
+ const: pbias_mmc_omap2430
+
+ required:
+ - regulator-name
+
+ unevaluatedProperties: false
+
+ pbias_sim_omap3:
+ type: object
+ $ref: regulator.yaml#
+
+ properties:
+ regulator-name:
+ const: pbias_sim_omap3
+
+ required:
+ - regulator-name
+
+ unevaluatedProperties: false
+
+ pbias_mmc_omap4:
+ type: object
+ $ref: regulator.yaml#
+
+ properties:
+ regulator-name:
+ const: pbias_mmc_omap4
+
+ required:
+ - regulator-name
+
+ unevaluatedProperties: false
+
+ pbias_mmc_omap5:
+ type: object
+ $ref: regulator.yaml#
+
+ properties:
+ regulator-name:
+ const: pbias_mmc_omap5
+
+ required:
+ - regulator-name
+
+ unevaluatedProperties: false
+
+required:
+ - compatible
+ - reg
+ - syscon
+
+oneOf:
+ - required:
+ - pbias_mmc_omap2430
+ - required:
+ - pbias_sim_omap3
+ - required:
+ - pbias_mmc_omap4
+ - required:
+ - pbias_mmc_omap5
+
+allOf:
+ - $ref: regulator.yaml#
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - ti,pbias-omap2
+ then:
+ required:
+ - pbias_mmc_omap2430
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: ti,pbias-omap3
+ then:
+ oneOf:
+ - required:
+ - pbias_mmc_omap2430
+ - required:
+ - pbias_sim_omap3
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: ti,pbias-omap4
+ then:
+ required:
+ - pbias_mmc_omap4
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - ti,pbias-omap5
+ - ti,pbias-dra7
+ then:
+ required:
+ - pbias_mmc_omap5
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ pbias_regulator: pbias_regulator@0 {
+ compatible = "ti,pbias-omap5", "ti,pbias-omap";
+ reg = <0 0x4>;
+ syscon = <&omap5_padconf_global>;
+ pbias_mmc_reg: pbias_mmc_omap5 {
+ regulator-name = "pbias_mmc_omap5";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3000000>;
+ };
+ };
---
base-commit: 1e9cdc2ea15adf4a821eefedabf6c0c8cf0b6a55
change-id: 20260704-ti-pbias-omap-508cc9576c91
Best regards,
--
Bhargav
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] regulator: dt-bindigs: ti,pbias-omap: Convert to DT schema
2026-07-17 18:06 [PATCH] regulator: dt-bindigs: ti,pbias-omap: Convert to DT schema Bhargav Joshi
@ 2026-07-17 18:15 ` sashiko-bot
0 siblings, 0 replies; 2+ messages in thread
From: sashiko-bot @ 2026-07-17 18:15 UTC (permalink / raw)
To: Bhargav Joshi; +Cc: robh, conor+dt, devicetree
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Medium] Top-level `$ref: regulator.yaml#` incorrectly applies standard regulator constraints to the parent container node.
- [Medium] The schema incorrectly uses `oneOf` to restrict the parent node to exactly one regulator subnode, which prevents valid configurations like OMAP3 from defining both MMC and SIM regulators.
--
--- Patch [1]: [PATCH] regulator: dt-bindigs: ti,pbias-omap: Convert to DT schema ---
commit e24c9bc6e58ceda1b221ec8e8ce86f428408d847
Author: Bhargav Joshi <j.bhargav.u@gmail.com>
regulator: dt-bindigs: ti,pbias-omap: Convert to DT schema
Convert Texas Instruments PBIAS internal regulator from text to DT
schema. No Functional changes are introduced.
> diff --git a/Documentation/devicetree/bindings/regulator/ti,pbias-omap.yaml b/Documentation/devicetree/bindings/regulator/ti,pbias-omap.yaml
> new file mode 100644
> index 0000000000000..61a4dc87c48c9
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/ti,pbias-omap.yaml
[ ... ]
> +required:
> + - compatible
> + - reg
> + - syscon
> +
> +oneOf:
> + - required:
> + - pbias_mmc_omap2430
> + - required:
> + - pbias_sim_omap3
> + - required:
> + - pbias_mmc_omap4
> + - required:
> + - pbias_mmc_omap5
[Severity: Medium]
Will this reject valid configurations that define more than one child
regulator?
The JSON schema oneOf keyword requires exactly one condition to match. Since
OMAP3 SoCs can have both MMC and SIM PBIAS regulators, and the driver
supports them concurrently, having both defined would cause oneOf to fail.
Should this use anyOf instead?
> +
> +allOf:
> + - $ref: regulator.yaml#
[Severity: Medium]
Does applying the standard regulator schema to the top-level parent node
neutralize validation?
This allows a device tree author to mistakenly place properties like
regulator-min-microvolt directly on the parent node instead of the
subnodes. Such properties would be ignored by the kernel but silently pass
the schema check.
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - ti,pbias-omap2
> + then:
> + required:
> + - pbias_mmc_omap2430
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: ti,pbias-omap3
> + then:
> + oneOf:
> + - required:
> + - pbias_mmc_omap2430
> + - required:
> + - pbias_sim_omap3
[Severity: Medium]
Similarly, does this restrict OMAP3 to exactly one regulator subnode?
This would prevent valid hardware configurations from using both the MMC and
SIM regulators simultaneously. Should this also use anyOf?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260717-ti-pbias-omap-v1-1-527848131801@gmail.com?part=1
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-07-17 18:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-17 18:06 [PATCH] regulator: dt-bindigs: ti,pbias-omap: Convert to DT schema Bhargav Joshi
2026-07-17 18:15 ` sashiko-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox