diff --git a/tools/build_system/cpu.mk b/tools/build_system/cpu.mk
index 521589a1e497a1e33e7564eaa48e180f7f5dc071..05365effaeeb1e24514c77e714cbd43328ce749a 100644
--- a/tools/build_system/cpu.mk
+++ b/tools/build_system/cpu.mk
@@ -21,6 +21,7 @@ ifneq ($(findstring $(BS_FIRMWARE_CPU),$(ARMV7M_CPUS)),)
     $(call add_once,CFLAGS_CLANG,--target=arm-arm-none-eabi)
 
     CFLAGS += -mfloat-abi=soft # No hardware floating point support
+    CFLAGS += -mno-unaligned-access # Disable unaligned access code generation
 else ifeq ($(BS_FIRMWARE_CPU),host)
     BS_ARCH_ARCH := host