|
@@ -384,10 +384,6 @@ static int esdhc_init(struct mmc *mmc)
|
|
|
int ret = 0;
|
|
|
u8 card_absent;
|
|
|
|
|
|
- /* Enable cache snooping */
|
|
|
- if (cfg && !cfg->no_snoop)
|
|
|
- esdhc_write32(®s->scr, 0x00000040);
|
|
|
-
|
|
|
/* Reset the entire host controller */
|
|
|
esdhc_write32(®s->sysctl, SYSCTL_RSTA);
|
|
|
|
|
@@ -395,6 +391,10 @@ static int esdhc_init(struct mmc *mmc)
|
|
|
while ((esdhc_read32(®s->sysctl) & SYSCTL_RSTA) && --timeout)
|
|
|
udelay(1000);
|
|
|
|
|
|
+ /* Enable cache snooping */
|
|
|
+ if (cfg && !cfg->no_snoop)
|
|
|
+ esdhc_write32(®s->scr, 0x00000040);
|
|
|
+
|
|
|
esdhc_write32(®s->sysctl, SYSCTL_HCKEN | SYSCTL_IPGEN);
|
|
|
|
|
|
/* Set the initial clock speed */
|