xref: /linux/Documentation/devicetree/bindings/mmc/microchip,sdhci-pic32.yaml (revision e78f70bad29c5ae1e1076698b690b15794e9b81e)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mmc/microchip,sdhci-pic32.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Microchip PIC32 SDHI Controller
8
9description:
10  The Microchip PIC32 family of microcontrollers (MCUs) includes models with
11  Secure Digital Host Controller Interface (SDHCI) controllers, allowing them
12  to interface with Secure Digital (SD) cards. This interface is used for reading,
13  writing, and managing data on SD cards, enabling storage and data transfer
14  capabilities in embedded systems.
15
16allOf:
17  - $ref: mmc-controller.yaml
18
19maintainers:
20  - Ulf Hansson <ulf.hansson@linaro.org>
21
22properties:
23  compatible:
24    const: microchip,pic32mzda-sdhci
25
26  reg:
27    maxItems: 1
28
29  interrupts:
30    maxItems: 1
31
32  clocks:
33    maxItems: 2
34
35  clock-names:
36    items:
37      - const: base_clk
38      - const: sys_clk
39
40required:
41  - compatible
42  - reg
43  - interrupts
44  - clocks
45  - clock-names
46  - pinctrl-names
47  - pinctrl-0
48
49unevaluatedProperties: false
50
51examples:
52  - |
53    #include <dt-bindings/interrupt-controller/irq.h>
54    #include <dt-bindings/clock/microchip,pic32-clock.h>
55    mmc@1f8ec000 {
56        compatible = "microchip,pic32mzda-sdhci";
57        reg = <0x1f8ec000 0x100>;
58        interrupts = <191 IRQ_TYPE_LEVEL_HIGH>;
59        clocks = <&rootclk REF4CLK>, <&rootclk PB5CLK>;
60        clock-names = "base_clk", "sys_clk";
61        bus-width = <4>;
62        cap-sd-highspeed;
63        pinctrl-names = "default";
64        pinctrl-0 = <&pinctrl_sdhc1>;
65    };
66...
67