From: Oleksandr Rybalko <[email protected]>

allow building uboot in 32bit-mode for mt7622 to
be compatible with bpi-r64 images

Signed-off-by: Oleksandr Rybalko <[email protected]>
Signed-off-by: Frank Wunderlich <[email protected]>
---
 arch/arm/mach-mediatek/Kconfig       | 7 ++++++-
 arch/arm/mach-mediatek/mt7622/init.c | 6 +++++-
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-mediatek/Kconfig b/arch/arm/mach-mediatek/Kconfig
index 0042e57017..46e10025e4 100644
--- a/arch/arm/mach-mediatek/Kconfig
+++ b/arch/arm/mach-mediatek/Kconfig
@@ -10,12 +10,17 @@ config MT8512
        bool "MediaTek MT8512 SoC"
        default n
 
+config ARCH_MEDIATEK_32
+       bool "Build 32 bits version"
+       default n
+
 choice
        prompt "MediaTek board select"
 
 config TARGET_MT7622
        bool "MediaTek MT7622 SoC"
-       select ARM64
+       select CPU_V7A if ARCH_MEDIATEK_32
+       select ARM64 if !ARCH_MEDIATEK_32
        help
          The MediaTek MT7622 is a ARM64-based SoC with a dual-core Cortex-A53.
          including UART, SPI, USB3.0, SD and MMC cards, NAND, SNFI, PWM, PCIe,
diff --git a/arch/arm/mach-mediatek/mt7622/init.c 
b/arch/arm/mach-mediatek/mt7622/init.c
index 7f6ce80f37..884c45e183 100644
--- a/arch/arm/mach-mediatek/mt7622/init.c
+++ b/arch/arm/mach-mediatek/mt7622/init.c
@@ -7,8 +7,10 @@
 #include <common.h>
 #include <fdtdec.h>
 #include <init.h>
-#include <asm/armv8/mmu.h>
 #include <asm/cache.h>
+#ifdef CONFIG_ARM64
+#include <asm/armv8/mmu.h>
+#endif
 
 int print_cpuinfo(void)
 {
@@ -27,6 +29,7 @@ int dram_init(void)
 
 }
 
+#ifdef CONFIG_ARM64
 void reset_cpu(ulong addr)
 {
        psci_system_reset();
@@ -51,3 +54,4 @@ static struct mm_region mt7622_mem_map[] = {
        }
 };
 struct mm_region *mem_map = mt7622_mem_map;
+#endif
-- 
2.25.1

Reply via email to