On 15/12/2025 7:01 pm, Tanmay Kathpalia wrote:
Enable MMC support with Cadence SDHCI controller for both SPL and
U-Boot proper on Agilex5 platform to support SD card operations in
legacy and high speed timing modes.

MMC controller configuration:
- Enable MMC subsystem (CONFIG_MMC=y, CONFIG_DM_MMC=y)
- Add Cadence SDHCI controller support (CONFIG_MMC_SDHCI_CADENCE=y)
- Enable SDHCI with ADMA support for better performance
- Add MMC command support for user interaction

SPL configuration:
- Enable MMC support in SPL (CONFIG_SPL_DM_MMC=y)
- Add SDHCI ADMA support in SPL (CONFIG_SPL_MMC_SDHCI_ADMA=y)
- Enable GPIO support in SPL (CONFIG_SPL_DWAPB_GPIO=y)

Voltage regulator support:
- Add device model regulator framework (CONFIG_DM_REGULATOR=y)
- Enable fixed voltage regulator support for card power
- Add GPIO-controlled regulator for I/O voltage switching
- Include regulator support in SPL for early initialization

These changes enable SD card functionality with legacy and high speed
timing modes, providing proper voltage regulation and GPIO control
for the Agilex5 SoCDK platform.

Signed-off-by: Tanmay Kathpalia <[email protected]>
---
  configs/socfpga_agilex5_defconfig | 19 +++++++++++++++++++
  1 file changed, 19 insertions(+)

diff --git a/configs/socfpga_agilex5_defconfig 
b/configs/socfpga_agilex5_defconfig
index 799ea910f03..3eabc372269 100644
--- a/configs/socfpga_agilex5_defconfig
+++ b/configs/socfpga_agilex5_defconfig
@@ -2,6 +2,7 @@ CONFIG_ARM=y
  CONFIG_SPL_SYS_DCACHE_OFF=y
  CONFIG_ARCH_SOCFPGA=y
  CONFIG_TEXT_BASE=0x80200000
+CONFIG_SPL_GPIO=y
  CONFIG_NR_DRAM_BANKS=3
  CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
  CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80300000
@@ -66,6 +67,7 @@ CONFIG_CMD_WDT=y
  CONFIG_CMD_CACHE=y
  CONFIG_CMD_TIMER=y
  CONFIG_CMD_UBI=y
+CONFIG_CMD_MMC=y
  # CONFIG_ISO_PARTITION is not set
  # CONFIG_EFI_PARTITION is not set
  CONFIG_OF_LIST=""
@@ -106,5 +108,22 @@ CONFIG_USB_DWC3=y
  CONFIG_USB_HUB_DEBOUNCE_TIMEOUT=3000
  CONFIG_DESIGNWARE_WATCHDOG=y
  CONFIG_WDT=y
+CONFIG_DM_REGULATOR=y
+CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_DM_REGULATOR_GPIO=y
+CONFIG_SPL_DWAPB_GPIO=y
+CONFIG_SPL_DM_REGULATOR=y
+CONFIG_SPL_DM_REGULATOR_FIXED=y
+CONFIG_SPL_DM_REGULATOR_GPIO=y
+CONFIG_SPL_MMC=y
+CONFIG_SPL_DM_MMC=y
+CONFIG_SPL_MMC_IO_VOLTAGE=y
+CONFIG_SPL_MMC_SDHCI_ADMA=y
+CONFIG_MMC=y
+CONFIG_MMC_SDHCI=y
+CONFIG_DM_MMC=y
+CONFIG_MMC_IO_VOLTAGE=y
+CONFIG_MMC_SDHCI_ADMA=y
+CONFIG_MMC_SDHCI_CADENCE=y
  # CONFIG_SPL_USE_TINY_PRINTF is not set
  CONFIG_PANIC_HANG=y


Reviewed-by: Tien Fong Chee <[email protected]>

Best regards,
Tien Fong

Reply via email to