diff --git a/CMakeLists.txt b/CMakeLists.txt
index 726f650..1e11999 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -26,9 +26,6 @@
     include(platform/ext/target/${TFM_PLATFORM}/preload.cmake)
 endif()
 
-if(TFM_SYSTEM_FP)
-    message(FATAL_ERROR "Hardware FPU is currently not supported in TF-M")
-endif()
 if(TFM_SYSTEM_MVE)
     message(FATAL_ERROR "Hardware MVE is currently not supported in TF-M")
 endif()
diff --git a/bl2/CMakeLists.txt b/bl2/CMakeLists.txt
index 3cba7ad..5cfef48 100644
--- a/bl2/CMakeLists.txt
+++ b/bl2/CMakeLists.txt
@@ -36,6 +36,11 @@
         tfm_boot_status
 )
 
+target_compile_options(bl2
+    PRIVATE
+        ${BL2_COMPILER_CP_FLAG}
+)
+
 target_link_options(bl2
     PRIVATE
         $<$<C_COMPILER_ID:GNU>:-Wl,-Map=${CMAKE_BINARY_DIR}/bin/bl2.map>
@@ -110,6 +115,21 @@
         ${MBEDCRYPTO_PATH}/library
 )
 
+target_compile_options(bl2_mbedcrypto
+    PRIVATE
+        ${BL2_COMPILER_CP_FLAG}
+)
+
+target_compile_options(bl2_mbedtls
+    PRIVATE
+        ${BL2_COMPILER_CP_FLAG}
+)
+
+target_compile_options(bl2_mbedx509
+    PRIVATE
+        ${BL2_COMPILER_CP_FLAG}
+)
+
 ############################### CODE SHARING ###################################
 
 if (TFM_CODE_SHARING)
diff --git a/bl2/ext/mcuboot/CMakeLists.txt b/bl2/ext/mcuboot/CMakeLists.txt
index d375c76..be93e65 100644
--- a/bl2/ext/mcuboot/CMakeLists.txt
+++ b/bl2/ext/mcuboot/CMakeLists.txt
@@ -27,6 +27,11 @@
         bl2_mbedcrypto
 )
 
