diff --git a/README b/README
index a95348a..9c992c1 100644
--- a/README
+++ b/README
@@ -1457,9 +1457,6 @@ The following options need to be configured:
 			CONFIG_SH_MMCIF_CLK
 			Define the clock frequency for MMCIF
 
-		CONFIG_GENERIC_MMC
-		Enable the generic MMC driver
-
 		CONFIG_SUPPORT_EMMC_BOOT
 		Enable some additional features of the eMMC boot partitions.
 
diff --git a/configs/blanche_defconfig b/configs/blanche_defconfig
index 8dcbdd2..d662764 100644
--- a/configs/blanche_defconfig
+++ b/configs/blanche_defconfig
@@ -2,7 +2,6 @@ CONFIG_ARM=y
 CONFIG_ARCH_RMOBILE=y
 CONFIG_SYS_MALLOC_F_LEN=0x2000
 CONFIG_TARGET_BLANCHE=y
-# CONFIG_MMC is not set
 CONFIG_BOOTSTAGE_USER_COUNT=0x20
 CONFIG_BOOTSTAGE_STASH_ADDR=0x0
 CONFIG_BOOTSTAGE_STASH_SIZE=0x4096
@@ -19,6 +18,8 @@ CONFIG_CMD_EXT2=y
 CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
+# CONFIG_MMC is not set
+CONFIG_GENERIC_MMC=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
 CONFIG_SPI_FLASH_SPANSION=y
diff --git a/configs/sandbox_noblk_defconfig b/configs/sandbox_noblk_defconfig
index 6dc2591..10e12bf 100644
--- a/configs/sandbox_noblk_defconfig
+++ b/configs/sandbox_noblk_defconfig
@@ -100,6 +100,7 @@ CONFIG_CROS_EC_SPI=y
 CONFIG_PWRSEQ=y
 CONFIG_SPL_PWRSEQ=y
 # CONFIG_MMC is not set
+CONFIG_GENERIC_MMC=y
 CONFIG_SPI_FLASH_SANDBOX=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
diff --git a/doc/README.atmel_mci b/doc/README.atmel_mci
index 1ec4465..6043dab 100644
--- a/doc/README.atmel_mci
+++ b/doc/README.atmel_mci
@@ -69,8 +69,6 @@ int board_mmc_getcd(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
diff --git a/doc/README.socfpga b/doc/README.socfpga
index e717637..cb805cf 100644
--- a/doc/README.socfpga
+++ b/doc/README.socfpga
@@ -14,8 +14,5 @@ socfpga_dw_mmc
 Here are macro and detailed configuration required to enable DesignWare SDMMC
 controller support within SOCFPGA
 
-#define CONFIG_GENERIC_MMC
--> Enable the generic MMC driver
-
 #define CONFIG_SYS_MMC_MAX_BLK_COUNT	256
 -> Using smaller max blk cnt to avoid flooding the limited stack in OCRAM
diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig
index 147e52d..df4913b 100644
--- a/drivers/mmc/Kconfig
+++ b/drivers/mmc/Kconfig
@@ -10,6 +10,10 @@ config MMC
 	  If you want MMC/SD/SDIO support, you should say Y here and
 	  also to your specific host controller driver.
 
+config GENERIC_MMC
+	bool "Generic MMC driver framework"
+	default MMC
+
 config DM_MMC
 	bool "Enable MMC controllers using Driver Model"
 	depends on DM
diff --git a/include/configs/BSC9132QDS.h b/include/configs/BSC9132QDS.h
index f336f28..9e729fd 100644
--- a/include/configs/BSC9132QDS.h
+++ b/include/configs/BSC9132QDS.h
@@ -478,7 +478,6 @@ combinations. this should be removed later
 
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #endif
 
diff --git a/include/configs/MPC8308RDB.h b/include/configs/MPC8308RDB.h
index f833450..4dbc2ba 100644
--- a/include/configs/MPC8308RDB.h
+++ b/include/configs/MPC8308RDB.h
@@ -25,8 +25,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC83xx_ESDHC_ADDR
 #define CONFIG_SYS_FSL_ESDHC_USE_PIO
-
-#define CONFIG_GENERIC_MMC
 #endif
 
 /*
diff --git a/include/configs/MPC837XEMDS.h b/include/configs/MPC837XEMDS.h
index 62d56ca..4239f77 100644
--- a/include/configs/MPC837XEMDS.h
+++ b/include/configs/MPC837XEMDS.h
@@ -485,7 +485,6 @@ extern int board_pci_host_broken(void);
 #define CONFIG_FSL_ESDHC
 #define CONFIG_FSL_ESDHC_PIN_MUX
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC83xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 /*
diff --git a/include/configs/MPC837XERDB.h b/include/configs/MPC837XERDB.h
index 67ed648..370e381 100644
--- a/include/configs/MPC837XERDB.h
+++ b/include/configs/MPC837XERDB.h
@@ -497,7 +497,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_FSL_ESDHC_PIN_MUX
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC83xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 /*
diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h
index bc703ce..4635cdf 100644
--- a/include/configs/MPC8536DS.h
+++ b/include/configs/MPC8536DS.h
@@ -603,7 +603,6 @@
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 /*
diff --git a/include/configs/MPC8569MDS.h b/include/configs/MPC8569MDS.h
index 2b0d98b..caa52be 100644
--- a/include/configs/MPC8569MDS.h
+++ b/include/configs/MPC8569MDS.h
@@ -463,7 +463,6 @@ extern unsigned long get_clock_freq(void);
 #define CONFIG_FSL_ESDHC
 #define CONFIG_FSL_ESDHC_PIN_MUX
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 /*
diff --git a/include/configs/P1010RDB.h b/include/configs/P1010RDB.h
index 1d01e7f..baa8369 100644
--- a/include/configs/P1010RDB.h
+++ b/include/configs/P1010RDB.h
@@ -669,7 +669,6 @@ extern unsigned long get_sdram_size(void);
 
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #endif
 
diff --git a/include/configs/P1022DS.h b/include/configs/P1022DS.h
index 89eec12..f1d8116 100644
--- a/include/configs/P1022DS.h
+++ b/include/configs/P1022DS.h
@@ -504,7 +504,6 @@
 
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #endif
 
diff --git a/include/configs/P2041RDB.h b/include/configs/P2041RDB.h
index f58fda1..15384f1 100644
--- a/include/configs/P2041RDB.h
+++ b/include/configs/P2041RDB.h
@@ -606,7 +606,6 @@ unsigned long get_board_sys_clk(unsigned long dummy);
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* Hash command with SHA acceleration supported in hardware */
diff --git a/include/configs/T102xQDS.h b/include/configs/T102xQDS.h
index 2c3b660..00ffb83 100644
--- a/include/configs/T102xQDS.h
+++ b/include/configs/T102xQDS.h
@@ -654,7 +654,6 @@ unsigned long get_board_ddr_clk(void);
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* Qman/Bman */
diff --git a/include/configs/T102xRDB.h b/include/configs/T102xRDB.h
index 79c34ef..02c3fdd 100644
--- a/include/configs/T102xRDB.h
+++ b/include/configs/T102xRDB.h
@@ -658,7 +658,6 @@ unsigned long get_board_ddr_clk(void);
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* Qman/Bman */
diff --git a/include/configs/T1040QDS.h b/include/configs/T1040QDS.h
index 15a29cb..bd8e46e 100644
--- a/include/configs/T1040QDS.h
+++ b/include/configs/T1040QDS.h
@@ -542,7 +542,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_FSL_ESDHC
 #define CONFIG_FSL_ESDHC_USE_PERIPHERAL_CLK
 #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #define CONFIG_FSL_ESDHC_ADAPTER_IDENT
 #endif
 
diff --git a/include/configs/T104xRDB.h b/include/configs/T104xRDB.h
index 45aaf90..82d3f10 100644
--- a/include/configs/T104xRDB.h
+++ b/include/configs/T104xRDB.h
@@ -652,7 +652,6 @@ $(SRCTREE)/board/freescale/t104xrdb/t1042d4_sd_rcw.cfg
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* Qman/Bman */
diff --git a/include/configs/T208xQDS.h b/include/configs/T208xQDS.h
index 606c928..a9835b9 100644
--- a/include/configs/T208xQDS.h
+++ b/include/configs/T208xQDS.h
@@ -721,7 +721,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #define CONFIG_FSL_ESDHC_ADAPTER_IDENT
 #endif
 
diff --git a/include/configs/T208xRDB.h b/include/configs/T208xRDB.h
index 825bf25..1e2b94e 100644
--- a/include/configs/T208xRDB.h
+++ b/include/configs/T208xRDB.h
@@ -670,7 +670,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #endif
 
 /*
diff --git a/include/configs/T4240QDS.h b/include/configs/T4240QDS.h
index 91aa12d..2bcb362 100644
--- a/include/configs/T4240QDS.h
+++ b/include/configs/T4240QDS.h
@@ -519,7 +519,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
 #define CONFIG_ESDHC_DETECT_QUIRK \
 	(!(readb(QIXIS_BASE + QIXIS_BRDCFG5) & QIXIS_MUX_SDHC) || \
diff --git a/include/configs/T4240RDB.h b/include/configs/T4240RDB.h
index be18f66..2a1b547 100644
--- a/include/configs/T4240RDB.h
+++ b/include/configs/T4240RDB.h
@@ -699,7 +699,6 @@ unsigned long get_board_ddr_clk(void);
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
 #endif
 
diff --git a/include/configs/UCP1020.h b/include/configs/UCP1020.h
index ad1a387..28f4b14 100644
--- a/include/configs/UCP1020.h
+++ b/include/configs/UCP1020.h
@@ -473,7 +473,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #define CONFIG_MMC_SPI
 #define CONFIG_CMD_MMC_SPI
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* Misc Extra Settings */
diff --git a/include/configs/adp-ag101p.h b/include/configs/adp-ag101p.h
index dbf85e1..a2cdd71 100644
--- a/include/configs/adp-ag101p.h
+++ b/include/configs/adp-ag101p.h
@@ -100,7 +100,6 @@
 /*
  * SD (MMC) controller
  */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_FTSDC010
 #define CONFIG_FTSDC010_NUMBER		1
 #define CONFIG_FTSDC010_SDIO
diff --git a/include/configs/advantech_dms-ba16.h b/include/configs/advantech_dms-ba16.h
index 33f9e33..1736426 100644
--- a/include/configs/advantech_dms-ba16.h
+++ b/include/configs/advantech_dms-ba16.h
@@ -52,7 +52,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_FSL_USDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR      0
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 
 /* USB Configs */
diff --git a/include/configs/alt.h b/include/configs/alt.h
index 726e6d6..e338fa9 100644
--- a/include/configs/alt.h
+++ b/include/configs/alt.h
@@ -87,8 +87,6 @@
 #define CONFIG_USB_MAX_CONTROLLER_COUNT	2
 
 /* MMCIF */
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SH_MMCIF
 #define CONFIG_SH_MMCIF_ADDR		0xee200000
 #define CONFIG_SH_MMCIF_CLK		48000000
diff --git a/include/configs/am3517_crane.h b/include/configs/am3517_crane.h
index b916603..5d56860 100644
--- a/include/configs/am3517_crane.h
+++ b/include/configs/am3517_crane.h
@@ -75,7 +75,6 @@
 #define CONFIG_BAUDRATE			115200
 #define CONFIG_SYS_BAUDRATE_TABLE	{4800, 9600, 19200, 38400, 57600,\
 					115200}
