
Hello Reinhard,
thanks for your reply. I checked the register settings and sorted out, that the SDCBUS was initialized in 4-bit mode by the bootstrap.
So I added the explicit initialization when port A is used:
#if defined(CONFIG_ATMEL_MCI_PORTB) mmci_writel(SDCR, (MMCI_BF(SCDSEL, 1) | MMCI_BF(SCDBUS, 0))); #else mmci_writel(SDCR, (MMCI_BF(SCDSEL, 0) | MMCI_BF(SCDBUS, 0))); #endif
Best regards, Alex
-----Original Message----- From: Reinhard Meyer [mailto:u-boot@emk-elektronik.de] Sent: Montag, 16. August 2010 12:16 To: Schleifer, Alexander Cc: u-boot@lists.denx.de Subject: Re: [U-Boot] [PATCH v2a] AT91: add SD/MMC support
Dear Schleifer, Alexander,
But I found out, that the AT91Bootstrap initialization impacts
the U-Boot code. If I use the AT91Bootstrap (without mci initialization)
from NAND flash, the mmc init command successfully reads the card.
It fails if I use the AT91Bootstrap with mci initialization.
That's unlikely (it has the same init sequences)...
Do you have at91_mci_hw_init(void) in your at91samXXXX_devices.c and do you call that function from your board init?
Can you list me what that bootstrap does initialize differently if mci is enabled?
Best Regards, Reinhard