0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/mmc/mmc-pwrseq-emmc.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Simple eMMC hardware reset provider binding
0008
0009 maintainers:
0010 - Ulf Hansson <ulf.hansson@linaro.org>
0011
0012 description:
0013 The purpose of this driver is to perform standard eMMC hw reset
0014 procedure, as described by Jedec 4.4 specification. This procedure is
0015 performed just after MMC core enabled power to the given mmc host (to
0016 fix possible issues if bootloader has left eMMC card in initialized or
0017 unknown state), and before performing complete system reboot (also in
0018 case of emergency reboot call). The latter is needed on boards, which
0019 doesn't have hardware reset logic connected to emmc card and (limited or
0020 broken) ROM bootloaders are unable to read second stage from the emmc
0021 card if the card is left in unknown or already initialized state.
0022
0023 properties:
0024 compatible:
0025 const: mmc-pwrseq-emmc
0026
0027 reset-gpios:
0028 minItems: 1
0029 description:
0030 contains a GPIO specifier. The reset GPIO is asserted
0031 and then deasserted to perform eMMC card reset. To perform
0032 reset procedure as described in Jedec 4.4 specification, the
0033 gpio line should be defined as GPIO_ACTIVE_LOW.
0034
0035 required:
0036 - compatible
0037 - reset-gpios
0038
0039 additionalProperties: false
0040
0041 examples:
0042 - |
0043 #include <dt-bindings/gpio/gpio.h>
0044 sdhci0_pwrseq {
0045 compatible = "mmc-pwrseq-emmc";
0046 reset-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
0047 };
0048 ...