+target_compile_options(bootutil
+    PRIVATE
+        ${BL2_COMPILER_CP_FLAG}
+)
+
 target_compile_definitions(bootutil
     PRIVATE
         $<$<BOOL:${DEFAULT_MCUBOOT_FLASH_MAP}>:DEFAULT_MCUBOOT_FLASH_MAP>
diff --git a/config/check_config.cmake b/config/check_config.cmake
index ffe0457..9feb125 100644
--- a/config/check_config.cmake
+++ b/config/check_config.cmake
@@ -51,6 +51,14 @@
 tfm_invalid_config(TEST_PSA_API STREQUAL "STORAGE" AND NOT TFM_PARTITION_INTERNAL_TRUSTED_STORAGE)
 tfm_invalid_config(TEST_PSA_API STREQUAL "STORAGE" AND NOT TFM_PARTITION_PROTECTED_STORAGE)
 
+########################## FPU ################################################
+
+tfm_invalid_config(CONFIG_TFM_SPE_FP LESS 0 OR CONFIG_TFM_SPE_FP GREATER 2)
+tfm_invalid_config(NOT CMAKE_C_COMPILER_ID STREQUAL "GNU" AND CONFIG_TFM_SPE_FP GREATER 0)
+tfm_invalid_config((NOT CONFIG_TFM_FP_ARCH) AND (CONFIG_TFM_SPE_FP GREATER 0))
+tfm_invalid_config((NOT TFM_PSA_API) AND (CONFIG_TFM_SPE_FP GREATER 0))
+tfm_invalid_config(CONFIG_TFM_SPE_FP STREQUAL "0" AND CONFIG_TFM_LAZY_STACKING_SPE)
+
 ########################## BL2 #################################################
 
 get_property(MCUBOOT_STRATEGY_LIST CACHE MCUBOOT_UPGRADE_STRATEGY PROPERTY STRINGS)
diff --git a/config/config_default.cmake b/config/config_default.cmake
index c7e6170..1baeaac 100755
--- a/config/config_default.cmake
+++ b/config/config_default.cmake
@@ -53,6 +53,9 @@
 
 set(TFM_EXCEPTION_INFO_DUMP             OFF         CACHE BOOL      "On fatal errors in the secure firmware, capture info about the exception. Print the info if the SPM log level is sufficient.")
 
+set(CONFIG_TFM_SPE_FP                   0           CACHE STRING    "FP ABI type in SPE: 0-software, 1-hybird, 2-hardware")
+set(CONFIG_TFM_LAZY_STACKING_SPE        OFF         CACHE BOOL      "Disable lazy stacking from SPE")
+
 ############################ Platform ##########################################
 
 set(TFM_MULTI_CORE_TOPOLOGY             OFF         CACHE BOOL      "Whether to build for a dual-cpu architecture")
@@ -161,3 +164,7 @@
 ########################## FIH #################################################
 
 set_property(CACHE TFM_FIH_PROFILE PROPERTY STRINGS "OFF;LOW;MEDIUM;HIGH")
+
+########################## FP #################################################
+
+set_property(CACHE CONFIG_TFM_SPE_FP PROPERTY STRINGS "0;1;2")
diff --git a/config/cp_config_default.cmake b/config/cp_config_default.cmake
new file mode 100644
index 0000000..842bc83
--- /dev/null
+++ b/config/cp_config_default.cmake
@@ -0,0 +1,17 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2021, Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+#-------------------------------------------------------------------------------
+
+################################### FP ########################################
+
+if (NOT DEFINED CONFIG_TFM_FP_ARCH)
+    set(CONFIG_TFM_FP_ARCH "")
+    return()
+endif()
+
+if (CONFIG_TFM_SPE_FP STREQUAL "1" OR CONFIG_TFM_SPE_FP STREQUAL "2")
+    set(CONFIG_TFM_LAZY_STACKING_SPE     ON          CACHE BOOL      "Enable lazy stacking from SPE")
+endif()
diff --git a/config/set_config.cmake b/config/set_config.cmake
index fe69e68..3c81001 100644
--- a/config/set_config.cmake
+++ b/config/set_config.cmake
@@ -56,6 +56,9 @@
     include(${CMAKE_SOURCE_DIR}/bl2/ext/mcuboot/mcuboot_default_config.cmake)
 endif()
 
+# Include coprocessor configs
+include(config/cp_config_default.cmake)
+
 # Load defaults, setting options not already set
 include(config/config_default.cmake)
 
diff --git a/lib/ext/qcbor/CMakeLists.txt b/lib/ext/qcbor/CMakeLists.txt
index b32cdea..a84850a 100644
--- a/lib/ext/qcbor/CMakeLists.txt
+++ b/lib/ext/qcbor/CMakeLists.txt
@@ -7,9 +7,9 @@
 
 cmake_minimum_required(VERSION 3.15)
 
-add_library(tfm_qcbor STATIC EXCLUDE_FROM_ALL)
+add_library(tfm_qcbor_s STATIC EXCLUDE_FROM_ALL)
 
-target_sources(tfm_qcbor
+target_sources(tfm_qcbor_s
     PRIVATE
         src/ieee754.c
         src/qcbor_encode.c
@@ -17,39 +17,18 @@
         src/UsefulBuf.c
 )
 
-target_include_directories(tfm_qcbor
+target_include_directories(tfm_qcbor_s
     PUBLIC
         $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
 )
 
-target_link_libraries(tfm_qcbor
+target_link_libraries(tfm_qcbor_s
     PRIVATE
         tfm_attestation_defs
         tfm_t_cose_defs
 )
 
-############################ qcbor test ########################################
-
-add_library(tfm_qcbor_test STATIC EXCLUDE_FROM_ALL)
-
-target_sources(tfm_qcbor_test
+target_compile_options(tfm_qcbor_s
     PRIVATE
-        test/float_tests.c
-        test/half_to_double_from_rfc7049.c
-        test/qcbor_decode_tests.c
-        test/qcbor_encode_tests.c
-        test/run_tests.c
-        test/UsefulBuf_Tests.c
-)
-
-target_include_directories(tfm_qcbor_test
-    PUBLIC
-        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/test>
-    PRIVATE
-        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
-)
-
-target_link_libraries(tfm_qcbor_test
-    PRIVATE
-        tfm_qcbor
+        ${COMPILER_CP_FLAG}
 )
diff --git a/lib/ext/t_cose/CMakeLists.txt b/lib/ext/t_cose/CMakeLists.txt
index cd780ad..06448b1 100644
--- a/lib/ext/t_cose/CMakeLists.txt
+++ b/lib/ext/t_cose/CMakeLists.txt
@@ -46,18 +46,6 @@
         ${CMAKE_CURRENT_SOURCE_DIR}/crypto_adapters/t_cose_psa_crypto.c
 )
 
-############################ t_cose non secure #################################
-
-add_library(tfm_t_cose_ns STATIC EXCLUDE_FROM_ALL)
-
-target_link_libraries(tfm_t_cose_ns
-    PUBLIC
-        tfm_t_cose_common
-        tfm_t_cose_defs
-        tfm_qcbor
-        tfm_ns_interface
-)
-
 ############################ t_cose secure #####################################
 
 add_library(tfm_t_cose_s STATIC EXCLUDE_FROM_ALL)
@@ -66,30 +54,11 @@
     PUBLIC
         tfm_t_cose_common
         tfm_t_cose_defs
-        tfm_qcbor
+        tfm_qcbor_s
         psa_interface
 )
 
-############################ t_cose test #######################################
-
-add_library(tfm_t_cose_test STATIC EXCLUDE_FROM_ALL)
-
-target_sources(tfm_t_cose_test
-    PRIVATE
-        test/run_tests.c
-        test/t_cose_make_psa_test_key.c
-        test/t_cose_make_test_messages.c
-        test/t_cose_sign_verify_test.c
-        test/t_cose_test.c
-)
-
-target_include_directories(tfm_t_cose_test
+target_compile_options(tfm_t_cose_s
     PUBLIC
-        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
-        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/test>
-)
-
-target_link_libraries(tfm_t_cose_test
-    PRIVATE
-        tfm_t_cose_ns
+        ${COMPILER_CP_FLAG}
 )
diff --git a/platform/CMakeLists.txt b/platform/CMakeLists.txt
index 599927d..03f7afb 100755
--- a/platform/CMakeLists.txt
+++ b/platform/CMakeLists.txt
@@ -81,6 +81,8 @@
     PUBLIC
         TFM_SPM_LOG_LEVEL=${TFM_SPM_LOG_LEVEL}
         $<$<BOOL:${OTP_NV_COUNTERS_RAM_EMULATION}>:OTP_NV_COUNTERS_RAM_EMULATION>
+        CONFIG_TFM_SPE_FP=${CONFIG_TFM_SPE_FP}
+        $<$<BOOL:${CONFIG_TFM_LAZY_STACKING_SPE}>:CONFIG_TFM_LAZY_STACKING_SPE>
     PRIVATE
         $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:SYMMETRIC_INITIAL_ATTESTATION>
         $<$<OR:$<VERSION_GREATER:${TFM_ISOLATION_LEVEL},1>,$<STREQUAL:"${TEST_PSA_API}","IPC">>:CONFIG_TFM_ENABLE_MEMORY_PROTECT>
@@ -93,6 +95,11 @@
         $<$<BOOL:${PLATFORM_DEFAULT_OTP_WRITEABLE}>:OTP_WRITEABLE>
 )
 
+target_compile_options(platform_s
+    PUBLIC
+        ${COMPILER_CP_FLAG}
+)
+
 #========================= Platform Non-Secure ================================#
 
 target_sources(platform_ns
diff --git a/platform/ext/accelerator/cc312/CMakeLists.txt b/platform/ext/accelerator/cc312/CMakeLists.txt
index d8cd304..20acdb7 100644
--- a/platform/ext/accelerator/cc312/CMakeLists.txt
+++ b/platform/ext/accelerator/cc312/CMakeLists.txt
@@ -104,6 +104,21 @@
             $<$<C_COMPILER_ID:GNU>:-Wno-unused-parameter>
             $<$<C_COMPILER_ID:ARMClang>:-Wno-unused-parameter>
     )
+
+    target_compile_options(bl2_cc312
+        PRIVATE
+            ${BL2_COMPILER_CP_FLAG}
+    )
+
+    target_compile_options(bl2_crypto_hw
+        PRIVATE
+            ${BL2_COMPILER_CP_FLAG}
+    )
+
+    target_compile_options(cc312_cdmpu
+        INTERFACE
+            ${BL2_COMPILER_CP_FLAG}
+    )
 endif()
 
 ############################ Crypto Service ####################################
diff --git a/platform/ext/target/arm/musca_s1/CMakeLists.txt b/platform/ext/target/arm/musca_s1/CMakeLists.txt
index 941762f..4f3155b 100644
--- a/platform/ext/target/arm/musca_s1/CMakeLists.txt
+++ b/platform/ext/target/arm/musca_s1/CMakeLists.txt
@@ -165,4 +165,9 @@
             ${MCUBOOT_PATH}/boot/bootutil/include # for fault_injection_hardening.h only
             ${CMAKE_BINARY_DIR}/bl2/ext/mcuboot # for mcuboot_config.h only
     )
+
+    target_compile_options(platform_bl2
+        PRIVATE
+            ${BL2_COMPILER_CP_FLAG}
+    )
 endif()
diff --git a/platform/ext/target/arm/musca_s1/preload.cmake b/platform/ext/target/arm/musca_s1/preload.cmake
index 0eb0c46..e498bca 100644
--- a/platform/ext/target/arm/musca_s1/preload.cmake
+++ b/platform/ext/target/arm/musca_s1/preload.cmake
@@ -13,7 +13,7 @@
 # Set architecture and CPU
 set(TFM_SYSTEM_PROCESSOR cortex-m33)
 set(TFM_SYSTEM_ARCHITECTURE armv8-m.main)
-
+set(CONFIG_TFM_FP_ARCH "fpv5-sp-d16")
 
 # The MUSCA_S1 has a CryptoCell-312 as an accelerator.
 set(CRYPTO_HW_ACCELERATOR_TYPE cc312)
diff --git a/secure_fw/CMakeLists.txt b/secure_fw/CMakeLists.txt
index 982bea8..14f6145 100644
--- a/secure_fw/CMakeLists.txt
+++ b/secure_fw/CMakeLists.txt
@@ -69,12 +69,19 @@
         RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
 )
 
+target_compile_options(tfm_s
+    PUBLIC
+        ${COMPILER_CP_FLAG}
+)
+
 target_link_options(tfm_s
     PRIVATE
         --entry=Reset_Handler
         $<$<C_COMPILER_ID:GNU>:-Wl,-Map=${CMAKE_BINARY_DIR}/bin/tfm_s.map>
         $<$<C_COMPILER_ID:ARMClang>:--map>
         $<$<C_COMPILER_ID:IAR>:--map\;${CMAKE_BINARY_DIR}/bin/tfm_s.map>
+    PUBLIC
+        ${LINKER_CP_OPTION}
 )
 
 add_convert_to_bin_target(tfm_s)
diff --git a/secure_fw/partitions/initial_attestation/CMakeLists.txt b/secure_fw/partitions/initial_attestation/CMakeLists.txt
index 72cc09e..cd98771 100644
--- a/secure_fw/partitions/initial_attestation/CMakeLists.txt
+++ b/secure_fw/partitions/initial_attestation/CMakeLists.txt
@@ -59,7 +59,7 @@
     PRIVATE
         tfm_secure_api
         platform_s
-        tfm_qcbor
+        tfm_qcbor_s
         tfm_t_cose_s
         secure_fw
         psa_interface
diff --git a/secure_fw/spm/CMakeLists.txt b/secure_fw/spm/CMakeLists.txt
index 2eed0af..eccc807 100755
--- a/secure_fw/spm/CMakeLists.txt
+++ b/secure_fw/spm/CMakeLists.txt
@@ -117,6 +117,12 @@
         $<$<AND:$<BOOL:${BL2}>,$<BOOL:${MCUBOOT_MEASURED_BOOT}>>:BOOT_DATA_AVAILABLE>
         $<$<BOOL:${TFM_EXCEPTION_INFO_DUMP}>:TFM_EXCEPTION_INFO_DUMP>
         $<$<BOOL:${TFM_NS_MANAGE_NSID}>:TFM_NS_MANAGE_NSID>
+        CONFIG_TFM_SPE_FP=${CONFIG_TFM_SPE_FP}
+)
+
+target_compile_options(tfm_spm
+    PUBLIC
+        ${COMPILER_CP_FLAG}
 )
 
 # The veneers give warnings about not being properly declared so they get hidden