-#define CONFIG_GENERIC_MMC		1
 
 /*
  * USB configuration
diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h
index 1b9d5ff..13de819 100644
--- a/include/configs/am3517_evm.h
+++ b/include/configs/am3517_evm.h
@@ -76,9 +76,6 @@
 #define CONFIG_SYS_BAUDRATE_TABLE	{4800, 9600, 19200, 38400, 57600,\
 					115200}
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /*
  * USB configuration
  * Enable CONFIG_USB_MUSB_HOST for Host functionalities MSC, keyboard
diff --git a/include/configs/apalis_imx6.h b/include/configs/apalis_imx6.h
index 8cc3874..8e8892e 100644
--- a/include/configs/apalis_imx6.h
+++ b/include/configs/apalis_imx6.h
@@ -67,7 +67,6 @@
 #define CONFIG_SYS_FSL_USDHC_NUM	3
 
 #define CONFIG_SUPPORT_EMMC_BOOT	/* eMMC specific */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_FAT_WRITE
 
diff --git a/include/configs/apalis_t30.h b/include/configs/apalis_t30.h
index e645ad2..e2acc6e 100644
--- a/include/configs/apalis_t30.h
+++ b/include/configs/apalis_t30.h
@@ -25,9 +25,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC support */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, before config block at the end of 1st "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE + \
diff --git a/include/configs/apf27.h b/include/configs/apf27.h
index caa821b..504bf92 100644
--- a/include/configs/apf27.h
+++ b/include/configs/apf27.h
@@ -307,7 +307,6 @@
  * SD/MMC
  */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_MXC_MCI_REGS_BASE	0x10014000
 #endif
 
diff --git a/include/configs/at91sam9260ek.h b/include/configs/at91sam9260ek.h
index 724231f..022353c 100644
--- a/include/configs/at91sam9260ek.h
+++ b/include/configs/at91sam9260ek.h
@@ -145,7 +145,6 @@
 
 /* MMC */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #endif
 
diff --git a/include/configs/at91sam9263ek.h b/include/configs/at91sam9263ek.h
index d8bebdc..1fea328 100644
--- a/include/configs/at91sam9263ek.h
+++ b/include/configs/at91sam9263ek.h
@@ -103,7 +103,6 @@
 
 /* MMC */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #endif
 
diff --git a/include/configs/at91sam9m10g45ek.h b/include/configs/at91sam9m10g45ek.h
index 1f8c267..8577a11 100644
--- a/include/configs/at91sam9m10g45ek.h
+++ b/include/configs/at91sam9m10g45ek.h
@@ -98,7 +98,6 @@
 /* MMC */
 
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #endif
 
diff --git a/include/configs/at91sam9n12ek.h b/include/configs/at91sam9n12ek.h
index 15b3e84..c4ac21d 100644
--- a/include/configs/at91sam9n12ek.h
+++ b/include/configs/at91sam9n12ek.h
@@ -122,7 +122,6 @@
 
 /* MMC */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #endif
 
diff --git a/include/configs/at91sam9rlek.h b/include/configs/at91sam9rlek.h
index 79d58dd..4d0e7b4 100644
--- a/include/configs/at91sam9rlek.h
+++ b/include/configs/at91sam9rlek.h
@@ -105,7 +105,6 @@
 /* MMC */
 
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #endif
 
diff --git a/include/configs/at91sam9x5ek.h b/include/configs/at91sam9x5ek.h
index f414023..897ffa9 100644
--- a/include/configs/at91sam9x5ek.h
+++ b/include/configs/at91sam9x5ek.h
@@ -110,7 +110,6 @@
 
 /* MMC */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #endif
 
diff --git a/include/configs/atngw100.h b/include/configs/atngw100.h
index 2881cc8..d966e1c 100644
--- a/include/configs/atngw100.h
+++ b/include/configs/atngw100.h
@@ -85,7 +85,6 @@
 #define CONFIG_SYS_NR_PIOS			5
 #define CONFIG_SYS_HSDRAMC
 #define CONFIG_GENERIC_ATMEL_MCI
-#define CONFIG_GENERIC_MMC
 #define CONFIG_ATMEL_SPI
 
 #define CONFIG_SYS_DCACHE_LINESZ		32
diff --git a/include/configs/atngw100mkii.h b/include/configs/atngw100mkii.h
index 9128b2e..8a9215e 100644
--- a/include/configs/atngw100mkii.h
+++ b/include/configs/atngw100mkii.h
@@ -104,7 +104,6 @@
 #define CONFIG_SYS_NR_PIOS		5
 #define CONFIG_SYS_HSDRAMC
 #define CONFIG_GENERIC_ATMEL_MCI
-#define CONFIG_GENERIC_MMC
 #define CONFIG_ATMEL_SPI
 
 #define CONFIG_SYS_DCACHE_LINESZ	32
diff --git a/include/configs/atstk1002.h b/include/configs/atstk1002.h
index 5b101ba..c9a36bc 100644
--- a/include/configs/atstk1002.h
+++ b/include/configs/atstk1002.h
@@ -106,7 +106,6 @@
 #define CONFIG_SYS_NR_PIOS			5
 #define CONFIG_SYS_HSDRAMC
 #define CONFIG_GENERIC_ATMEL_MCI
-#define CONFIG_GENERIC_MMC
 
 #define CONFIG_SYS_DCACHE_LINESZ		32
 #define CONFIG_SYS_ICACHE_LINESZ		32
diff --git a/include/configs/axs10x.h b/include/configs/axs10x.h
index ce5392c..0707599 100644
--- a/include/configs/axs10x.h
+++ b/include/configs/axs10x.h
@@ -82,11 +82,6 @@
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS	64
 
 /*
- * SD/MMC configuration
- */
-#define CONFIG_GENERIC_MMC
-
-/*
  * Ethernet PHY configuration
  */
 #define CONFIG_MII
diff --git a/include/configs/bayleybay.h b/include/configs/bayleybay.h
index 60c5139..3efdbd2 100644
--- a/include/configs/bayleybay.h
+++ b/include/configs/bayleybay.h
@@ -23,8 +23,6 @@
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SATA}, \
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SATA_ALT}
 
-#define CONFIG_GENERIC_MMC
-
 /* Environment configuration */
 #define CONFIG_ENV_SECT_SIZE		0x1000
 #define CONFIG_ENV_OFFSET		0x006ff000
diff --git a/include/configs/bcm23550_w1d.h b/include/configs/bcm23550_w1d.h
index ab26a25..8368e15 100644
--- a/include/configs/bcm23550_w1d.h
+++ b/include/configs/bcm23550_w1d.h
@@ -31,8 +31,6 @@
 #define CONFIG_KONA_GPIO
 
 /* MMC/SD Driver */
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SYS_SDIO_BASE0 SDIO1_BASE_ADDR
 #define CONFIG_SYS_SDIO_BASE1 SDIO2_BASE_ADDR
 #define CONFIG_SYS_SDIO_BASE2 SDIO3_BASE_ADDR
diff --git a/include/configs/bcm28155_ap.h b/include/configs/bcm28155_ap.h
index 0c49563..299674a 100644
--- a/include/configs/bcm28155_ap.h
+++ b/include/configs/bcm28155_ap.h
@@ -30,8 +30,6 @@
 #define CONFIG_KONA_GPIO
 
 /* MMC/SD Driver */
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SYS_SDIO_BASE0 SDIO1_BASE_ADDR
 #define CONFIG_SYS_SDIO_BASE1 SDIO2_BASE_ADDR
 #define CONFIG_SYS_SDIO_BASE2 SDIO3_BASE_ADDR
diff --git a/include/configs/beaver.h b/include/configs/beaver.h
index 0fe47ec..cc32861 100644
--- a/include/configs/beaver.h
+++ b/include/configs/beaver.h
@@ -26,9 +26,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/bf518f-ezbrd.h b/include/configs/bf518f-ezbrd.h
index 05b338f..e3c2286 100644
--- a/include/configs/bf518f-ezbrd.h
+++ b/include/configs/bf518f-ezbrd.h
@@ -128,7 +128,6 @@
  * SDH Settings
  */
 #if !defined(__ADSPBF512__)
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BFIN_SDH
 #endif
 
