Merge branch '2020-05-25-misc-fixes'
[oweals/u-boot.git] / doc / README.atmel_mci
index 18b1bdf7e5df58217bf52d648232e145cce8ea25..6c027b089f2d670df22146879c45d67e11e517a8 100644 (file)
@@ -11,8 +11,7 @@ to write blocks.
 - AT91SAM9260 (not tested, but MCI is to AT91SAM9XE)
 - AT91SAM9G20 (not tested, should work)
 
-It should work with all other ATMEL devices that have MCI,
-including AVR32.
+It should work with all other ATMEL devices that have MCI.
 
 The generic driver does NOT assign port pins to the MCI block
 nor does it start the MCI clock. This has to be handled in a
@@ -20,7 +19,7 @@ board/SoC specific manner before the driver is initialized:
 
 example: this is added to at91sam9260_devices.c:
 
-#if defined(CONFIG_ATMEL_MCI) || defined(CONFIG_GENERIC_ATMEL_MCI)
+#if defined(CONFIG_GENERIC_ATMEL_MCI)
 void at91_mci_hw_init(void)
 {
        at91_set_a_periph(AT91_PIO_PORTA, 8, PUP);      /* MCCK */
@@ -59,17 +58,9 @@ int board_mmc_init(bd_t *bd)
 }
 
 /* this is a weak define that we are overriding */
-int board_mmc_getcd(u8 *cd, struct mmc *mmc)
+int board_mmc_getcd(struct mmc *mmc)
 {
-       /*
-        * the only currently existing use of this function
-        * (fsl_esdhc.c) suggests this function must return
-        * *cs = TRUE if a card is NOT detected -> in most
-        * cases the value of the pin when the detect switch
-        * closes to GND
-        */
-       *cd = at91_get_gpio_value (CONFIG_SYS_MMC_CD_PIN) ? 1 : 0;
-       return 0;
+       return !at91_get_gpio_value(CONFIG_SYS_MMC_CD_PIN);
 }
 
 #endif
@@ -77,10 +68,7 @@ int board_mmc_getcd(u8 *cd, struct mmc *mmc)
 and the board definition files needs:
 
 /* SD/MMC card */
-#define CONFIG_MMC                     1
-#define CONFIG_GENERIC_MMC             1
 #define CONFIG_GENERIC_ATMEL_MCI       1
 #define CONFIG_ATMEL_MCI_PORTB         1       /* Atmel XE-EK uses port B */
 #define CONFIG_SYS_MMC_CD_PIN          AT91_PIN_PC9
 #define CONFIG_CMD_MMC                 1
-