On Tue, Jan 29, 2019 at 06:40:39AM +0100, marek.vasut@gmail.com wrote: > From: Takeshi Saito > > This fixes card initialization failure in high speed mode. > > If U-Boot uses SDR or HS200/400 mode before starting Linux and Linux > DT does not enable SDR/HS200/HS400 mode, card initialization fails in > high speed mode. > > It is necessary to initialize SCC registers during card initialization > phase. HW reset function is registered only for a port with either of > SDR/HS200/HS400 properties in device tree. If SDR/HS200/HS400 properties > are not present in device tree, SCC registers will not be reset. In SoC > that support SCC registers, HW reset function should be registered > regardless of the configuration of device tree. > > Reproduction procedure: > - Use U-Boot that support MMC HS200/400 mode. > - Delete HS200/HS400 properties in device tree. > (Delete mmc-hs200-1_8v and mmc-hs400-1_8v) > - MMC port works high speed mode and all commands fail. > > Signed-off-by: Takeshi Saito > Signed-off-by: Marek Vasut > Cc: Niklas Söderlund > Cc: Simon Horman > Cc: Ulf Hansson > Cc: Wolfram Sang > Cc: linux-renesas-soc@vger.kernel.org > To: linux-mmc@vger.kernel.org Reviewed-by: Wolfram Sang