diff --git a/include/configs/bf527-ad7160-eval.h b/include/configs/bf527-ad7160-eval.h
index 40ca18d..e433aaa 100644
--- a/include/configs/bf527-ad7160-eval.h
+++ b/include/configs/bf527-ad7160-eval.h
@@ -115,7 +115,6 @@
 /*
  * SPI_MMC Settings
  */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_MMC_SPI
 
 /*
diff --git a/include/configs/bf537-stamp.h b/include/configs/bf537-stamp.h
index ab777e5..6858153 100644
--- a/include/configs/bf537-stamp.h
+++ b/include/configs/bf537-stamp.h
@@ -124,9 +124,6 @@
  * SPI_MMC Settings
  */
 #define CONFIG_MMC_SPI
-#ifdef CONFIG_MMC_SPI
-#define CONFIG_GENERIC_MMC
-#endif
 
 /*
  * NAND Settings
diff --git a/include/configs/bf548-ezkit.h b/include/configs/bf548-ezkit.h
index 81d5af6..35cbebd 100644
--- a/include/configs/bf548-ezkit.h
+++ b/include/configs/bf548-ezkit.h
@@ -142,7 +142,6 @@
  * SDH Settings
  */
 #if !defined(__ADSPBF544__)
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BFIN_SDH
 #endif
 
diff --git a/include/configs/bf609-ezkit.h b/include/configs/bf609-ezkit.h
index 55127c5..5791810 100644
--- a/include/configs/bf609-ezkit.h
+++ b/include/configs/bf609-ezkit.h
@@ -126,7 +126,6 @@
 /*
  * SDH Settings
  */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BFIN_SDH
 
 /*
diff --git a/include/configs/blanche.h b/include/configs/blanche.h
index 0deb350..e040dba 100755
--- a/include/configs/blanche.h
+++ b/include/configs/blanche.h
@@ -95,8 +95,6 @@
 /* USB */
 #undef CONFIG_CMD_USB
 
-#define CONFIG_GENERIC_MMC
-
 /* Module stop status bits */
 /* INTC-RT */
 #define CONFIG_SMSTP0_ENA	0x00400000
diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h
index 8be483a..68e9efe 100644
--- a/include/configs/brppt1.h
+++ b/include/configs/brppt1.h
@@ -48,7 +48,6 @@
 
 /* MMC/SD IP block */
 #if defined(CONFIG_EMMC_BOOT)
- #define CONFIG_GENERIC_MMC
  #define CONFIG_SUPPORT_EMMC_BOOT
 #endif /* CONFIG_EMMC_BOOT */
 
diff --git a/include/configs/brxre1.h b/include/configs/brxre1.h
index 4a97bf1..02094b5 100644
--- a/include/configs/brxre1.h
+++ b/include/configs/brxre1.h
@@ -43,7 +43,6 @@
 /* GPIO */
 
 /* MMC/SD IP block */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SUPPORT_EMMC_BOOT
 
 /* Always 64 KiB env size */
diff --git a/include/configs/cardhu.h b/include/configs/cardhu.h
index 7e3966f..e338f9b 100644
--- a/include/configs/cardhu.h
+++ b/include/configs/cardhu.h
@@ -30,9 +30,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/cei-tk1-som.h b/include/configs/cei-tk1-som.h
index 9439863..5ec63cd 100644
--- a/include/configs/cei-tk1-som.h
+++ b/include/configs/cei-tk1-som.h
@@ -29,9 +29,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
index 1ad0969..a544223 100644
--- a/include/configs/clearfog.h
+++ b/include/configs/clearfog.h
@@ -43,7 +43,6 @@
 /*
  * SDIO/MMC Card Configuration
  */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SYS_MMC_BASE		MVEBU_SDIO_BASE
 
 /* Partition support */
diff --git a/include/configs/cm-bf537e.h b/include/configs/cm-bf537e.h
index 32229d2..cc31a30 100644
--- a/include/configs/cm-bf537e.h
+++ b/include/configs/cm-bf537e.h
@@ -118,7 +118,6 @@
 /*
  * SPI_MMC Settings
  */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_MMC_SPI
 
 /*
diff --git a/include/configs/cm-bf537u.h b/include/configs/cm-bf537u.h
index dc2eabd..282eb4f 100644
--- a/include/configs/cm-bf537u.h
+++ b/include/configs/cm-bf537u.h
@@ -116,7 +116,6 @@
 /*
  * SPI_MMC Settings
  */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_MMC_SPI
 
 /*
diff --git a/include/configs/cm_t35.h b/include/configs/cm_t35.h
index 2bc486a..017a8bd 100644
--- a/include/configs/cm_t35.h
+++ b/include/configs/cm_t35.h
@@ -80,8 +80,6 @@
 #define CONFIG_SYS_BAUDRATE_TABLE	{4800, 9600, 19200, 38400, 57600,\
 					115200}
 
-#define CONFIG_GENERIC_MMC
-
 /* USB */
 #define CONFIG_USB_OMAP3
 #define CONFIG_USB_EHCI
diff --git a/include/configs/cm_t3517.h b/include/configs/cm_t3517.h
index 907bb31..da866e4 100644
--- a/include/configs/cm_t3517.h
+++ b/include/configs/cm_t3517.h
@@ -87,8 +87,6 @@
 
 #define CONFIG_OMAP_GPIO
 
-#define CONFIG_GENERIC_MMC
-
 /* USB */
 #define CONFIG_USB_MUSB_AM35X
 
diff --git a/include/configs/colibri_imx6.h b/include/configs/colibri_imx6.h
index de43fca..c4765eb 100644
--- a/include/configs/colibri_imx6.h
+++ b/include/configs/colibri_imx6.h
@@ -65,7 +65,6 @@
 #define CONFIG_SYS_FSL_USDHC_NUM	2
 
 #define CONFIG_SUPPORT_EMMC_BOOT	/* eMMC specific */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_FAT_WRITE
 
diff --git a/include/configs/colibri_t20.h b/include/configs/colibri_t20.h
index 0520283..8b854c3 100644
--- a/include/configs/colibri_t20.h
+++ b/include/configs/colibri_t20.h
@@ -24,9 +24,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC support */
-#define CONFIG_GENERIC_MMC
-
 /* USB host support */
 #define CONFIG_USB_EHCI
 #define CONFIG_USB_EHCI_TEGRA
diff --git a/include/configs/colibri_t30.h b/include/configs/colibri_t30.h
index 5b66429..bc19044 100644
--- a/include/configs/colibri_t30.h
+++ b/include/configs/colibri_t30.h
@@ -25,9 +25,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC support */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, before config block at the end of 1st "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE + \
diff --git a/include/configs/colibri_vf.h b/include/configs/colibri_vf.h
index e24191a..e0feb0a 100644
--- a/include/configs/colibri_vf.h
+++ b/include/configs/colibri_vf.h
@@ -57,8 +57,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
 
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_RBTREE
 #define CONFIG_LZO
 #define CONFIG_CMD_UBIFS	/* increases size by almost 60 KB */
diff --git a/include/configs/conga-qeval20-qa3-e3845.h b/include/configs/conga-qeval20-qa3-e3845.h
index d21c95a..a70845e 100644
--- a/include/configs/conga-qeval20-qa3-e3845.h
+++ b/include/configs/conga-qeval20-qa3-e3845.h
@@ -23,8 +23,6 @@
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SATA}, \
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SATA_ALT}
 
-#define CONFIG_GENERIC_MMC
-
 #undef CONFIG_USB_MAX_CONTROLLER_COUNT
 #define CONFIG_USB_MAX_CONTROLLER_COUNT		1
 
diff --git a/include/configs/controlcenterd.h b/include/configs/controlcenterd.h
index b1d67b2..e5d60fb 100644
--- a/include/configs/controlcenterd.h
+++ b/include/configs/controlcenterd.h
@@ -206,8 +206,6 @@
 /*
  * MMC
  */
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
 
diff --git a/include/configs/corenet_ds.h b/include/configs/corenet_ds.h
index 0f48f38..7637bb8 100644
--- a/include/configs/corenet_ds.h
+++ b/include/configs/corenet_ds.h
@@ -620,7 +620,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* Hash command with SHA acceleration supported in hardware */
diff --git a/include/configs/crownbay.h b/include/configs/crownbay.h
index 219944a..5ec09ba 100644
--- a/include/configs/crownbay.h
+++ b/include/configs/crownbay.h
@@ -24,8 +24,6 @@
 #define CONFIG_SCSI_DEV_LIST		\
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_TCF_SATA}
 
-#define CONFIG_GENERIC_MMC
-
 /* Environment configuration */
 #define CONFIG_ENV_SECT_SIZE		0x1000
 #define CONFIG_ENV_OFFSET		0
diff --git a/include/configs/cyrus.h b/include/configs/cyrus.h
index 18a9156..c9a57af 100644
--- a/include/configs/cyrus.h
+++ b/include/configs/cyrus.h
@@ -442,7 +442,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
 #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
-#define CONFIG_GENERIC_MMC
 #endif
 
 /*
diff --git a/include/configs/da850evm.h b/include/configs/da850evm.h
index 3321419..ecefa97 100644
--- a/include/configs/da850evm.h
+++ b/include/configs/da850evm.h
@@ -310,11 +310,6 @@
 #undef CONFIG_CMD_ENV
 #endif
 
-/* SD/MMC configuration */
-#ifndef CONFIG_USE_NOR
-#define CONFIG_GENERIC_MMC
-#endif
-
 #ifndef CONFIG_DIRECT_NOR_BOOT
 /* defines for SPL */
 #define CONFIG_SPL_FRAMEWORK
