Poke at some magic registers to enable SD on the cafe chip.

Andres Salomon dilinger at debian.org
Tue Nov 7 22:38:13 EST 2006


Commit:     ace529a24f828f7728a6509008cf94966e5d8f1e
Parent:     f1877fb2967ec8c0c6e946cc24c253bb52ce4d06
commit ace529a24f828f7728a6509008cf94966e5d8f1e
Author:     Andres Salomon <dilinger at debian.org>
AuthorDate: Fri Oct 20 18:02:14 2006 -0400
Commit:     Andres Salomon <dilinger at debian.org>
CommitDate: Fri Oct 20 18:02:14 2006 -0400

    Poke at some magic registers to enable SD on the cafe chip.
---
 drivers/mmc/sdhci.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
index 9a7d39b..ebd1022 100644
--- a/drivers/mmc/sdhci.c
+++ b/drivers/mmc/sdhci.c
@@ -162,6 +162,12 @@ static void sdhci_init(struct sdhci_host
 
 	sdhci_reset(host, SDHCI_RESET_ALL);
 
+	/* write bits to some magic register to turn on the device;
+	 * FIXME: this should only be done for CAFE chip!  -dilinger */
+	writeb(0x06, host->ioaddr + 0x3038);
+	writel(0x60006, host->ioaddr + 0x315C);
+	/* XXX: any delays necessary? */
+
 	intmask = SDHCI_INT_BUS_POWER | SDHCI_INT_DATA_END_BIT |
 		SDHCI_INT_DATA_CRC | SDHCI_INT_DATA_TIMEOUT | SDHCI_INT_INDEX |
 		SDHCI_INT_END_BIT | SDHCI_INT_CRC | SDHCI_INT_TIMEOUT |


More information about the Commits-kernel mailing list