summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/mmc/starfive,jh7110-mmc.yaml
blob: 51e1b04e799f1300515af40e0f27b8722f82b904 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/mmc/starfive,jh7110-mmc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: StarFive Designware Mobile Storage Host Controller

description:
  StarFive uses the Synopsys designware mobile storage host controller
  to interface a SoC with storage medium such as eMMC or SD/MMC cards.

allOf:
  - $ref: synopsys-dw-mshc-common.yaml#

maintainers:
  - William Qiu <william.qiu@starfivetech.com>

properties:
  compatible:
    const: starfive,jh7110-mmc

  reg:
    maxItems: 1

  clocks:
    items:
      - description: biu clock
      - description: ciu clock

  clock-names:
    items:
      - const: biu
      - const: ciu

  interrupts:
    maxItems: 1

  starfive,sysreg:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    items:
      - items:
          - description: phandle to System Register Controller syscon node
          - description: offset of SYS_SYSCONSAIF__SYSCFG register for MMC controller
          - description: shift of SYS_SYSCONSAIF__SYSCFG register for MMC controller
          - description: mask of SYS_SYSCONSAIF__SYSCFG register for MMC controller
    description:
      Should be four parameters, the phandle to System Register Controller
      syscon node and the offset/shift/mask of SYS_SYSCONSAIF__SYSCFG register
      for MMC controller.

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - interrupts
  - starfive,sysreg

unevaluatedProperties: false

examples:
  - |
    mmc@16010000 {
        compatible = "starfive,jh7110-mmc";
        reg = <0x16010000 0x10000>;
        clocks = <&syscrg 91>,
                 <&syscrg 93>;
        clock-names = "biu","ciu";
        resets = <&syscrg 64>;
        reset-names = "reset";
        interrupts = <74>;
        fifo-depth = <32>;
        fifo-watermark-aligned;
        data-addr = <0>;
        starfive,sysreg = <&sys_syscon 0x14 0x1a 0x7c000000>;
    };