0001 # SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/mmc/litex,mmc.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: LiteX LiteSDCard device
0008
0009 maintainers:
0010 - Gabriel Somlo <gsomlo@gmail.com>
0011
0012 description: |
0013 LiteSDCard is a small footprint, configurable SDCard core for FPGA based
0014 system on chips.
0015
0016 The hardware source is Open Source and can be found on at
0017 https://github.com/enjoy-digital/litesdcard/.
0018
0019 allOf:
0020 - $ref: mmc-controller.yaml#
0021
0022 properties:
0023 compatible:
0024 const: litex,mmc
0025
0026 reg:
0027 items:
0028 - description: PHY registers
0029 - description: CORE registers
0030 - description: DMA Reader buffer
0031 - description: DMA Writer buffer
0032 - description: IRQ registers
0033 minItems: 4
0034
0035 reg-names:
0036 items:
0037 - const: phy
0038 - const: core
0039 - const: reader
0040 - const: writer
0041 - const: irq
0042 minItems: 4
0043
0044 clocks:
0045 maxItems: 1
0046 description:
0047 Handle to reference clock.
0048
0049 vmmc-supply:
0050 description:
0051 Handle to fixed-voltage supply for the card power.
0052
0053 interrupts:
0054 maxItems: 1
0055
0056 required:
0057 - compatible
0058 - reg
0059 - reg-names
0060 - clocks
0061 - vmmc-supply
0062
0063 additionalProperties: false
0064
0065 examples:
0066 - |
0067 mmc: mmc@12005000 {
0068 compatible = "litex,mmc";
0069 reg = <0x12005000 0x100>,
0070 <0x12003800 0x100>,
0071 <0x12003000 0x100>,
0072 <0x12004800 0x100>,
0073 <0x12004000 0x100>;
0074 reg-names = "phy", "core", "reader", "writer", "irq";
0075 clocks = <&reference_clk>;
0076 vmmc-supply = <&vreg_mmc>;
0077 interrupts = <4>;
0078 };