AArch32: Add essential Arch helpers
This patch adds the essential AArch32 architecture helpers
arch.h and arch_helpers.h and modifies `_types.h` to add AArch32
support.
A new build option `ARCH` is defined in the top level makefile to
enable the component makefiles to choose the right files based on the
Architecture it is being build for. Depending on this flag, either
`AARCH32` or `AARCH64` flag is defined by the Makefile. The default
value of `ARCH` flag is `aarch64`. The AArch32 build support will be
added in a later patch.
Change-Id: I405e5fac02db828a55cd25989b572b64cb005241
diff --git a/Makefile b/Makefile
index a68335b..eb593a7 100644
--- a/Makefile
+++ b/Makefile
@@ -45,6 +45,8 @@
# Default values for build configurations
################################################################################
+# The Target build architecture.
+ARCH := aarch64
# Build verbosity
V := 0
# Debug build
@@ -468,6 +470,12 @@
$(eval $(call add_define,PRELOADED_BL33_BASE))
endif
endif
+# Define the AARCH32/AARCH64 flag based on the ARCH flag
+ifeq (${ARCH},aarch32)
+ $(eval $(call add_define,AARCH32))
+else
+ $(eval $(call add_define,AARCH64))
+endif
################################################################################
# Include BL specific makefiles