xref: /freebsd-src/sys/contrib/device-tree/Bindings/mmc/mmc-pwrseq-emmc.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot* The simple eMMC hardware reset provider
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotThe purpose of this driver is to perform standard eMMC hw reset
4*c66ec88fSEmmanuel Vadotprocedure, as described by Jedec 4.4 specification. This procedure is
5*c66ec88fSEmmanuel Vadotperformed just after MMC core enabled power to the given mmc host (to
6*c66ec88fSEmmanuel Vadotfix possible issues if bootloader has left eMMC card in initialized or
7*c66ec88fSEmmanuel Vadotunknown state), and before performing complete system reboot (also in
8*c66ec88fSEmmanuel Vadotcase of emergency reboot call). The latter is needed on boards, which
9*c66ec88fSEmmanuel Vadotdoesn't have hardware reset logic connected to emmc card and (limited or
10*c66ec88fSEmmanuel Vadotbroken) ROM bootloaders are unable to read second stage from the emmc
11*c66ec88fSEmmanuel Vadotcard if the card is left in unknown or already initialized state.
12*c66ec88fSEmmanuel Vadot
13*c66ec88fSEmmanuel VadotRequired properties:
14*c66ec88fSEmmanuel Vadot- compatible : contains "mmc-pwrseq-emmc".
15*c66ec88fSEmmanuel Vadot- reset-gpios : contains a GPIO specifier. The reset GPIO is asserted
16*c66ec88fSEmmanuel Vadot	and then deasserted to perform eMMC card reset. To perform
17*c66ec88fSEmmanuel Vadot	reset procedure as described in Jedec 4.4 specification, the
18*c66ec88fSEmmanuel Vadot	gpio line should be defined as GPIO_ACTIVE_LOW.
19*c66ec88fSEmmanuel Vadot
20*c66ec88fSEmmanuel VadotExample:
21*c66ec88fSEmmanuel Vadot
22*c66ec88fSEmmanuel Vadot	sdhci0_pwrseq {
23*c66ec88fSEmmanuel Vadot		compatible = "mmc-pwrseq-emmc";
24*c66ec88fSEmmanuel Vadot		reset-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
25*c66ec88fSEmmanuel Vadot	}
26