Re: [PATCH v3 2/2] dt-bindings: mmc: ti,omap2430-sdhci: convert to DT schema

Rob Herring
2025-10-15T13:11:47Z

On Sat, Oct 11, 2025 at 08:40:24AM +0000, Charan Pedumuru wrote:
> Convert TI OMAP SDHCI Controller binding to YAML format.
> Changes during Conversion:
> - Define new properties like "clocks", "clock-names",
> "ti,needs-special-reset", "ti,needs-special-hs-handling",
> "pbias-supply", "cap-mmc-dual-data-rate" and "power-domains" to
> resolve dtb_check errors.
> - Remove "pinctrl-names" and "pinctrl-<n>"
> from required as they are not necessary for all DTS files.
> - Remove "ti,hwmods" property entirely from the YAML as the
> DTS doesn't contain this property for the given compatibles and the
> text binding is misleading.
> - Add "clocks", "clock-names", "max-frequency" and "ti,needs-special-reset"
> to the required properties based on the compatible and the text binding
> doesn't mention these properties as required.
> - Add missing strings like "default-rev11", "sdr12-rev11", "sdr25-rev11",
> "hs-rev11", "sdr25-rev11" and "sleep" to pinctrl-names string array
> to resolve errors detected by dtb_check.
>
> Signed-off-by: Charan Pedumuru <charan.pedumuru@gmail.com>
> ---
> .../devicetree/bindings/mmc/sdhci-omap.txt | 43 -----
> .../devicetree/bindings/mmc/ti,omap2430-sdhci.yaml | 202 +++++++++++++++++++++
> 2 files changed, 202 insertions(+), 43 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/mmc/sdhci-omap.txt b/Documentation/devicetree/bindings/mmc/sdhci-omap.txt
> deleted file mode 100644
> index f91e341e6b36c410275e6f993dd08400be3fc1f8..0000000000000000000000000000000000000000
> --- a/Documentation/devicetree/bindings/mmc/sdhci-omap.txt
> +++ /dev/null
> @@ -1,43 +0,0 @@
> -* TI OMAP SDHCI Controller
> -
> -Refer to mmc.txt for standard MMC bindings.
> -
> -For UHS devices which require tuning, the device tree should have a "cpu_thermal" node which maps to the appropriate thermal zone. This is used to get the temperature of the zone during tuning.
> -
> -Required properties:
> -- compatible: Should be "ti,omap2430-sdhci" for omap2430 controllers
> - Should be "ti,omap3-sdhci" for omap3 controllers
> - Should be "ti,omap4-sdhci" for omap4 and ti81 controllers
> - Should be "ti,omap5-sdhci" for omap5 controllers
> - Should be "ti,dra7-sdhci" for DRA7 and DRA72 controllers
> - Should be "ti,k2g-sdhci" for K2G
> - Should be "ti,am335-sdhci" for am335x controllers
> - Should be "ti,am437-sdhci" for am437x controllers
> -- ti,hwmods: Must be "mmc<n>", <n> is controller instance starting 1
> - (Not required for K2G).
> -- pinctrl-names: Should be subset of "default", "hs", "sdr12", "sdr25", "sdr50",
> - "ddr50-rev11", "sdr104-rev11", "ddr50", "sdr104",
> - "ddr_1_8v-rev11", "ddr_1_8v" or "ddr_3_3v", "hs200_1_8v-rev11",
> - "hs200_1_8v",
> -- pinctrl-<n> : Pinctrl states as described in bindings/pinctrl/pinctrl-bindings.txt
> -
> -Optional properties:
> -- dmas: List of DMA specifiers with the controller specific format as described
> - in the generic DMA client binding. A tx and rx specifier is required.
> -- dma-names: List of DMA request names. These strings correspond 1:1 with the
> - DMA specifiers listed in dmas. The string naming is to be "tx"
> - and "rx" for TX and RX DMA requests, respectively.
> -
> -Deprecated properties:
> -- ti,non-removable: Compatible with the generic non-removable property
> -
> -Example:
> - mmc1: mmc@4809c000 {
> - compatible = "ti,dra7-sdhci";
> - reg = <0x4809c000 0x400>;
> - ti,hwmods = "mmc1";
> - bus-width = <4>;
> - vmmc-supply = <&vmmc>; /* phandle to regulator node */
> - dmas = <&sdma 61 &sdma 62>;
> - dma-names = "tx", "rx";
> - };
> diff --git a/Documentation/devicetree/bindings/mmc/ti,omap2430-sdhci.yaml b/Documentation/devicetree/bindings/mmc/ti,omap2430-sdhci.yaml
> new file mode 100644
> index 0000000000000000000000000000000000000000..7683481204b2e222847244b67f9ae2684db93028
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mmc/ti,omap2430-sdhci.yaml
> @@ -0,0 +1,202 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mmc/ti,omap2430-sdhci.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: TI OMAP SDHCI Controller
> +
> +maintainers:
> + - Kishon Vijay Abraham I <kishon@ti.com>
> +
> +description:
> + For UHS devices which require tuning, the device tree should have a
> + cpu_thermal node which maps to the appropriate thermal zone. This
> + is used to get the temperature of the zone during tuning.
> +
> +properties:
> + compatible:
> + enum:
> + - ti,omap2430-sdhci
> + - ti,omap3-sdhci
> + - ti,omap4-sdhci
> + - ti,omap5-sdhci
> + - ti,dra7-sdhci
> + - ti,k2g-sdhci
> + - ti,am335-sdhci
> + - ti,am437-sdhci
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 2
> +
> + clock-names:
> + items:
> + - const: fck
> + - const: mmchsdb_fck
> +
> + dmas:
> + maxItems: 2
> +
> + dma-names:
> + items:
> + - const: tx
> + - const: rx
> +
> + pinctrl-names:
> + $ref: /schemas/types.yaml#/definitions/string-array

Drop. Already has a type.

> + minItems: 1
> + maxItems: 14
> + items:
> + enum:
> + - default
> + - default-rev11
> + - hs
> + - sdr12
> + - sdr12-rev11
> + - sdr25
> + - sdr25-rev11
> + - sdr50
> + - ddr50-rev11
> + - sdr104-rev11
> + - ddr50
> + - sdr104
> + - ddr_1_8v-rev11
> + - ddr_1_8v
> + - ddr_3_3v
> + - hs-rev11
> + - hs200_1_8v-rev11
> + - hs200_1_8v
> + - sleep