diff --git a/include/configs/dalmore.h b/include/configs/dalmore.h
index 1fa445a..f3ff9e7 100644
--- a/include/configs/dalmore.h
+++ b/include/configs/dalmore.h
@@ -23,9 +23,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h
index beb14bc..1fdeedd 100644
--- a/include/configs/db-88f6820-gp.h
+++ b/include/configs/db-88f6820-gp.h
@@ -43,7 +43,6 @@
 /*
  * SDIO/MMC Card Configuration
  */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SYS_MMC_BASE		MVEBU_SDIO_BASE
 
 /*
diff --git a/include/configs/dfi-bt700.h b/include/configs/dfi-bt700.h
index 211c9ea..edb4958 100644
--- a/include/configs/dfi-bt700.h
+++ b/include/configs/dfi-bt700.h
@@ -28,8 +28,6 @@
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SATA}, \
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SATA_ALT}
 
-#define CONFIG_GENERIC_MMC
-
 #undef CONFIG_USB_MAX_CONTROLLER_COUNT
 #define CONFIG_USB_MAX_CONTROLLER_COUNT		1
 
diff --git a/include/configs/dragonboard410c.h b/include/configs/dragonboard410c.h
index 29aa518..da1c589 100644
--- a/include/configs/dragonboard410c.h
+++ b/include/configs/dragonboard410c.h
@@ -31,9 +31,6 @@
 /* Generic Timer Definitions */
 #define COUNTER_FREQUENCY		19000000
 
-/* This are needed to have proper mmc support */
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SYS_LDSCRIPT "board/qualcomm/dragonboard410c/u-boot.lds"
 
 /* Fixup - in init code we switch from device to host mode,
diff --git a/include/configs/e2220-1170.h b/include/configs/e2220-1170.h
index 064906d..b6a758f 100644
--- a/include/configs/e2220-1170.h
+++ b/include/configs/e2220-1170.h
@@ -21,9 +21,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/ethernut5.h b/include/configs/ethernut5.h
index 03fa0a3..a3c40d6 100644
--- a/include/configs/ethernut5.h
+++ b/include/configs/ethernut5.h
@@ -126,7 +126,6 @@
 
 /* MMC */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #define CONFIG_SYS_MMC_CD_PIN		AT91_PIO_PORTC, 8
 #endif
diff --git a/include/configs/exynos-common.h b/include/configs/exynos-common.h
index 7868c86..6f57b21 100644
--- a/include/configs/exynos-common.h
+++ b/include/configs/exynos-common.h
@@ -37,7 +37,6 @@
 #define CONFIG_BAUDRATE			115200
 
 /* SD/MMC configuration */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 
 /* PWM */
diff --git a/include/configs/galileo.h b/include/configs/galileo.h
index 986001e..dcbaade 100644
--- a/include/configs/galileo.h
+++ b/include/configs/galileo.h
@@ -26,9 +26,6 @@
 #undef CONFIG_SCSI_AHCI
 #undef CONFIG_SCSI
 
-/* SD/MMC support */
-#define CONFIG_GENERIC_MMC
-
 /* 10/100M Ethernet support */
 #define CONFIG_DESIGNWARE_ETH
 #define CONFIG_DW_ALTDESCRIPTOR
diff --git a/include/configs/ge_bx50v3.h b/include/configs/ge_bx50v3.h
index 150c4b2..a2adbeb 100644
--- a/include/configs/ge_bx50v3.h
+++ b/include/configs/ge_bx50v3.h
@@ -64,7 +64,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_FSL_USDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR      0
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 
 /* USB Configs */
diff --git a/include/configs/gose.h b/include/configs/gose.h
index 45395cd..15b3227 100644
--- a/include/configs/gose.h
+++ b/include/configs/gose.h
@@ -94,7 +94,6 @@
 #define CONFIG_SMSTP7_ENA	0x00200000
 
 /* SDHI */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SH_SDHI_FREQ		97500000
 
 #endif	/* __GOSE_H */
diff --git a/include/configs/harmony.h b/include/configs/harmony.h
index e9781cc..923c38f 100644
--- a/include/configs/harmony.h
+++ b/include/configs/harmony.h
@@ -26,9 +26,6 @@
 
 #define CONFIG_MACH_TYPE		MACH_TYPE_HARMONY
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* NAND support */
 #define CONFIG_CMD_NAND
 #define CONFIG_TEGRA_NAND
diff --git a/include/configs/hikey.h b/include/configs/hikey.h
index 0f6f117..9ec8140 100644
--- a/include/configs/hikey.h
+++ b/include/configs/hikey.h
@@ -69,7 +69,6 @@
 #define CONFIG_HIKEY_GPIO
 
 /* SD/MMC configuration */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 
 #define CONFIG_FS_EXT4
diff --git a/include/configs/hrcon.h b/include/configs/hrcon.h
index 311e2bd..5528dfc 100644
--- a/include/configs/hrcon.h
+++ b/include/configs/hrcon.h
@@ -26,8 +26,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC83xx_ESDHC_ADDR
 
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_CMD_FPGAD
 #define CONFIG_CMD_IOLOOP
 
diff --git a/include/configs/imx27lite-common.h b/include/configs/imx27lite-common.h
index 26be240..cbd1dbc 100644
--- a/include/configs/imx27lite-common.h
+++ b/include/configs/imx27lite-common.h
@@ -135,11 +135,6 @@
 #define CONFIG_MXC_NAND_HWECC
 
 /*
- * SD/MMC
- */
-#define CONFIG_GENERIC_MMC
-
-/*
  * GPIO
  */
 #define CONFIG_MXC_GPIO
diff --git a/include/configs/jetson-tk1.h b/include/configs/jetson-tk1.h
index febedca..7c0456c 100644
--- a/include/configs/jetson-tk1.h
+++ b/include/configs/jetson-tk1.h
@@ -25,9 +25,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/k2g_evm.h b/include/configs/k2g_evm.h
index 81da8ff..bd25231 100644
--- a/include/configs/k2g_evm.h
+++ b/include/configs/k2g_evm.h
@@ -60,9 +60,6 @@
 #define CONFIG_PHY_MICREL
 #define PHY_ANEG_TIMEOUT	10000 /* PHY needs longer aneg time */
 
-/* MMC/SD */
-#define CONFIG_GENERIC_MMC
-
 #undef CONFIG_ENV_IS_IN_NAND
 #define CONFIG_ENV_IS_IN_FAT
 #define FAT_ENV_INTERFACE		"mmc"
diff --git a/include/configs/kc1.h b/include/configs/kc1.h
index 8223f5a..33b6a98 100644
--- a/include/configs/kc1.h
+++ b/include/configs/kc1.h
@@ -85,12 +85,6 @@
 #define CONFIG_SYS_NO_FLASH
 
 /*
- * MMC
- */
-
-#define CONFIG_GENERIC_MMC
-
-/*
  * Power
  */
 
diff --git a/include/configs/koelsch.h b/include/configs/koelsch.h
index c7aa7cc..6371c5b 100644
--- a/include/configs/koelsch.h
+++ b/include/configs/koelsch.h
@@ -94,7 +94,6 @@
 #define CONFIG_SMSTP7_ENA	0x00200000
 
 /* SD */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SH_SDHI_FREQ	97500000
 
 #endif	/* __KOELSCH_H */
diff --git a/include/configs/lager.h b/include/configs/lager.h
index a7894ca..f30cc16 100644
--- a/include/configs/lager.h
+++ b/include/configs/lager.h
@@ -86,8 +86,6 @@
 #define CONFIG_USB_MAX_CONTROLLER_COUNT	3
 
 /* MMC */
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SH_MMCIF
 #define CONFIG_SH_MMCIF_ADDR		0xEE220000
 #define CONFIG_SH_MMCIF_CLK		97500000
diff --git a/include/configs/legoev3.h b/include/configs/legoev3.h
index ce058b1..1d4e7cd 100644
--- a/include/configs/legoev3.h
+++ b/include/configs/legoev3.h
@@ -213,9 +213,6 @@
 #define CONFIG_SYS_NO_FLASH
 #define CONFIG_ENV_SIZE		(16 << 10)
 
-/* SD/MMC configuration */
-#define CONFIG_GENERIC_MMC
-
 /* additions for new relocation code, must added to all boards */
 #define CONFIG_SYS_SDRAM_BASE		0xc0000000
 
diff --git a/include/configs/ls1012aqds.h b/include/configs/ls1012aqds.h
index 578d328..5aaf3a7 100644
--- a/include/configs/ls1012aqds.h
+++ b/include/configs/ls1012aqds.h
@@ -134,7 +134,6 @@
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* SATA */
diff --git a/include/configs/ls1012ardb.h b/include/configs/ls1012ardb.h
index 09c8f79..70d3a71 100644
--- a/include/configs/ls1012ardb.h
+++ b/include/configs/ls1012ardb.h
@@ -47,7 +47,6 @@
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* SATA */
diff --git a/include/configs/ls1021aiot.h b/include/configs/ls1021aiot.h
index b422863..4941c2e 100644
--- a/include/configs/ls1021aiot.h
+++ b/include/configs/ls1021aiot.h
@@ -156,7 +156,6 @@
  */
 #define CONFIG_CMD_MMC
 #define CONFIG_FSL_ESDHC
-#define CONFIG_GENERIC_MMC
 
 /* SATA */
 #define CONFIG_CMD_SCSI
diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h
index 3c255aa..5c9b41f 100644
--- a/include/configs/ls1021aqds.h
+++ b/include/configs/ls1021aqds.h
@@ -393,7 +393,6 @@ unsigned long get_board_ddr_clk(void);
  * MMC
  */
 #define CONFIG_FSL_ESDHC
-#define CONFIG_GENERIC_MMC
 
 /* SPI */
 #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI)
diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h
index 7100d96..25e3f92 100644
--- a/include/configs/ls1021atwr.h
+++ b/include/configs/ls1021atwr.h
@@ -294,7 +294,6 @@
  * MMC
  */
 #define CONFIG_FSL_ESDHC
-#define CONFIG_GENERIC_MMC
 
 /* SPI */
 #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI)
diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h
index aa2b6f1..ea7067c 100644
--- a/include/configs/ls1043a_common.h
+++ b/include/configs/ls1043a_common.h
@@ -130,7 +130,6 @@
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #endif
 
 /*  DSPI  */
