The SD/SDIO specifications require a settling period after a card is
powered up, before the first command is issued. mmc_fdt_set_power()
enabled the regulators and de-asserted the mmc-pwrseq reset for the
power_up state but returned immediately, so the MMCCAM probe sent
CMD0/CMD5 with no delay. Linux applies an equivalent delay in its MMC
power-up path; MMCCAM had none.
Some devices tolerate this, but others do not respond to the initial
commands if probed too early and then fail to enumerate. On a RockPro64
the Broadcom BCM4359 SDIO Wi-Fi enumerates only intermittently without a
delay; adding one makes it enumerate reliably with no board-specific
post-power-on-delay-ms in the DTS.
Delay for a fixed settling time at the end of the power_up case. This is
a controller-independent fix in the shared FDT MMC helper, so it benefits
all MMCCAM hosts that use mmc_fdt_set_power().
MFC after: 1 week