# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/mmc/st,sdhci.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: STMicroelectronics SDHCI-ST MMC/SD Controller maintainers: - Peter Griffin description: The STMicroelectronics SDHCI-ST MMC/SD host controller is compliant with the SD Host Controller Interface (SDHCI) specification and is used to interface with MMC, SD and SDIO cards. The ST SDHCI controller extends the standard SDHCI capabilities with platform-specific configurations such as additional register regions, clock inputs, and delay control mechanisms required for signal timing adjustments to support high-speed modes across different ST SoCs. allOf: - $ref: mmc-controller.yaml# - if: properties: reg: minItems: 2 required: - reg then: required: - reg-names properties: compatible: oneOf: - const: st,sdhci - items: - const: st,sdhci-stih407 - const: st,sdhci reg: minItems: 1 items: - description: MMC controller base registers - description: FlashSS Top registers for TX/RX DLL delay configuration reg-names: minItems: 1 items: - const: mmc - const: top-mmc-delay clocks: minItems: 1 items: - description: Clock for the MMC controller - description: Interconnect (ICN) clock clock-names: minItems: 1 items: - const: mmc - const: icn interrupts: maxItems: 1 interrupt-names: const: mmcirq resets: maxItems: 1 max-frequency: enum: [200000000, 100000000, 50000000] default: 50000000 required: - reg - compatible - clocks - clock-names - interrupts - interrupt-names unevaluatedProperties: false examples: - | #include #include mmc@9060000 { compatible = "st,sdhci-stih407", "st,sdhci"; reg = <0x09060000 0x7ff>, <0x9061008 0x20>; reg-names = "mmc", "top-mmc-delay"; interrupts = ; interrupt-names = "mmcirq"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_mmc0>; clock-names = "mmc", "icn"; clocks = <&clk_s_c0_flexgen CLK_MMC_0>, <&clk_s_c0_flexgen CLK_RX_ICN_HVA>; bus-width = <8>; }; ...