diff --git a/include/configs/ls1046a_common.h b/include/configs/ls1046a_common.h
index b089f31..be65e4f 100644
--- a/include/configs/ls1046a_common.h
+++ b/include/configs/ls1046a_common.h
@@ -116,7 +116,6 @@
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #endif
 
 #define CONFIG_FSL_CAAM			/* Enable SEC/CAAM */
diff --git a/include/configs/ls2080a_simu.h b/include/configs/ls2080a_simu.h
index 31d28c7..5dd0a1d 100644
--- a/include/configs/ls2080a_simu.h
+++ b/include/configs/ls2080a_simu.h
@@ -136,7 +136,6 @@
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* Debug Server firmware */
diff --git a/include/configs/ls2080aqds.h b/include/configs/ls2080aqds.h
index a8a5100..9ad8486 100644
--- a/include/configs/ls2080aqds.h
+++ b/include/configs/ls2080aqds.h
@@ -353,7 +353,6 @@ unsigned long get_board_ddr_clk(void);
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #endif
 
 /* Initial environment variables */
diff --git a/include/configs/ls2080ardb.h b/include/configs/ls2080ardb.h
index b607329..db9ad15 100644
--- a/include/configs/ls2080ardb.h
+++ b/include/configs/ls2080ardb.h
@@ -298,7 +298,6 @@ unsigned long get_board_sys_clk(void);
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
-#define CONFIG_GENERIC_MMC
 #endif
 
 #define CONFIG_MISC_INIT_R
diff --git a/include/configs/m53evk.h b/include/configs/m53evk.h
index 29563e9..df7321f 100644
--- a/include/configs/m53evk.h
+++ b/include/configs/m53evk.h
@@ -80,7 +80,6 @@
  * MMC Driver
  */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
diff --git a/include/configs/ma5d4evk.h b/include/configs/ma5d4evk.h
index 112869e..aed0f4b 100644
--- a/include/configs/ma5d4evk.h
+++ b/include/configs/ma5d4evk.h
@@ -86,7 +86,6 @@
  * SD/MMC
  */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #endif
 
diff --git a/include/configs/mcx.h b/include/configs/mcx.h
index 0928f76..5160758 100644
--- a/include/configs/mcx.h
+++ b/include/configs/mcx.h
@@ -79,7 +79,6 @@
 #define CONFIG_BAUDRATE			115200
 #define CONFIG_SYS_BAUDRATE_TABLE	{4800, 9600, 19200, 38400, 57600,\
 					115200}
-#define CONFIG_GENERIC_MMC
 
 /* EHCI */
 #define CONFIG_OMAP3_GPIO_2
diff --git a/include/configs/medcom-wide.h b/include/configs/medcom-wide.h
index 1e94dac..342bcf3 100644
--- a/include/configs/medcom-wide.h
+++ b/include/configs/medcom-wide.h
@@ -19,9 +19,6 @@
 #define CONFIG_TEGRA_ENABLE_UARTD	/* UARTD: debug UART */
 #define CONFIG_SYS_NS16550_COM1		NV_PA_APB_UARTD_BASE
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* NAND support */
 #define CONFIG_CMD_NAND
 #define CONFIG_TEGRA_NAND
diff --git a/include/configs/minnowmax.h b/include/configs/minnowmax.h
index b01ab14..7b9f90c 100644
--- a/include/configs/minnowmax.h
+++ b/include/configs/minnowmax.h
@@ -25,8 +25,6 @@
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SATA}, \
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SATA_ALT}
 
-#define CONFIG_GENERIC_MMC
-
 #undef CONFIG_USB_MAX_CONTROLLER_COUNT
 #define CONFIG_USB_MAX_CONTROLLER_COUNT		1
 
diff --git a/include/configs/mvebu_armada-8k.h b/include/configs/mvebu_armada-8k.h
index 75f166a..ebc7fca 100644
--- a/include/configs/mvebu_armada-8k.h
+++ b/include/configs/mvebu_armada-8k.h
@@ -114,9 +114,6 @@
 #define CONFIG_SYS_SCSI_MAX_DEVICE	(CONFIG_SYS_SCSI_MAX_SCSI_ID * \
 					 CONFIG_SYS_SCSI_MAX_LUN)
 
-/* MMC/SD IP block */
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SUPPORT_VFAT
 
 /*
diff --git a/include/configs/mvebu_db-88f3720.h b/include/configs/mvebu_db-88f3720.h
index b9954b8..829f693 100644
--- a/include/configs/mvebu_db-88f3720.h
+++ b/include/configs/mvebu_db-88f3720.h
@@ -126,9 +126,6 @@
 #define CONFIG_SYS_SCSI_MAX_DEVICE	(CONFIG_SYS_SCSI_MAX_SCSI_ID * \
 					 CONFIG_SYS_SCSI_MAX_LUN)
 
-/* MMC/SD IP block */
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SUPPORT_VFAT
 
 #endif /* _CONFIG_MVEBU_DB_88F3720_H */
diff --git a/include/configs/mx25pdk.h b/include/configs/mx25pdk.h
index dc90c6e..528b193 100644
--- a/include/configs/mx25pdk.h
+++ b/include/configs/mx25pdk.h
@@ -84,7 +84,6 @@
 #define CONFIG_ENV_OVERWRITE
 
 /* ESDHC driver */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	IMX_MMC_SDHC1_BASE
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
diff --git a/include/configs/mx35pdk.h b/include/configs/mx35pdk.h
index 1aaef23..22d319a 100644
--- a/include/configs/mx35pdk.h
+++ b/include/configs/mx35pdk.h
@@ -213,7 +213,6 @@
 #define CONFIG_MXC_USB_PORTSC	(MXC_EHCI_UTMI_16BIT | MXC_EHCI_MODE_UTMI)
 
 /* mmc driver */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
diff --git a/include/configs/mx51evk.h b/include/configs/mx51evk.h
index db22365..1f99a61 100644
--- a/include/configs/mx51evk.h
+++ b/include/configs/mx51evk.h
@@ -65,8 +65,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	MMC_SDHC1_BASE_ADDR
 #define CONFIG_SYS_FSL_ESDHC_NUM	2
 
-#define CONFIG_GENERIC_MMC
-
 /*
  * Eth Configs
  */
diff --git a/include/configs/mx53ard.h b/include/configs/mx53ard.h
index 7a47a87..c17d976 100644
--- a/include/configs/mx53ard.h
+++ b/include/configs/mx53ard.h
@@ -52,8 +52,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	2
 
-#define CONFIG_GENERIC_MMC
-
 /* Eth Configs */
 #define CONFIG_HAS_ETH1
 #define CONFIG_MII
diff --git a/include/configs/mx53cx9020.h b/include/configs/mx53cx9020.h
index b13d79b..03e9a2a 100644
--- a/include/configs/mx53cx9020.h
+++ b/include/configs/mx53cx9020.h
@@ -36,8 +36,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	2
 
-#define CONFIG_GENERIC_MMC
-
 /* bootz: zImage/initrd.img support */
 
 /* Eth Configs */
diff --git a/include/configs/mx53evk.h b/include/configs/mx53evk.h
index e4c90f4..839c8cc 100644
--- a/include/configs/mx53evk.h
+++ b/include/configs/mx53evk.h
@@ -50,8 +50,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	2
 
-#define CONFIG_GENERIC_MMC
-
 /* Eth Configs */
 #define CONFIG_MII
 
diff --git a/include/configs/mx53loco.h b/include/configs/mx53loco.h
index 427ae75..c7ab295 100644
--- a/include/configs/mx53loco.h
+++ b/include/configs/mx53loco.h
@@ -36,8 +36,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	2
 
-#define CONFIG_GENERIC_MMC
-
 /* Eth Configs */
 #define CONFIG_MII
 
diff --git a/include/configs/mx53smd.h b/include/configs/mx53smd.h
index e163495..3ac89f2 100644
--- a/include/configs/mx53smd.h
+++ b/include/configs/mx53smd.h
@@ -42,8 +42,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
 
-#define CONFIG_GENERIC_MMC
-
 /* Eth Configs */
 #define CONFIG_HAS_ETH1
 #define CONFIG_MII
diff --git a/include/configs/mx6_common.h b/include/configs/mx6_common.h
index 5b38aa2..cdf46f0 100644
--- a/include/configs/mx6_common.h
+++ b/include/configs/mx6_common.h
@@ -81,7 +81,6 @@
 #define CONFIG_MXC_GPIO
 
 /* MMC */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_FSL_ESDHC
 #define CONFIG_FSL_USDHC
diff --git a/include/configs/mx7_common.h b/include/configs/mx7_common.h
index bdacedc..837d5f7 100644
--- a/include/configs/mx7_common.h
+++ b/include/configs/mx7_common.h
@@ -55,7 +55,6 @@
 #define CONFIG_MXC_UART
 
 /* MMC */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_FSL_ESDHC
 #define CONFIG_FSL_USDHC
diff --git a/include/configs/mxs.h b/include/configs/mxs.h
index 6a223b6..12b456b 100644
--- a/include/configs/mxs.h
+++ b/include/configs/mxs.h
@@ -146,7 +146,6 @@
 
 /* MMC */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 #endif
 
diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h
index 82266d4..7e2f992 100644
--- a/include/configs/nokia_rx51.h
+++ b/include/configs/nokia_rx51.h
@@ -93,7 +93,6 @@
 #define CONFIG_ENV_OVERWRITE
 #define CONFIG_BAUDRATE			115200
 #define CONFIG_SYS_BAUDRATE_TABLE { 4800, 9600, 19200, 38400, 57600, 115200 }
-#define CONFIG_GENERIC_MMC
 
 /* USB */
 #define CONFIG_USB_MUSB_UDC
