From 9ef64602dfbc2e5283bb95891796c1f457d7fee8 Mon Sep 17 00:00:00 2001
From: Waldemar Brodkorb <wbx@openadk.org>
Date: Sun, 13 Apr 2025 21:18:45 +0200
Subject: synopsys-hsdk: fix mmc boot

---
 target/arc/kernel/synopsys-hsdk     | 6 ++++++
 target/linux/config/Config.in.arc   | 7 +++++++
 target/linux/config/Config.in.block | 3 +++
 target/linux/config/Config.in.dma   | 8 ++++++++
 4 files changed, 24 insertions(+)

(limited to 'target')

diff --git a/target/arc/kernel/synopsys-hsdk b/target/arc/kernel/synopsys-hsdk
index 55ae3ccb6..a4e93f109 100644
--- a/target/arc/kernel/synopsys-hsdk
+++ b/target/arc/kernel/synopsys-hsdk
@@ -9,3 +9,9 @@ CONFIG_ARC_USE_UNALIGNED_MEM_ACCESS=y
 CONFIG_ARC_HAS_LL64=y
 CONFIG_ARC_HAS_DIV_REM=y
 CONFIG_ARC_HAS_ACCL_REGS=y
+CONFIG_ARC_CACHE=y
+CONFIG_ARC_CACHE_LINE_SHIFT=6
+CONFIG_ARC_HAS_ICACHE=y
+CONFIG_ARC_HAS_DCACHE=y
+CONFIG_ARC_CACHE_PAGES=y
+
diff --git a/target/linux/config/Config.in.arc b/target/linux/config/Config.in.arc
index 461d1b7cd..f2da2a7ea 100644
--- a/target/linux/config/Config.in.arc
+++ b/target/linux/config/Config.in.arc
@@ -24,4 +24,11 @@ config ADK_LINUX_KERNEL_ARC_BUILTIN_DTB_NAME
 	default "haps_hs" if ADK_TARGET_CPU_ARC_ARCHS && ADK_TARGET_SYSTEM_QEMU_ARC
 	default "nsim_700" if ADK_TARGET_CPU_ARC_ARC700
 	
+config ADK_LINUX_KERNEL_BUILTIN_DTB_NAME
+	string
+	depends on ADK_TARGET_ARCH_ARC
+	default "hsdk" if ADK_TARGET_CPU_ARC_ARCHS && ADK_TARGET_SYSTEM_SYNOPSYS_HSDK
+	default "haps_hs" if ADK_TARGET_CPU_ARC_ARCHS && ADK_TARGET_SYSTEM_SYNOPSYS_NSIM
+	default "haps_hs" if ADK_TARGET_CPU_ARC_ARCHS && ADK_TARGET_SYSTEM_QEMU_ARC
+	default "nsim_700" if ADK_TARGET_CPU_ARC_ARC700
 
diff --git a/target/linux/config/Config.in.block b/target/linux/config/Config.in.block
index 2da563549..8ccb10e72 100644
--- a/target/linux/config/Config.in.block
+++ b/target/linux/config/Config.in.block
@@ -497,10 +497,13 @@ config ADK_LINUX_KERNEL_MMC_DW
 	select ADK_LINUX_KERNEL_MMC
 	select ADK_LINUX_KERNEL_MMC_SPI
 	select ADK_LINUX_KERNEL_MMC_BLOCK
+	select ADK_LINUX_KERNEL_MMC_DW_PLTFM
 	select ADK_LINUX_KERNEL_BLK_DEV
 	select ADK_LINUX_KERNEL_BLK_DEV_SD
 	select ADK_LINUX_KERNEL_MMC_SDHCI
 	select ADK_LINUX_KERNEL_MMC_SDHCI_PLTFM
+	select ADK_LINUX_KERNEL_PWRSEQ_EMMC
+	select ADK_LINUX_KERNEL_PWRSEQ_SIMPLE
 	depends on ADK_TARGET_SYSTEM_SYNOPSYS_HSDK
 	default y if ADK_TARGET_SYSTEM_SYNOPSYS_HSDK
 	default n
diff --git a/target/linux/config/Config.in.dma b/target/linux/config/Config.in.dma
index c570b546e..11094514b 100644
--- a/target/linux/config/Config.in.dma
+++ b/target/linux/config/Config.in.dma
@@ -58,6 +58,14 @@ config ADK_LINUX_KERNEL_DMA_BCM2708
 	default y if ADK_TARGET_BOARD_BCM28XX
 	default n
 
+config ADK_LINUX_KERNEL_DW_AXI_DMAC
+        bool
+        select ADK_LINUX_KERNEL_DMADEVICES
+	select ADK_LINUX_KERNEL_DMA_SHARED_BUFFER
+	depends on ADK_TARGET_SYSTEM_SYNOPSYS_HSDK
+	default y if ADK_TARGET_SYSTEM_SYNOPSYS_HSDK
+	default n
+
 config ADK_LINUX_KERNEL_IMX_SDMA
 	bool
 	select ADK_LINUX_KERNEL_MXS_DMA
-- 
cgit v1.2.3