GNU Linux-libre 5.19-rc6-gnu
[releases.git] / Documentation / devicetree / bindings / mmc / litex,mmc.yaml
1 # SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/mmc/litex,mmc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: LiteX LiteSDCard device
8
9 maintainers:
10   - Gabriel Somlo <gsomlo@gmail.com>
11
12 description: |
13   LiteSDCard is a small footprint, configurable SDCard core for FPGA based
14   system on chips.
15
16   The hardware source is Open Source and can be found on at
17   https://github.com/enjoy-digital/litesdcard/.
18
19 allOf:
20   - $ref: mmc-controller.yaml#
21
22 properties:
23   compatible:
24     const: litex,mmc
25
26   reg:
27     items:
28       - description: PHY registers
29       - description: CORE registers
30       - description: DMA Reader buffer
31       - description: DMA Writer buffer
32       - description: IRQ registers
33     minItems: 4
34
35   reg-names:
36     items:
37       - const: phy
38       - const: core
39       - const: reader
40       - const: writer
41       - const: irq
42     minItems: 4
43
44   clocks:
45     maxItems: 1
46     description:
47       Handle to reference clock.
48
49   vmmc-supply:
50     description:
51       Handle to fixed-voltage supply for the card power.
52
53   interrupts:
54     maxItems: 1
55
56 required:
57   - compatible
58   - reg
59   - reg-names
60   - clocks
61   - vmmc-supply
62
63 additionalProperties: false
64
65 examples:
66   - |
67     mmc: mmc@12005000 {
68         compatible = "litex,mmc";
69         reg = <0x12005000 0x100>,
70               <0x12003800 0x100>,
71               <0x12003000 0x100>,
72               <0x12004800 0x100>,
73               <0x12004000 0x100>;
74         reg-names = "phy", "core", "reader", "writer", "irq";
75         clocks = <&reference_clk>;
76         vmmc-supply = <&vreg_mmc>;
77         interrupts = <4>;
78     };