diff --git a/include/configs/nyan-big.h b/include/configs/nyan-big.h
index be0889d..acf9d66 100644
--- a/include/configs/nyan-big.h
+++ b/include/configs/nyan-big.h
@@ -24,9 +24,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h
index 297fd0e..8846aa6 100644
--- a/include/configs/omap3_evm.h
+++ b/include/configs/omap3_evm.h
@@ -46,9 +46,6 @@
  * ----------------------------------------------------------------------------
  */
 
-/* MMC */
-#define CONFIG_GENERIC_MMC
-
 /* SPL */
 #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION	1
 #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME	"u-boot.img"
diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h
index 4c64011..8114de8 100644
--- a/include/configs/omapl138_lcdk.h
+++ b/include/configs/omapl138_lcdk.h
@@ -324,8 +324,6 @@
 #endif
 
 /* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 #ifdef CONFIG_MMC
 #undef CONFIG_ENV_IS_IN_MMC
 #endif
diff --git a/include/configs/openrd.h b/include/configs/openrd.h
index c21b849..51e4d90 100644
--- a/include/configs/openrd.h
+++ b/include/configs/openrd.h
@@ -107,7 +107,6 @@
 #endif /*CONFIG_MVSATA_IDE*/
 
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_MVEBU_MMC
 #define CONFIG_SYS_MMC_BASE KW_SDIO_BASE
 #endif /* CONFIG_CMD_MMC */
diff --git a/include/configs/p1_p2_rdb_pc.h b/include/configs/p1_p2_rdb_pc.h
index 5d70878..9b142bc 100644
--- a/include/configs/p1_p2_rdb_pc.h
+++ b/include/configs/p1_p2_rdb_pc.h
@@ -840,7 +840,6 @@
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 #undef CONFIG_WATCHDOG	/* watchdog disabled */
diff --git a/include/configs/p1_twr.h b/include/configs/p1_twr.h
index 52c544c..a98e1b2 100644
--- a/include/configs/p1_twr.h
+++ b/include/configs/p1_twr.h
@@ -406,7 +406,6 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);
 #ifdef CONFIG_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC85xx_ESDHC_ADDR
-#define CONFIG_GENERIC_MMC
 #endif
 
 #undef CONFIG_WATCHDOG	/* watchdog disabled */
diff --git a/include/configs/p2371-0000.h b/include/configs/p2371-0000.h
index a1a518e..897add3 100644
--- a/include/configs/p2371-0000.h
+++ b/include/configs/p2371-0000.h
@@ -21,9 +21,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/p2371-2180.h b/include/configs/p2371-2180.h
index b80d8db..3cf0c87 100644
--- a/include/configs/p2371-2180.h
+++ b/include/configs/p2371-2180.h
@@ -21,9 +21,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/p2571.h b/include/configs/p2571.h
index ef1ae3f..76fb7ce 100644
--- a/include/configs/p2571.h
+++ b/include/configs/p2571.h
@@ -22,9 +22,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/p2771-0000.h b/include/configs/p2771-0000.h
index e1e3d72..791a48a 100644
--- a/include/configs/p2771-0000.h
+++ b/include/configs/p2771-0000.h
@@ -17,9 +17,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/paz00.h b/include/configs/paz00.h
index 13d5aa9..fe7be69 100644
--- a/include/configs/paz00.h
+++ b/include/configs/paz00.h
@@ -22,9 +22,6 @@
 
 #define CONFIG_MACH_TYPE		MACH_TYPE_PAZ00
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET (-CONFIG_ENV_SIZE)
diff --git a/include/configs/pcm052.h b/include/configs/pcm052.h
index 96bf6ab..283abfa 100644
--- a/include/configs/pcm052.h
+++ b/include/configs/pcm052.h
@@ -69,8 +69,6 @@
 
 /*#define CONFIG_ESDHC_DETECT_USE_EXTERN_IRQ1*/
 
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_FEC_MXC
 #define CONFIG_MII
 #define IMX_FEC_BASE			ENET_BASE_ADDR
diff --git a/include/configs/pic32mzdask.h b/include/configs/pic32mzdask.h
index f80f3af..ffd1b28 100644
--- a/include/configs/pic32mzdask.h
+++ b/include/configs/pic32mzdask.h
@@ -88,11 +88,6 @@
 #define CONFIG_BOOTP_GATEWAY
 #define CONFIG_BOOTP_HOSTNAME
 
-/*-----------------------------------------------------------------------
- * SDHC Configuration
- */
-#define CONFIG_GENERIC_MMC
-
 /*--------------------------------------------------
  * USB Configuration
  */
diff --git a/include/configs/pico-imx6ul.h b/include/configs/pico-imx6ul.h
index 2f3f7be..63bd11c 100644
--- a/include/configs/pico-imx6ul.h
+++ b/include/configs/pico-imx6ul.h
@@ -34,8 +34,6 @@
 #define CONFIG_FSL_USDHC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	USDHC1_BASE_ADDR
-
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SUPPORT_EMMC_BOOT
 
 /* USB Configs */
diff --git a/include/configs/picosam9g45.h b/include/configs/picosam9g45.h
index 476bdd8..327db73 100644
--- a/include/configs/picosam9g45.h
+++ b/include/configs/picosam9g45.h
@@ -91,7 +91,6 @@
 /* MMC */
 
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #endif
 
diff --git a/include/configs/plutux.h b/include/configs/plutux.h
index 889ef40..911cad8 100644
--- a/include/configs/plutux.h
+++ b/include/configs/plutux.h
@@ -19,9 +19,6 @@
 #define CONFIG_TEGRA_ENABLE_UARTD	/* UARTD: debug UART */
 #define CONFIG_SYS_NS16550_COM1		NV_PA_APB_UARTD_BASE
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* NAND support */
 #define CONFIG_CMD_NAND
 #define CONFIG_TEGRA_NAND
diff --git a/include/configs/porter.h b/include/configs/porter.h
index ccaa796..ed3125d 100644
--- a/include/configs/porter.h
+++ b/include/configs/porter.h
@@ -88,7 +88,6 @@
 #define CONFIG_USB_MAX_CONTROLLER_COUNT	2
 
 /* SD */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SH_SDHI_FREQ	97500000
 
 /* Module stop status bits */
diff --git a/include/configs/pxa-common.h b/include/configs/pxa-common.h
index 800c12c..345e6d6 100644
--- a/include/configs/pxa-common.h
+++ b/include/configs/pxa-common.h
@@ -22,7 +22,6 @@
  * MMC Card Configuration
  */
 #ifdef	CONFIG_CMD_MMC
-#define	CONFIG_GENERIC_MMC
 #define	CONFIG_PXA_MMC_GENERIC
 #endif
 
diff --git a/include/configs/rk3036_common.h b/include/configs/rk3036_common.h
index 9e0b445..cf2f20b 100644
--- a/include/configs/rk3036_common.h
+++ b/include/configs/rk3036_common.h
@@ -37,7 +37,6 @@
 #define CONFIG_ROCKCHIP_CHIP_TAG	"RK30"
 
 /* MMC/SD IP block */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 
 #define CONFIG_FAT_WRITE
diff --git a/include/configs/rk3288_common.h b/include/configs/rk3288_common.h
index e0d1d84..ff8a6ec 100644
--- a/include/configs/rk3288_common.h
+++ b/include/configs/rk3288_common.h
@@ -40,7 +40,6 @@
 #define CONFIG_SPL_TEXT_BASE		0xff704004
 
 /* MMC/SD IP block */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 
 #define CONFIG_FAT_WRITE
diff --git a/include/configs/rk3399_common.h b/include/configs/rk3399_common.h
index bd84239..ab8bfd1 100644
--- a/include/configs/rk3399_common.h
+++ b/include/configs/rk3399_common.h
@@ -27,7 +27,6 @@
 #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* 64M */
 
 /* MMC/SD IP block */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_ROCKCHIP_SDHCI_MAX_FREQ	200000000
 
diff --git a/include/configs/rpi.h b/include/configs/rpi.h
index 4ba04e3..a545850 100644
--- a/include/configs/rpi.h
+++ b/include/configs/rpi.h
@@ -81,9 +81,6 @@
 #define CONFIG_VIDEO_BCM2835
 #define CONFIG_SYS_WHITE_ON_BLACK
 
-/* SD/MMC configuration */
-#define CONFIG_GENERIC_MMC
-
 #ifdef CONFIG_CMD_USB
 #define CONFIG_USB_DWC2
 #ifndef CONFIG_BCM2835
diff --git a/include/configs/s32v234evb.h b/include/configs/s32v234evb.h
index 7c524c1..33490c2 100644
--- a/include/configs/s32v234evb.h
+++ b/include/configs/s32v234evb.h
@@ -82,7 +82,6 @@
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
 
 #define CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 /* #define CONFIG_CMD_EXT2 EXT2 Support */
 
 #if 0
diff --git a/include/configs/s5p_goni.h b/include/configs/s5p_goni.h
index 55aba11..472c366 100644
--- a/include/configs/s5p_goni.h
+++ b/include/configs/s5p_goni.h
@@ -47,7 +47,6 @@
 #define CONFIG_BAUDRATE			115200
 
 /* MMC */
-#define CONFIG_GENERIC_MMC
 #define SDHCI_MAX_HOSTS		4
 
 /* PWM */
diff --git a/include/configs/sama5d2_xplained.h b/include/configs/sama5d2_xplained.h
index 0e73fc2..8e73586 100644
--- a/include/configs/sama5d2_xplained.h
+++ b/include/configs/sama5d2_xplained.h
@@ -41,11 +41,6 @@
 /* NAND flash */
 #undef CONFIG_CMD_NAND
 
-/* MMC */
-#ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
-#endif
-
 /* USB device */
 #define CONFIG_USB_ETHER
 #define CONFIG_USB_ETH_RNDIS
diff --git a/include/configs/sama5d3_xplained.h b/include/configs/sama5d3_xplained.h
index daf634f..2a8b8a1 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -81,7 +81,6 @@
 /* MMC */
 
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #define CONFIG_ATMEL_MCI_8BIT
 #endif