diff --git a/secure_fw/spm/cmsis_psa/main.c b/secure_fw/spm/cmsis_psa/main.c
index d586b3c..402b545 100644
--- a/secure_fw/spm/cmsis_psa/main.c
+++ b/secure_fw/spm/cmsis_psa/main.c
@@ -101,6 +101,22 @@
 
     SPMLOG_DBGMSGVAL("TF-M isolation level is: ", TFM_LVL);
 
+#if (CONFIG_TFM_SPE_FP == 0)
+    SPMLOG_INFMSG("\033[1;33mTF-M FPU mode: Software\033[0m\r\n");
+#elif (CONFIG_TFM_SPE_FP == 1)
+    SPMLOG_INFMSG("\033[1;33mTF-M FPU mode: Hybird\033[0m\r\n");
+#elif (CONFIG_TFM_SPE_FP == 2)
+    SPMLOG_INFMSG("\033[1;33mTF-M FPU mode: Hardware\033[0m\r\n");
+#endif
+
+#if (CONFIG_TFM_SPE_FP >= 1)
+#ifdef CONFIG_TFM_LAZY_STACKING_SPE
+    SPMLOG_INFMSG("\033[1;33mLazy stacking enabled\033[0m\r\n");
+#else
+    SPMLOG_INFMSG("\033[1;33mLazy stacking disabled\033[0m\r\n");
+#endif
+#endif
+
     tfm_core_validate_boot_data();
 
     configure_ns_code();
