Core: Clear FP status before SPM initialization

Float point (FP) is forbidden during SPM initialization, clear it
before handler mode SPM initialization. And return the generic
EXC_RETURN for subsequent thread scheduling.

The usage of FP is still valid before SPM initialization and
the subsequent thread execution, just do not happen during SPM
initialization.

Change-Id: I48d7bd0f140cb1c933cdd621d598446cb81eaee3
Signed-off-by: Ken Liu <ken.liu@arm.com>
diff --git a/secure_fw/spm/spm_api.h b/secure_fw/spm/spm_api.h
index d7d0e7d..fbcda09 100644
--- a/secure_fw/spm/spm_api.h
+++ b/secure_fw/spm/spm_api.h
@@ -681,8 +681,11 @@
  * \brief                      SPM initialization implementation
  *
  * \details                    This function must be called under handler mode.
+ * \retval                     This function returns an EXC_RETURN value. Other
+ *                             faults would panic the execution and never
+ *                             returned.
  */
-void tfm_spm_init(void);
+uint32_t tfm_spm_init(void);
 
 #endif /* ifdef(TFM_PSA_API) */