xref: /freebsd/sys/contrib/device-tree/Bindings/mmc/fsl,esdhc.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*0e8011faSEmmanuel Vadot%YAML 1.2
3*0e8011faSEmmanuel Vadot---
4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/mmc/fsl,esdhc.yaml#
5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*0e8011faSEmmanuel Vadot
7*0e8011faSEmmanuel Vadottitle: Freescale Enhanced Secure Digital Host Controller (eSDHC)
8*0e8011faSEmmanuel Vadot
9*0e8011faSEmmanuel Vadotdescription:
10*0e8011faSEmmanuel Vadot  The Enhanced Secure Digital Host Controller provides an interface
11*0e8011faSEmmanuel Vadot  for MMC, SD, and SDIO types of memory cards.
12*0e8011faSEmmanuel Vadot
13*0e8011faSEmmanuel Vadotmaintainers:
14*0e8011faSEmmanuel Vadot  - Frank Li <Frank.Li@nxp.com>
15*0e8011faSEmmanuel Vadot
16*0e8011faSEmmanuel Vadotproperties:
17*0e8011faSEmmanuel Vadot  compatible:
18*0e8011faSEmmanuel Vadot    items:
19*0e8011faSEmmanuel Vadot      - enum:
20*0e8011faSEmmanuel Vadot          - fsl,mpc8536-esdhc
21*0e8011faSEmmanuel Vadot          - fsl,mpc8378-esdhc
22*0e8011faSEmmanuel Vadot          - fsl,p2020-esdhc
23*0e8011faSEmmanuel Vadot          - fsl,p4080-esdhc
24*0e8011faSEmmanuel Vadot          - fsl,t1040-esdhc
25*0e8011faSEmmanuel Vadot          - fsl,t4240-esdhc
26*0e8011faSEmmanuel Vadot          - fsl,ls1012a-esdhc
27*0e8011faSEmmanuel Vadot          - fsl,ls1028a-esdhc
28*0e8011faSEmmanuel Vadot          - fsl,ls1088a-esdhc
29*0e8011faSEmmanuel Vadot          - fsl,ls1043a-esdhc
30*0e8011faSEmmanuel Vadot          - fsl,ls1046a-esdhc
31*0e8011faSEmmanuel Vadot          - fsl,ls2080a-esdhc
32*0e8011faSEmmanuel Vadot      - const: fsl,esdhc
33*0e8011faSEmmanuel Vadot
34*0e8011faSEmmanuel Vadot  reg:
35*0e8011faSEmmanuel Vadot    maxItems: 1
36*0e8011faSEmmanuel Vadot
37*0e8011faSEmmanuel Vadot  interrupts:
38*0e8011faSEmmanuel Vadot    maxItems: 1
39*0e8011faSEmmanuel Vadot
40*0e8011faSEmmanuel Vadot  clocks:
41*0e8011faSEmmanuel Vadot    maxItems: 1
42*0e8011faSEmmanuel Vadot
43*0e8011faSEmmanuel Vadot  clock-frequency:
44*0e8011faSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
45*0e8011faSEmmanuel Vadot    description: specifies eSDHC base clock frequency.
46*0e8011faSEmmanuel Vadot
47*0e8011faSEmmanuel Vadot  sdhci,wp-inverted:
48*0e8011faSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/flag
49*0e8011faSEmmanuel Vadot    deprecated: true
50*0e8011faSEmmanuel Vadot    description:
51*0e8011faSEmmanuel Vadot      specifies that eSDHC controller reports
52*0e8011faSEmmanuel Vadot      inverted write-protect state; New devices should use the generic
53*0e8011faSEmmanuel Vadot      "wp-inverted" property.
54*0e8011faSEmmanuel Vadot
55*0e8011faSEmmanuel Vadot  sdhci,1-bit-only:
56*0e8011faSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/flag
57*0e8011faSEmmanuel Vadot    deprecated: true
58*0e8011faSEmmanuel Vadot    description:
59*0e8011faSEmmanuel Vadot      specifies that a controller can only handle
60*0e8011faSEmmanuel Vadot      1-bit data transfers. New devices should use the generic
61*0e8011faSEmmanuel Vadot      "bus-width = <1>" property.
62*0e8011faSEmmanuel Vadot
63*0e8011faSEmmanuel Vadot  sdhci,auto-cmd12:
64*0e8011faSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/flag
65*0e8011faSEmmanuel Vadot    description:
66*0e8011faSEmmanuel Vadot      specifies that a controller can only handle auto CMD12.
67*0e8011faSEmmanuel Vadot
68*0e8011faSEmmanuel Vadot  voltage-ranges:
69*0e8011faSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-matrix
70*0e8011faSEmmanuel Vadot    items:
71*0e8011faSEmmanuel Vadot      items:
72*0e8011faSEmmanuel Vadot        - description: specifies minimum slot voltage (mV).
73*0e8011faSEmmanuel Vadot        - description: specifies maximum slot voltage (mV).
74*0e8011faSEmmanuel Vadot    minItems: 1
75*0e8011faSEmmanuel Vadot    maxItems: 8
76*0e8011faSEmmanuel Vadot
77*0e8011faSEmmanuel Vadot  dma-coherent: true
78*0e8011faSEmmanuel Vadot
79*0e8011faSEmmanuel Vadot  little-endian:
80*0e8011faSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/flag
81*0e8011faSEmmanuel Vadot    description:
82*0e8011faSEmmanuel Vadot      If the host controller is little-endian mode, specify
83*0e8011faSEmmanuel Vadot      this property. The default endian mode is big-endian.
84*0e8011faSEmmanuel Vadot
85*0e8011faSEmmanuel Vadotrequired:
86*0e8011faSEmmanuel Vadot  - compatible
87*0e8011faSEmmanuel Vadot  - reg
88*0e8011faSEmmanuel Vadot  - interrupts
89*0e8011faSEmmanuel Vadot
90*0e8011faSEmmanuel VadotallOf:
91*0e8011faSEmmanuel Vadot  - $ref: sdhci-common.yaml#
92*0e8011faSEmmanuel Vadot
93*0e8011faSEmmanuel VadotunevaluatedProperties: false
94*0e8011faSEmmanuel Vadot
95*0e8011faSEmmanuel Vadotexamples:
96*0e8011faSEmmanuel Vadot  - |
97*0e8011faSEmmanuel Vadot    mmc@2e000 {
98*0e8011faSEmmanuel Vadot        compatible = "fsl,mpc8378-esdhc", "fsl,esdhc";
99*0e8011faSEmmanuel Vadot        reg = <0x2e000 0x1000>;
100*0e8011faSEmmanuel Vadot        interrupts = <42 0x8>;
101*0e8011faSEmmanuel Vadot        interrupt-parent = <&ipic>;
102*0e8011faSEmmanuel Vadot        /* Filled in by U-Boot */
103*0e8011faSEmmanuel Vadot        clock-frequency = <100000000>;
104*0e8011faSEmmanuel Vadot        voltage-ranges = <3300 3300>;
105*0e8011faSEmmanuel Vadot    };
106