diff --git a/include/configs/sama5d3xek.h b/include/configs/sama5d3xek.h
index 3c2e8a5..05e96f9 100644
--- a/include/configs/sama5d3xek.h
+++ b/include/configs/sama5d3xek.h
@@ -112,7 +112,6 @@
 /* MMC */
 
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #define ATMEL_BASE_MMCI			ATMEL_BASE_MCI0
 #endif
diff --git a/include/configs/sama5d4_xplained.h b/include/configs/sama5d4_xplained.h
index 520552f..a017b26 100644
--- a/include/configs/sama5d4_xplained.h
+++ b/include/configs/sama5d4_xplained.h
@@ -64,7 +64,6 @@
 /* MMC */
 
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #define ATMEL_BASE_MMCI			ATMEL_BASE_MCI1
 #endif
diff --git a/include/configs/sama5d4ek.h b/include/configs/sama5d4ek.h
index 4cd016d..354e510 100644
--- a/include/configs/sama5d4ek.h
+++ b/include/configs/sama5d4ek.h
@@ -64,7 +64,6 @@
 /* MMC */
 
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #define ATMEL_BASE_MMCI			ATMEL_BASE_MCI1
 #endif
diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h
index 28228d1..25af94d 100644
--- a/include/configs/sandbox.h
+++ b/include/configs/sandbox.h
@@ -203,6 +203,4 @@
 #define CONFIG_SYS_SYSTEMACE_WIDTH	16
 #define CONFIG_SYS_SYSTEMACE_BASE	0
 
-#define CONFIG_GENERIC_MMC
-
 #endif
diff --git a/include/configs/seaboard.h b/include/configs/seaboard.h
index 388010c..671afa7 100644
--- a/include/configs/seaboard.h
+++ b/include/configs/seaboard.h
@@ -31,9 +31,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET (-CONFIG_ENV_SIZE)
diff --git a/include/configs/sh7752evb.h b/include/configs/sh7752evb.h
index 7f8edd4..7711604 100644
--- a/include/configs/sh7752evb.h
+++ b/include/configs/sh7752evb.h
@@ -85,7 +85,6 @@
 #define CONFIG_SH_SPI_BASE		0xfe002000
 
 /* MMCIF */
-#define CONFIG_GENERIC_MMC		1
 #define CONFIG_SH_MMCIF			1
 #define CONFIG_SH_MMCIF_ADDR		0xffcb0000
 #define CONFIG_SH_MMCIF_CLK		48000000
diff --git a/include/configs/sh7753evb.h b/include/configs/sh7753evb.h
index d57782c..49729f4 100644
--- a/include/configs/sh7753evb.h
+++ b/include/configs/sh7753evb.h
@@ -85,7 +85,6 @@
 #define CONFIG_SH_SPI_BASE		0xfe002000
 
 /* MMCIF */
-#define CONFIG_GENERIC_MMC		1
 #define CONFIG_SH_MMCIF			1
 #define CONFIG_SH_MMCIF_ADDR		0xffcb0000
 #define CONFIG_SH_MMCIF_CLK		48000000
diff --git a/include/configs/sh7757lcr.h b/include/configs/sh7757lcr.h
index 5582b09..0793f1e 100644
--- a/include/configs/sh7757lcr.h
+++ b/include/configs/sh7757lcr.h
@@ -86,7 +86,6 @@
 #define CONFIG_SH_SPI_BASE		0xfe002000
 
 /* MMCIF */
-#define CONFIG_GENERIC_MMC		1
 #define CONFIG_SH_MMCIF			1
 #define CONFIG_SH_MMCIF_ADDR		0xffcb0000
 #define CONFIG_SH_MMCIF_CLK		48000000
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 79dfe50..a111057 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -83,7 +83,6 @@
  * SDIO/MMC Card Configuration
  */
 #ifdef CONFIG_CMD_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_MVEBU_MMC
 #define CONFIG_SYS_MMC_BASE KW_SDIO_BASE
 #endif /* CONFIG_CMD_MMC */
diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h
index 5ce1430..327a806 100644
--- a/include/configs/siemens-am33x-common.h
+++ b/include/configs/siemens-am33x-common.h
@@ -76,8 +76,6 @@
 
 #define CONFIG_SYS_LOAD_ADDR		0x81000000 /* Default load address */
 
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SPI
 #define CONFIG_OMAP3_SPI
 #define CONFIG_MTD_DEVICE
diff --git a/include/configs/silk.h b/include/configs/silk.h
index a343cd1..b43de8d 100644
--- a/include/configs/silk.h
+++ b/include/configs/silk.h
@@ -88,7 +88,6 @@
 #define CONFIG_USB_MAX_CONTROLLER_COUNT	2
 
 /* MMCIF */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_SH_MMCIF
 #define CONFIG_SH_MMCIF_ADDR	0xee200000
 #define CONFIG_SH_MMCIF_CLK	48000000
diff --git a/include/configs/snapper9g45.h b/include/configs/snapper9g45.h
index da395d8..b0ed9ea 100644
--- a/include/configs/snapper9g45.h
+++ b/include/configs/snapper9g45.h
@@ -67,7 +67,6 @@
 #define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS	2
 
 /* MMC */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 
 /* LCD */
diff --git a/include/configs/sniper.h b/include/configs/sniper.h
index f41d6f6..4f8a9f8 100644
--- a/include/configs/sniper.h
+++ b/include/configs/sniper.h
@@ -92,12 +92,6 @@
 #define CONFIG_SYS_NO_FLASH
 
 /*
- * MMC
- */
-
-#define CONFIG_GENERIC_MMC
-
-/*
  * Power
  */
 
diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
index 27bbd0e..8bbe3c5 100644
--- a/include/configs/socfpga_common.h
+++ b/include/configs/socfpga_common.h
@@ -141,7 +141,6 @@
  */
 #ifdef CONFIG_CMD_MMC
 #define CONFIG_BOUNCE_BUFFER
-#define CONFIG_GENERIC_MMC
 /* FIXME */
 /* using smaller max blk cnt to avoid flooding the limited stack we have */
 #define CONFIG_SYS_MMC_MAX_BLK_COUNT	256	/* FIXME -- SPL only? */
diff --git a/include/configs/stout.h b/include/configs/stout.h
index d2bc050..28bf553 100644
--- a/include/configs/stout.h
+++ b/include/configs/stout.h
@@ -89,9 +89,6 @@
 #define CONFIG_USB_EHCI_RMOBILE
 #define CONFIG_USB_MAX_CONTROLLER_COUNT	3
 
-/* MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Module stop status bits */
 /* INTC-RT */
 #define CONFIG_SMSTP0_ENA	0x00400000
diff --git a/include/configs/strider.h b/include/configs/strider.h
index e3f0945..f65e602 100644
--- a/include/configs/strider.h
+++ b/include/configs/strider.h
@@ -26,8 +26,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	CONFIG_SYS_MPC83xx_ESDHC_ADDR
 
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_SYS_ALT_MEMTEST
 
 #define CONFIG_CMD_FPGAD
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 3ac96da..5d76e9f 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -140,7 +140,6 @@
 
 /* mmc config */
 #ifdef CONFIG_MMC
-#define CONFIG_GENERIC_MMC
 #define CONFIG_MMC_SUNXI_SLOT		0
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0	/* first detected MMC controller */
diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h
index e601530..6bc2336 100644
--- a/include/configs/tam3517-common.h
+++ b/include/configs/tam3517-common.h
@@ -73,8 +73,6 @@
 #define CONFIG_BAUDRATE			115200
 #define CONFIG_SYS_BAUDRATE_TABLE	{4800, 9600, 19200, 38400, 57600,\
 					115200}
-#define CONFIG_GENERIC_MMC
-
 /* EHCI */
 #define CONFIG_OMAP3_GPIO_5
 #define CONFIG_USB_EHCI
diff --git a/include/configs/tao3530.h b/include/configs/tao3530.h
index d93f9f3..dafb05f 100644
--- a/include/configs/tao3530.h
+++ b/include/configs/tao3530.h
@@ -68,7 +68,6 @@
 /* allow to overwrite serial and ethaddr */
 #define CONFIG_ENV_OVERWRITE
 #define CONFIG_BAUDRATE			115200
-#define CONFIG_GENERIC_MMC
 
 /* GPIO banks */
 #define CONFIG_OMAP3_GPIO_2		/* GPIO32 ..63  is in GPIO bank 2 */
diff --git a/include/configs/tcm-bf537.h b/include/configs/tcm-bf537.h
index 97aa046..4d1cdb5 100644
--- a/include/configs/tcm-bf537.h
+++ b/include/configs/tcm-bf537.h
@@ -118,7 +118,6 @@
 /*
  * SPI_MMC Settings
  */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_MMC_SPI
 
 /*
diff --git a/include/configs/tec-ng.h b/include/configs/tec-ng.h
index dbc9fc0..06d8720 100644
--- a/include/configs/tec-ng.h
+++ b/include/configs/tec-ng.h
@@ -20,9 +20,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET		(-CONFIG_ENV_SIZE)
diff --git a/include/configs/tec.h b/include/configs/tec.h
index 278668c..ebfca8f 100644
--- a/include/configs/tec.h
+++ b/include/configs/tec.h
@@ -19,9 +19,6 @@
 #define CONFIG_TEGRA_ENABLE_UARTD	/* UARTD: debug UART */
 #define CONFIG_SYS_NS16550_COM1		NV_PA_APB_UARTD_BASE
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* NAND support */
 #define CONFIG_CMD_NAND
 #define CONFIG_TEGRA_NAND
diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h
index b0c1282..ab4136a 100644
--- a/include/configs/tegra-common-post.h
+++ b/include/configs/tegra-common-post.h
@@ -114,13 +114,6 @@
 #ifdef CONFIG_CMD_I2C
 #endif
 
