18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/mmc/sdhci-pxa.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: Marvell PXA SDHCI v2/v3 bindings
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Ulf Hansson <ulf.hansson@linaro.org>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciallOf:
138c2ecf20Sopenharmony_ci  - $ref: mmc-controller.yaml#
148c2ecf20Sopenharmony_ci  - if:
158c2ecf20Sopenharmony_ci      properties:
168c2ecf20Sopenharmony_ci        compatible:
178c2ecf20Sopenharmony_ci          contains:
188c2ecf20Sopenharmony_ci            const: marvell,armada-380-sdhci
198c2ecf20Sopenharmony_ci    then:
208c2ecf20Sopenharmony_ci      properties:
218c2ecf20Sopenharmony_ci        regs:
228c2ecf20Sopenharmony_ci          minItems: 3
238c2ecf20Sopenharmony_ci        reg-names:
248c2ecf20Sopenharmony_ci          minItems: 3
258c2ecf20Sopenharmony_ci      required:
268c2ecf20Sopenharmony_ci        - reg-names
278c2ecf20Sopenharmony_ci    else:
288c2ecf20Sopenharmony_ci      properties:
298c2ecf20Sopenharmony_ci        regs:
308c2ecf20Sopenharmony_ci          maxItems: 1
318c2ecf20Sopenharmony_ci        reg-names:
328c2ecf20Sopenharmony_ci          maxItems: 1
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ciproperties:
358c2ecf20Sopenharmony_ci  compatible:
368c2ecf20Sopenharmony_ci    enum:
378c2ecf20Sopenharmony_ci      - mrvl,pxav2-mmc
388c2ecf20Sopenharmony_ci      - mrvl,pxav3-mmc
398c2ecf20Sopenharmony_ci      - marvell,armada-380-sdhci
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci  reg:
428c2ecf20Sopenharmony_ci    minItems: 1
438c2ecf20Sopenharmony_ci    maxItems: 3
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ci  reg-names:
468c2ecf20Sopenharmony_ci    items:
478c2ecf20Sopenharmony_ci      - const: sdhci
488c2ecf20Sopenharmony_ci      - const: mbus
498c2ecf20Sopenharmony_ci      - const: conf-sdio3
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci  interrupts:
528c2ecf20Sopenharmony_ci    maxItems: 1
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ci  clocks:
558c2ecf20Sopenharmony_ci    minItems: 1
568c2ecf20Sopenharmony_ci    maxItems: 2
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci  clock-names:
598c2ecf20Sopenharmony_ci    minItems: 1
608c2ecf20Sopenharmony_ci    maxItems: 2
618c2ecf20Sopenharmony_ci    items:
628c2ecf20Sopenharmony_ci      - const: io
638c2ecf20Sopenharmony_ci      - const: core
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ci  mrvl,clk-delay-cycles:
668c2ecf20Sopenharmony_ci    description: Specify a number of cycles to delay for tuning.
678c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_cirequired:
708c2ecf20Sopenharmony_ci  - compatible
718c2ecf20Sopenharmony_ci  - reg
728c2ecf20Sopenharmony_ci  - interrupts
738c2ecf20Sopenharmony_ci  - clocks
748c2ecf20Sopenharmony_ci  - clock-names
758c2ecf20Sopenharmony_ci
768c2ecf20Sopenharmony_ciunevaluatedProperties: false
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_ciexamples:
798c2ecf20Sopenharmony_ci  - |
808c2ecf20Sopenharmony_ci    #include <dt-bindings/clock/berlin2.h>
818c2ecf20Sopenharmony_ci    mmc@d4280800 {
828c2ecf20Sopenharmony_ci        compatible = "mrvl,pxav3-mmc";
838c2ecf20Sopenharmony_ci        reg = <0xd4280800 0x800>;
848c2ecf20Sopenharmony_ci        bus-width = <8>;
858c2ecf20Sopenharmony_ci        interrupts = <27>;
868c2ecf20Sopenharmony_ci        clocks = <&chip CLKID_SDIO1XIN>, <&chip CLKID_SDIO1>;
878c2ecf20Sopenharmony_ci        clock-names = "io", "core";
888c2ecf20Sopenharmony_ci        non-removable;
898c2ecf20Sopenharmony_ci        mrvl,clk-delay-cycles = <31>;
908c2ecf20Sopenharmony_ci    };
918c2ecf20Sopenharmony_ci  - |
928c2ecf20Sopenharmony_ci    mmc@d8000 {
938c2ecf20Sopenharmony_ci        compatible = "marvell,armada-380-sdhci";
948c2ecf20Sopenharmony_ci        reg-names = "sdhci", "mbus", "conf-sdio3";
958c2ecf20Sopenharmony_ci        reg = <0xd8000 0x1000>,
968c2ecf20Sopenharmony_ci              <0xdc000 0x100>,
978c2ecf20Sopenharmony_ci              <0x18454 0x4>;
988c2ecf20Sopenharmony_ci        interrupts = <0 25 0x4>;
998c2ecf20Sopenharmony_ci        clocks = <&gateclk 17>;
1008c2ecf20Sopenharmony_ci        clock-names = "io";
1018c2ecf20Sopenharmony_ci        mrvl,clk-delay-cycles = <0x1F>;
1028c2ecf20Sopenharmony_ci    };
1038c2ecf20Sopenharmony_ci
1048c2ecf20Sopenharmony_ci...
105