18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/mmc/amlogic,meson-mx-sdhc.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: Amlogic Meson SDHC controller Device Tree Bindings
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciallOf:
108c2ecf20Sopenharmony_ci  - $ref: "mmc-controller.yaml"
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_cimaintainers:
138c2ecf20Sopenharmony_ci  - Martin Blumenstingl <martin.blumenstingl@googlemail.com>
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_cidescription: |
168c2ecf20Sopenharmony_ci  The SDHC MMC host controller on Amlogic SoCs provides an eMMC and MMC
178c2ecf20Sopenharmony_ci  card interface with 1/4/8-bit bus width.
188c2ecf20Sopenharmony_ci  It supports eMMC spec 4.4x/4.5x including HS200 (up to 100MHz clock).
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciproperties:
218c2ecf20Sopenharmony_ci  compatible:
228c2ecf20Sopenharmony_ci    items:
238c2ecf20Sopenharmony_ci      - enum:
248c2ecf20Sopenharmony_ci          - amlogic,meson8-sdhc
258c2ecf20Sopenharmony_ci          - amlogic,meson8b-sdhc
268c2ecf20Sopenharmony_ci          - amlogic,meson8m2-sdhc
278c2ecf20Sopenharmony_ci      - const: amlogic,meson-mx-sdhc
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci  reg:
308c2ecf20Sopenharmony_ci    minItems: 1
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci  interrupts:
338c2ecf20Sopenharmony_ci    minItems: 1
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci  clocks:
368c2ecf20Sopenharmony_ci    minItems: 5
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci  clock-names:
398c2ecf20Sopenharmony_ci    items:
408c2ecf20Sopenharmony_ci      - const: clkin0
418c2ecf20Sopenharmony_ci      - const: clkin1
428c2ecf20Sopenharmony_ci      - const: clkin2
438c2ecf20Sopenharmony_ci      - const: clkin3
448c2ecf20Sopenharmony_ci      - const: pclk
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_cirequired:
478c2ecf20Sopenharmony_ci  - compatible
488c2ecf20Sopenharmony_ci  - reg
498c2ecf20Sopenharmony_ci  - interrupts
508c2ecf20Sopenharmony_ci  - clocks
518c2ecf20Sopenharmony_ci  - clock-names
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ciunevaluatedProperties: false
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ciexamples:
568c2ecf20Sopenharmony_ci  - |
578c2ecf20Sopenharmony_ci    #include <dt-bindings/interrupt-controller/irq.h>
588c2ecf20Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ci    sdhc: mmc@8e00 {
618c2ecf20Sopenharmony_ci      compatible = "amlogic,meson8-sdhc", "amlogic,meson-mx-sdhc";
628c2ecf20Sopenharmony_ci      reg = <0x8e00 0x42>;
638c2ecf20Sopenharmony_ci      interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>;
648c2ecf20Sopenharmony_ci      clocks = <&xtal>,
658c2ecf20Sopenharmony_ci               <&fclk_div4>,
668c2ecf20Sopenharmony_ci               <&fclk_div3>,
678c2ecf20Sopenharmony_ci               <&fclk_div5>,
688c2ecf20Sopenharmony_ci               <&sdhc_pclk>;
698c2ecf20Sopenharmony_ci      clock-names = "clkin0", "clkin1", "clkin2", "clkin3", "pclk";
708c2ecf20Sopenharmony_ci    };
71