diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig index 5e2921ce41a..c8f9709d2d4 100644 --- a/drivers/mmc/Kconfig +++ b/drivers/mmc/Kconfig @@ -484,6 +484,19 @@ config SPL_MMC_SDHCI_ADMA This enables support for the ADMA (Advanced DMA) defined in the SD Host Controller Standard Specification Version 3.00 in SPL. +config FIXED_SDHCI_ALIGNED_BUFFER + hex "SDRAM address for fixed buffer" + depends on SPL && MVEBU_SPL_BOOT_DEVICE_MMC + default 0x00180000 + help + On the Marvell Armada 38x when the SPL runs it located in internal + SRAM which is the L2 cache locked to memory. When the MMC buffers + are located on the stack (or bss), the SDIO controller (SDHCI) can't + write into this L2 cache memory. + + This specifies the address of a fixed buffer located in SDRAM that + will be used for all SDHCI transfers in the SPL. + config MMC_SDHCI_ASPEED bool "Aspeed SDHCI controller" depends on ARCH_ASPEED diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h index 4aaeba3602d..8497fe28eff 100644 --- a/include/configs/clearfog.h +++ b/include/configs/clearfog.h @@ -40,15 +40,6 @@ "fdt_high=0x10000000\0" \ "initrd_high=0x10000000\0" -/* SPL */ - -#if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA) -/* SPL related MMC defines */ -#ifdef CONFIG_SPL_BUILD -#define CONFIG_FIXED_SDHCI_ALIGNED_BUFFER 0x00180000 /* in SDRAM */ -#endif -#endif - /* * mv-common.h should be defined after CMD configs since it used them * to enable certain macros diff --git a/include/configs/controlcenterdc.h b/include/configs/controlcenterdc.h index 571fdb3b07c..8b0d2603104 100644 --- a/include/configs/controlcenterdc.h +++ b/include/configs/controlcenterdc.h @@ -34,13 +34,6 @@ #define SPL_BOOT_SDIO_MMC_CARD 2 #define CONFIG_SPL_BOOT_DEVICE SPL_BOOT_SPI_NOR_FLASH -#if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD -/* SPL related MMC defines */ -#ifdef CONFIG_SPL_BUILD -#define CONFIG_FIXED_SDHCI_ALIGNED_BUFFER 0x00180000 /* in SDRAM */ -#endif -#endif - /* * Environment Configuration */ diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h index acc09da89d3..e01dd492530 100644 --- a/include/configs/db-88f6820-gp.h +++ b/include/configs/db-88f6820-gp.h @@ -39,13 +39,6 @@ #define SPL_BOOT_SDIO_MMC_CARD 2 #define CONFIG_SPL_BOOT_DEVICE SPL_BOOT_SPI_NOR_FLASH -#if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD -/* SPL related MMC defines */ -#ifdef CONFIG_SPL_BUILD -#define CONFIG_FIXED_SDHCI_ALIGNED_BUFFER 0x00180000 /* in SDRAM */ -#endif -#endif - /* * mv-common.h should be defined after CMD configs since it used them * to enable certain macros diff --git a/include/configs/helios4.h b/include/configs/helios4.h index c8aa564097b..23eb0d4375d 100644 --- a/include/configs/helios4.h +++ b/include/configs/helios4.h @@ -40,15 +40,6 @@ "fdt_high=0x10000000\0" \ "initrd_high=0x10000000\0" -/* SPL */ - -#if defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC) || defined(CONFIG_MVEBU_SPL_BOOT_DEVICE_SATA) -/* SPL related MMC defines */ -#ifdef CONFIG_SPL_BUILD -#define CONFIG_FIXED_SDHCI_ALIGNED_BUFFER 0x00180000 /* in SDRAM */ -#endif -#endif - /* * mv-common.h should be defined after CMD configs since it used them * to enable certain macros diff --git a/include/configs/turris_omnia.h b/include/configs/turris_omnia.h index c4671f11160..9013d9a6932 100644 --- a/include/configs/turris_omnia.h +++ b/include/configs/turris_omnia.h @@ -26,13 +26,6 @@ "fdt_high=0x10000000\0" \ "initrd_high=0x10000000\0" -#ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC -/* SPL related MMC defines */ -# ifdef CONFIG_SPL_BUILD -# define CONFIG_FIXED_SDHCI_ALIGNED_BUFFER 0x00180000 /* in SDRAM */ -# endif -#endif - /* * mv-common.h should be defined after CMD configs since it used them * to enable certain macros