diff --git a/toolchain_GNUARM.cmake b/toolchain_GNUARM.cmake
index 760a098..2ed640b 100644
--- a/toolchain_GNUARM.cmake
+++ b/toolchain_GNUARM.cmake
@@ -1,5 +1,5 @@
 #-------------------------------------------------------------------------------
-# Copyright (c) 2020, Arm Limited. All rights reserved.
+# Copyright (c) 2020-2021, Arm Limited. All rights reserved.
 #
 # SPDX-License-Identifier: BSD-3-Clause
 #
@@ -49,7 +49,6 @@
         -nostdlib
         -std=c99
         $<$<BOOL:${TFM_DEBUG_SYMBOLS}>:-g>
-        $<$<NOT:$<BOOL:${TFM_SYSTEM_FP}>>:-msoft-float>
     )
 endmacro()
 
@@ -76,6 +75,13 @@
                 string(APPEND CMAKE_SYSTEM_PROCESSOR "+nodsp")
             endif()
         endif()
+        if(GCC_VERSION VERSION_GREATER_EQUAL "8.0.0")
+            if (DEFINED CONFIG_TFM_SPE_FP)
+                if(CONFIG_TFM_SPE_FP STREQUAL "0")
+                    string(APPEND CMAKE_SYSTEM_PROCESSOR "+nofp")
+                endif()
+            endif()
+        endif()
     endif()
 
     # CMAKE_SYSTEM_ARCH variable is not a built-in CMAKE variable. It is used to
