summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile8
-rw-r--r--docs/user-guide.rst6
-rw-r--r--make_helpers/defaults.mk3
3 files changed, 16 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index bdc317b1..105233b6 100644
--- a/Makefile
+++ b/Makefile
@@ -166,6 +166,14 @@ TF_CFLAGS_aarch64 = -march=armv8-a
LD = $(LINKER)
endif
+ifeq (${AARCH32_INSTRUCTION_SET},A32)
+TF_CFLAGS_aarch32 += -marm
+else ifeq (${AARCH32_INSTRUCTION_SET},T32)
+TF_CFLAGS_aarch32 += -mthumb
+else
+$(error Error: Unknown AArch32 instruction set ${AARCH32_INSTRUCTION_SET})
+endif
+
TF_CFLAGS_aarch32 += -mno-unaligned-access
TF_CFLAGS_aarch64 += -mgeneral-regs-only -mstrict-align
diff --git a/docs/user-guide.rst b/docs/user-guide.rst
index 3f8170fd..b8baf471 100644
--- a/docs/user-guide.rst
+++ b/docs/user-guide.rst
@@ -75,7 +75,7 @@ In addition, the following optional packages and tools may be needed:
- To create and modify the diagram files included in the documentation, `Dia`_.
This tool can be found in most Linux distributions. Inkscape is needed to
- generate the actual *.png files.
+ generate the actual \*.png files.
Getting the TF-A source code
----------------------------
@@ -212,6 +212,10 @@ performed.
Common build options
^^^^^^^^^^^^^^^^^^^^
+- ``AARCH32_INSTRUCTION_SET``: Choose the AArch32 instruction set that the
+ compiler should use. Valid values are T32 and A32. It defaults to T32 due to
+ code having a smaller resulting size.
+
- ``AARCH32_SP`` : Choose the AArch32 Secure Payload component to be built as
as the BL32 image when ``ARCH=aarch32``. The value should be the path to the
directory containing the SP source, relative to the ``bl32/``; the directory
diff --git a/make_helpers/defaults.mk b/make_helpers/defaults.mk
index 49f403d2..908da221 100644
--- a/make_helpers/defaults.mk
+++ b/make_helpers/defaults.mk
@@ -10,6 +10,9 @@
# poised to handle dependencies, as all build variables would have a default
# value by then.
+# Use T32 by default
+AARCH32_INSTRUCTION_SET := T32
+
# The AArch32 Secure Payload to be built as BL32 image
AARCH32_SP := none