diff --git a/arch/arm/core/aarch64/arm_mmu.c b/arch/arm/core/aarch64/arm_mmu.c
index a8128cb37d4c0302155f59aa12453d64d582a6c7..5deed200f7584f0a4e67327223fe91062d0c3796 100644
--- a/arch/arm/core/aarch64/arm_mmu.c
+++ b/arch/arm/core/aarch64/arm_mmu.c
@@ -459,6 +459,7 @@ static int arm_mmu_init(const struct device *arg)
 	return 0;
 }
 
+#ifndef CONFIG_BOARD_QEMU_RASPI3
 SYS_INIT(arm_mmu_init, PRE_KERNEL_1,
 #if MMU_DEBUG_PRINTS
 	 MMU_DEBUG_PRIORITY
@@ -466,3 +467,6 @@ SYS_INIT(arm_mmu_init, PRE_KERNEL_1,
 	 CONFIG_KERNEL_INIT_PRIORITY_DEVICE
 #endif
 );
+#else
+#warning ARM MMU disabled because it is buggy on qemu_raspi3 board
+#endif