@@ -95,6 +101,14 @@
             endif()
         endif()
     endif()
+
+    if(GCC_VERSION VERSION_GREATER_EQUAL "8.0.0")
+        if (DEFINED CONFIG_TFM_SPE_FP)
+            if(CONFIG_TFM_SPE_FP STRGREATER 0)
+                string(APPEND CMAKE_SYSTEM_ARCH "+fp")
+            endif()
+        endif()
+    endif()
 endmacro()
 
 macro(tfm_toolchain_reload_compiler)
@@ -125,6 +139,19 @@
 
     set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS_INIT})
     set(CMAKE_ASM_FLAGS ${CMAKE_ASM_FLAGS_INIT})
+
+    set(BL2_COMPILER_CP_FLAG -mfloat-abi=soft)
+
+    if (CONFIG_TFM_SPE_FP STREQUAL "2")
+        set(COMPILER_CP_FLAG -mfloat-abi=hard -mfpu=${CONFIG_TFM_FP_ARCH})
+        set(LINKER_CP_OPTION -mfloat-abi=hard -mfpu=${CONFIG_TFM_FP_ARCH})
+    elseif (CONFIG_TFM_SPE_FP STREQUAL "1")
+        set(COMPILER_CP_FLAG -mfloat-abi=softfp -mfpu=${CONFIG_TFM_FP_ARCH})
+        set(LINKER_CP_OPTION -mfloat-abi=softfp -mfpu=${CONFIG_TFM_FP_ARCH})
+    else()
+        set(COMPILER_CP_FLAG -mfloat-abi=soft)
+        set(LINKER_CP_OPTION -mfloat-abi=soft)
+    endif()
 endmacro()
 
 # Configure environment for the compiler setup run by cmake at the first
