dt-bindings: mmc: Convert fsl-esdhc.txt to yaml

Convert layerscape fsl-esdhc binding doc from txt to yaml format.

Addtional change during convert:
- Deprecate "sdhci,wp-inverted", "sdhci,1-bit-only".
- Add "reg" and "interrupts" property.
- Change example "sdhci@2e000" to "mmc@2e000".
- Compatible string require fsl,<chip>-esdhc followed by fsl,esdhc to match
most existed dts file.
- Set clock-frequency to 100mhz in example.
- clock-frequency is not required now.
- Allow dma-coherence
- Add clocks

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Link: https://lore.kernel.org/r/20240613-ls_waring_esdhc-v5-2-36644e2fe21c@nxp.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
Frank Li
2024-06-13 10:32:06 -04:00
committed by Ulf Hansson
parent ce4f2199a0
commit 1f14028666
2 changed files with 105 additions and 52 deletions
@@ -0,0 +1,105 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mmc/fsl,esdhc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Freescale Enhanced Secure Digital Host Controller (eSDHC)
description:
The Enhanced Secure Digital Host Controller provides an interface
for MMC, SD, and SDIO types of memory cards.
maintainers:
- Frank Li <Frank.Li@nxp.com>
properties:
compatible:
items:
- enum:
- fsl,mpc8536-esdhc
- fsl,mpc8378-esdhc
- fsl,p2020-esdhc
- fsl,p4080-esdhc
- fsl,t1040-esdhc
- fsl,t4240-esdhc
- fsl,ls1012a-esdhc
- fsl,ls1028a-esdhc
- fsl,ls1088a-esdhc
- fsl,ls1043a-esdhc
- fsl,ls1046a-esdhc
- fsl,ls2080a-esdhc
- const: fsl,esdhc
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
maxItems: 1
clock-frequency:
$ref: /schemas/types.yaml#/definitions/uint32
description: specifies eSDHC base clock frequency.
sdhci,wp-inverted:
$ref: /schemas/types.yaml#/definitions/flag
deprecated: true
description:
specifies that eSDHC controller reports
inverted write-protect state; New devices should use the generic
"wp-inverted" property.
sdhci,1-bit-only:
$ref: /schemas/types.yaml#/definitions/flag
deprecated: true
description:
specifies that a controller can only handle
1-bit data transfers. New devices should use the generic
"bus-width = <1>" property.
sdhci,auto-cmd12:
$ref: /schemas/types.yaml#/definitions/flag
description:
specifies that a controller can only handle auto CMD12.
voltage-ranges:
$ref: /schemas/types.yaml#/definitions/uint32-matrix
items:
items:
- description: specifies minimum slot voltage (mV).
- description: specifies maximum slot voltage (mV).
minItems: 1
maxItems: 8
dma-coherent: true
little-endian:
$ref: /schemas/types.yaml#/definitions/flag
description:
If the host controller is little-endian mode, specify
this property. The default endian mode is big-endian.
required:
- compatible
- reg
- interrupts
allOf:
- $ref: sdhci-common.yaml#
unevaluatedProperties: false
examples:
- |
mmc@2e000 {
compatible = "fsl,mpc8378-esdhc", "fsl,esdhc";
reg = <0x2e000 0x1000>;
interrupts = <42 0x8>;
interrupt-parent = <&ipic>;
/* Filled in by U-Boot */
clock-frequency = <100000000>;
voltage-ranges = <3300 3300>;
};
@@ -1,52 +0,0 @@
* Freescale Enhanced Secure Digital Host Controller (eSDHC)
The Enhanced Secure Digital Host Controller provides an interface
for MMC, SD, and SDIO types of memory cards.
This file documents differences between the core properties described
by mmc.txt and the properties used by the sdhci-esdhc driver.
Required properties:
- compatible : should be "fsl,esdhc", or "fsl,<chip>-esdhc".
Possible compatibles for PowerPC:
"fsl,mpc8536-esdhc"
"fsl,mpc8378-esdhc"
"fsl,p2020-esdhc"
"fsl,p4080-esdhc"
"fsl,t1040-esdhc"
"fsl,t4240-esdhc"
Possible compatibles for ARM:
"fsl,ls1012a-esdhc"
"fsl,ls1028a-esdhc"
"fsl,ls1088a-esdhc"
"fsl,ls1043a-esdhc"
"fsl,ls1046a-esdhc"
"fsl,ls2080a-esdhc"
- clock-frequency : specifies eSDHC base clock frequency.
Optional properties:
- sdhci,wp-inverted : specifies that eSDHC controller reports
inverted write-protect state; New devices should use the generic
"wp-inverted" property.
- sdhci,1-bit-only : specifies that a controller can only handle
1-bit data transfers. New devices should use the generic
"bus-width = <1>" property.
- sdhci,auto-cmd12: specifies that a controller can only handle auto
CMD12.
- voltage-ranges : two cells are required, first cell specifies minimum
slot voltage (mV), second cell specifies maximum slot voltage (mV).
Several ranges could be specified.
- little-endian : If the host controller is little-endian mode, specify
this property. The default endian mode is big-endian.
Example:
sdhci@2e000 {
compatible = "fsl,mpc8378-esdhc", "fsl,esdhc";
reg = <0x2e000 0x1000>;
interrupts = <42 0x8>;
interrupt-parent = <&ipic>;
/* Filled in by U-Boot */
clock-frequency = <0>;
voltage-ranges = <3300 3300>;
};