-/* remove MMC support */
-#ifdef CONFIG_GENERIC_MMC
-#undef CONFIG_GENERIC_MMC
-#endif
-#ifdef CONFIG_CMD_MMC
-#endif
-
 /* remove partitions/filesystems */
 #ifdef CONFIG_FS_EXT4
 #undef CONFIG_FS_EXT4
diff --git a/include/configs/ti814x_evm.h b/include/configs/ti814x_evm.h
index 0a905d2..aa4561c 100644
--- a/include/configs/ti814x_evm.h
+++ b/include/configs/ti814x_evm.h
@@ -113,7 +113,6 @@
 #define CONFIG_SYS_LOAD_ADDR		0x81000000	/* Default */
 
 #define CONFIG_OMAP_GPIO
-#define CONFIG_GENERIC_MMC
 
 /**
  * Physical Memory Map
diff --git a/include/configs/ti816x_evm.h b/include/configs/ti816x_evm.h
index d3e9e41..d7b1719 100644
--- a/include/configs/ti816x_evm.h
+++ b/include/configs/ti816x_evm.h
@@ -52,7 +52,6 @@
 
 #define CONFIG_CMD_ASKEN
 #define CONFIG_OMAP_GPIO
-#define CONFIG_GENERIC_MMC
 
 #define CONFIG_FS_FAT
 
diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h
index c6a642f..ca5794c 100644
--- a/include/configs/ti_armv7_common.h
+++ b/include/configs/ti_armv7_common.h
@@ -166,9 +166,6 @@
 #define CONFIG_DM_I2C_COMPAT
 #endif
 
-/* MMC/SD IP block */
-#define CONFIG_GENERIC_MMC
-
 /* McSPI IP block */
 #define CONFIG_SPI
 
diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
index 5782851..d120c69 100644
--- a/include/configs/ti_armv7_keystone2.h
+++ b/include/configs/ti_armv7_keystone2.h
@@ -301,13 +301,6 @@
 /* Now for the remaining common defines */
 #include <configs/ti_armv7_common.h>
 
-/* We wont be loading up OS from SPL for now.. */
-
-/* We do not have MMC support.. yet.. */
-#undef CONFIG_GENERIC_MMC
-
-/* And no support for GPIO, yet.. */
-
 /* we may include files below only after all above definitions */
 #include <asm/arch/hardware.h>
 #include <asm/arch/clock.h>
diff --git a/include/configs/tricorder.h b/include/configs/tricorder.h
index fba2779..654f9b4 100644
--- a/include/configs/tricorder.h
+++ b/include/configs/tricorder.h
@@ -75,9 +75,6 @@
 #define CONFIG_SYS_BAUDRATE_TABLE	{4800, 9600, 19200, 38400, 57600,\
 					115200}
 
-/* MMC */
-#define CONFIG_GENERIC_MMC
-
 /* I2C */
 #define CONFIG_SYS_I2C
 #define CONFIG_SYS_OMAP24_I2C_SPEED	100000
diff --git a/include/configs/trimslice.h b/include/configs/trimslice.h
index 874351d..2c37107 100644
--- a/include/configs/trimslice.h
+++ b/include/configs/trimslice.h
@@ -27,9 +27,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in SPI */
 #define CONFIG_ENV_IS_IN_SPI_FLASH
 #define CONFIG_ENV_SPI_MAX_HZ		48000000
diff --git a/include/configs/ts4800.h b/include/configs/ts4800.h
index dcb3a2e..f293777 100644
--- a/include/configs/ts4800.h
+++ b/include/configs/ts4800.h
@@ -59,8 +59,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	MMC_SDHC1_BASE_ADDR
 
-#define CONFIG_GENERIC_MMC
-
 /*
  * Eth Configs
  */
diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h
index 62c3daf..22962392e 100644
--- a/include/configs/uniphier.h
+++ b/include/configs/uniphier.h
@@ -127,7 +127,6 @@
 
 /* SD/MMC */
 #define CONFIG_SUPPORT_EMMC_BOOT
-#define CONFIG_GENERIC_MMC
 
 /* memtest works on */
 #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
diff --git a/include/configs/usbarmory.h b/include/configs/usbarmory.h
index b32cd6a..01a2bd4 100644
--- a/include/configs/usbarmory.h
+++ b/include/configs/usbarmory.h
@@ -42,7 +42,6 @@
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
-#define CONFIG_GENERIC_MMC
 
 /* USB */
 #define CONFIG_USB_EHCI
diff --git a/include/configs/venice2.h b/include/configs/venice2.h
index ec12133..9e83863 100644
--- a/include/configs/venice2.h
+++ b/include/configs/venice2.h
@@ -22,9 +22,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_SYS_MMC_ENV_DEV		0
diff --git a/include/configs/ventana.h b/include/configs/ventana.h
index 1150adf..87b5136 100644
--- a/include/configs/ventana.h
+++ b/include/configs/ventana.h
@@ -20,9 +20,6 @@
 
 #define CONFIG_MACH_TYPE		MACH_TYPE_VENTANA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /* Environment in eMMC, at the end of 2nd "boot sector" */
 #define CONFIG_ENV_IS_IN_MMC
 #define CONFIG_ENV_OFFSET (-CONFIG_ENV_SIZE)
diff --git a/include/configs/vexpress_common.h b/include/configs/vexpress_common.h
index 0bc4ea5..3756e22 100644
--- a/include/configs/vexpress_common.h
+++ b/include/configs/vexpress_common.h
@@ -150,7 +150,6 @@
 #define CONFIG_SYS_SERIAL0		V2M_UART0
 #define CONFIG_SYS_SERIAL1		V2M_UART1
 
-#define CONFIG_GENERIC_MMC
 #define CONFIG_ARM_PL180_MMCI
 #define CONFIG_ARM_PL180_MMCI_BASE	V2M_MMCI
 #define CONFIG_SYS_MMC_MAX_BLK_COUNT	127
diff --git a/include/configs/vf610twr.h b/include/configs/vf610twr.h
index 3491ed5..33b3438 100644
--- a/include/configs/vf610twr.h
+++ b/include/configs/vf610twr.h
@@ -66,8 +66,6 @@
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
 
-#define CONFIG_GENERIC_MMC
-
 #define CONFIG_FEC_MXC
 #define CONFIG_MII
 #define IMX_FEC_BASE			ENET_BASE_ADDR
diff --git a/include/configs/vinco.h b/include/configs/vinco.h
index 7b10e44..b79ad5b 100644
--- a/include/configs/vinco.h
+++ b/include/configs/vinco.h
@@ -57,7 +57,6 @@
 
 #ifdef CONFIG_CMD_MMC
 #define CONFIG_SUPPORT_EMMC_BOOT
-#define CONFIG_GENERIC_MMC
 #define CONFIG_GENERIC_ATMEL_MCI
 #define ATMEL_BASE_MMCI			ATMEL_BASE_MCI1
 #define CONFIG_SYS_MMC_CLK_OD		500000
diff --git a/include/configs/whistler.h b/include/configs/whistler.h
index 19b57fd..429e5b6 100644
--- a/include/configs/whistler.h
+++ b/include/configs/whistler.h
@@ -24,9 +24,6 @@
 /* I2C */
 #define CONFIG_SYS_I2C_TEGRA
 
-/* SD/MMC */
-#define CONFIG_GENERIC_MMC
-
 /*
  * Environment in eMMC, at the end of 2nd "boot sector". Note: This assumes
  * the user plugged the standard 8GB MoviNAND card into J29/HSMMC/POP. If
diff --git a/include/configs/woodburn_common.h b/include/configs/woodburn_common.h
index 35ccd38..7fec24c 100644
--- a/include/configs/woodburn_common.h
+++ b/include/configs/woodburn_common.h
@@ -55,7 +55,6 @@
 #define CONFIG_RTC_MC13XXX
 
 /* mmc driver */
-#define CONFIG_GENERIC_MMC
 #define CONFIG_FSL_ESDHC
 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
 #define CONFIG_SYS_FSL_ESDHC_NUM	1
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index b4be217..7251ae1 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -76,7 +76,6 @@
 #define CONFIG_AUTO_COMPLETE
 
 #if defined(CONFIG_ZYNQ_SDHCI)
-# define CONFIG_GENERIC_MMC
 # define CONFIG_SUPPORT_EMMC_BOOT
 # ifndef CONFIG_ZYNQ_SDHCI_MAX_FREQ
 #  define CONFIG_ZYNQ_SDHCI_MAX_FREQ	200000000
diff --git a/include/configs/zipitz2.h b/include/configs/zipitz2.h
index 17c5346..3df9a07 100644
--- a/include/configs/zipitz2.h
+++ b/include/configs/zipitz2.h
@@ -61,7 +61,6 @@
  * MMC Card Configuration
  */
 #ifdef	CONFIG_CMD_MMC
-#define	CONFIG_GENERIC_MMC
 #define	CONFIG_PXA_MMC_GENERIC
 #define	CONFIG_SYS_MMC_BASE		0xF0000000
 #endif
diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
index 3b0aca2..e2c70a0 100644
--- a/include/configs/zynq-common.h
+++ b/include/configs/zynq-common.h
@@ -84,7 +84,6 @@
 
 /* MMC */
 #if defined(CONFIG_ZYNQ_SDHCI)
-# define CONFIG_GENERIC_MMC
 # define CONFIG_ZYNQ_SDHCI_MAX_FREQ	52000000
 #endif
 
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index 37ce51a..d21589b 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -1295,7 +1295,6 @@ CONFIG_GATEWAYIP
 CONFIG_GCOV_KERNEL
 CONFIG_GCOV_PROFILE_ALL
 CONFIG_GENERIC_ATMEL_MCI
-CONFIG_GENERIC_MMC
 CONFIG_GICV2
 CONFIG_GICV3
 CONFIG_GLOBAL_DATA_NOT_REG10
