]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
Convert CONFIG_FIXED_SDHCI_ALIGNED_BUFFER to Kconfig
authorChris Packham <judge.packham@gmail.com>
Sat, 28 May 2022 23:13:17 +0000 (11:13 +1200)
committerTom Rini <trini@konsulko.com>
Mon, 6 Jun 2022 16:09:29 +0000 (12:09 -0400)
CONFIG_FIXED_SDHCI_ALIGNED_BUFFER is needed on some Marvell SoCs when
booting from MMC. All existing usages of this have the same value so
make this the default and have the Kconfig option depend on SPL &&
MVEBU_SPL_BOOT_DEVICE_MMC.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Marek BehĂșn <marek.behun@nic.cz>
Reviewed-by: Stefan Roese <sr@denx.de>
drivers/mmc/Kconfig
include/configs/clearfog.h
include/configs/controlcenterdc.h
include/configs/db-88f6820-gp.h
include/configs/helios4.h
include/configs/turris_omnia.h

index 5e2921ce41a7169ed7193fe5484f849aae3fe384..c8f9709d2d49bedf192c08c24b2d31023f83db58 100644 (file)
@@ -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
index 4aaeba3602d8f3c28f0fff2cdc25293bef4b40ef..8497fe28effe3ac2c56f53a3be1a1ef63fb50442 100644 (file)
        "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
index 571fdb3b07c7d72bc90fb56daebf35372a005dda..8b0d2603104fc1fc644b7e0bdcb1238d611bbf75 100644 (file)
 #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
  */
index acc09da89d3893fcd8f8bbe3d31a214b172e4077..e01dd492530275a97ba957cfbebfe85391166949 100644 (file)
 #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
index c8aa564097b6a1e5e9d9599bfbf801477a8d9daa..23eb0d4375df0003526fcf05ac64671c24771803 100644 (file)
        "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
index c4671f1116027f7b5e732255b5181450b2a08310..9013d9a6932589463be989e081bf129ac49b781d 100644 (file)
        "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