File Index
Files and directories
Sign in
FILE

fsl-imx-esdhc.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/mmc/fsl-imx-esdhc.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Freescale Enhanced Secure Digital Host Controller (eSDHC) for i.MX
  8
  9maintainers:
 10  - Shawn Guo <shawnguo@kernel.org>
 11
 12allOf:
 13  - $ref: sdhci-common.yaml#
 14
 15description: |
 16  The Enhanced Secure Digital Host Controller on Freescale i.MX family
 17  provides an interface for MMC, SD, and SDIO types of memory cards.
 18
 19  This file documents differences between the core properties described
 20  by mmc.txt and the properties used by the sdhci-esdhc-imx driver.
 21
 22properties:
 23  compatible:
 24    oneOf:
 25      - enum:
 26          - fsl,imx25-esdhc
 27          - fsl,imx35-esdhc
 28          - fsl,imx51-esdhc
 29          - fsl,imx53-esdhc
 30          - fsl,imx6q-usdhc
 31          - fsl,imx6sl-usdhc
 32          - fsl,imx6sx-usdhc
 33          - fsl,imx7d-usdhc
 34          - fsl,imx7ulp-usdhc
 35          - fsl,imx8mm-usdhc
 36          - fsl,imxrt1050-usdhc
 37          - nxp,s32g2-usdhc
 38      - items:
 39          - const: fsl,imx50-esdhc
 40          - const: fsl,imx53-esdhc
 41      - items:
 42          - enum:
 43              - fsl,imx6sll-usdhc
 44              - fsl,imx6ull-usdhc
 45              - fsl,imx6ul-usdhc
 46          - const: fsl,imx6sx-usdhc
 47      - items:
 48          - const: fsl,imx7d-usdhc
 49          - const: fsl,imx6sl-usdhc
 50      - items:
 51          - enum:
 52              - fsl,imx8mq-usdhc
 53          - const: fsl,imx7d-usdhc
 54      - items:
 55          - enum:
 56              - fsl,imx8mn-usdhc
 57              - fsl,imx8mp-usdhc
 58              - fsl,imx8ulp-usdhc
 59              - fsl,imx93-usdhc
 60              - fsl,imx94-usdhc
 61              - fsl,imx95-usdhc
 62          - const: fsl,imx8mm-usdhc
 63      - items:
 64          - enum:
 65              - fsl,imx8dxl-usdhc
 66              - fsl,imx8qm-usdhc
 67          - const: fsl,imx8qxp-usdhc
 68      - items:
 69          - enum:
 70              - fsl,imx8mm-usdhc
 71              - fsl,imx8mn-usdhc
 72              - fsl,imx8mp-usdhc
 73              - fsl,imx8qm-usdhc
 74              - fsl,imx8qxp-usdhc
 75          - const: fsl,imx7d-usdhc
 76        deprecated: true
 77      - items:
 78          - enum:
 79              - fsl,imx8mn-usdhc
 80              - fsl,imx8mp-usdhc
 81          - const: fsl,imx8mm-usdhc
 82          - const: fsl,imx7d-usdhc
 83        deprecated: true
 84      - items:
 85          - enum:
 86              - fsl,imx8dxl-usdhc
 87              - fsl,imx8qm-usdhc
 88          - const: fsl,imx8qxp-usdhc
 89          - const: fsl,imx7d-usdhc
 90        deprecated: true
 91      - items:
 92          - enum:
 93              - fsl,imxrt1170-usdhc
 94          - const: fsl,imxrt1050-usdhc
 95      - items:
 96          - const: nxp,s32g3-usdhc
 97          - const: nxp,s32g2-usdhc
 98
 99  reg:
100    maxItems: 1
101
102  interrupts:
103    maxItems: 1
104
105  fsl,wp-controller:
106    description: |
107      boolean, if present, indicate to use controller internal write protection.
108    type: boolean
109
110  fsl,delay-line:
111    $ref: /schemas/types.yaml#/definitions/uint32
112    description: |
113      Specify the number of delay cells for override mode.
114      This is used to set the clock delay for DLL(Delay Line) on override mode
115      to select a proper data sampling window in case the clock quality is not good
116      because the signal path is too long on the board. Please refer to eSDHC/uSDHC
117      chapter, DLL (Delay Line) section in RM for details.
118    default: 0
119
120  voltage-ranges:
121    $ref: /schemas/types.yaml#/definitions/uint32-matrix
122    description: |
123      Specify the voltage range in case there are software transparent level
124      shifters on the outputs of the controller. Two cells are required, first
125      cell specifies minimum slot voltage (mV), second cell specifies maximum
126      slot voltage (mV).
127    items:
128      items:
129        - description: value for minimum slot voltage
130        - description: value for maximum slot voltage
131    maxItems: 1
132
133  fsl,tuning-start-tap:
134    $ref: /schemas/types.yaml#/definitions/uint32
135    description: |
136      Specify the start delay cell point when send first CMD19 in tuning procedure.
137    default: 0
138
139  fsl,tuning-step:
140    $ref: /schemas/types.yaml#/definitions/uint32
141    description: |
142      Specify the increasing delay cell steps in tuning procedure.
143      The uSDHC use one delay cell as default increasing step to do tuning process.
144      This property allows user to change the tuning step to more than one delay
145      cell which is useful for some special boards or cards when the default
146      tuning step can't find the proper delay window within limited tuning retries.
147    default: 0
148
149  fsl,strobe-dll-delay-target:
150    $ref: /schemas/types.yaml#/definitions/uint32
151    description: |
152      Specify the strobe dll control slave delay target.
153      This delay target programming host controller loopback read clock, and this
154      property allows user to change the delay target for the strobe input read clock.
155      If not use this property, driver default set the delay target to value 7.
156      Only eMMC HS400 mode need to take care of this property.
157    default: 0
158
159  clocks:
160    maxItems: 3
161    description:
162      Handle clocks for the sdhc controller.
163
164  clock-names:
165    items:
166      - const: ipg
167      - const: ahb
168      - const: per
169
170  iommus:
171    maxItems: 1
172
173  power-domains:
174    maxItems: 1
175
176  pinctrl-names:
177    oneOf:
178      - minItems: 3
179        items:
180          - const: default
181          - const: state_100mhz
182          - const: state_200mhz
183          - const: sleep
184      - minItems: 2
185        items:
186          - const: default
187          - const: state_100mhz
188          - const: sleep
189      - minItems: 1
190        items:
191          - const: default
192          - const: sleep
193
194required:
195  - compatible
196  - reg
197  - interrupts
198
199unevaluatedProperties: false
200
201examples:
202  - |
203    mmc@70004000 {
204        compatible = "fsl,imx51-esdhc";
205        reg = <0x70004000 0x4000>;
206        interrupts = <1>;
207        fsl,wp-controller;
208    };
209
210    mmc@70008000 {
211        compatible = "fsl,imx51-esdhc";
212        reg = <0x70008000 0x4000>;
213        interrupts = <2>;
214        cd-gpios = <&gpio1 6 0>; /* GPIO1_6 */
215        wp-gpios = <&gpio1 5 0>; /* GPIO1_5 */
216    };
~/ Read-only file preview.