Core: Improve code quality

This patch fixes the following things:
* avoid implicit casting by using matching types or casting
* avoid implicit casting between enum tfm_buffer_share_region_e and
uint32_t types by replacing the enumerated type with uint32_t and its
constants with preprocessor constants
* make explicit that the return value of a function is not used
* remove function return type if not needed
* replace preprocessor if condition by ifdef if only definition is
  checked
* replace enumerated types not used by preprocessor constants

Change-Id: Ib718937f89631cae2212de1fc748c48461b683d0
Signed-off-by: Hugues de Valon <hugues.devalon@arm.com>
diff --git a/secure_fw/spm/spm_api.c b/secure_fw/spm/spm_api.c
index e138190..9b3f3f2 100644
--- a/secure_fw/spm/spm_api.c
+++ b/secure_fw/spm/spm_api.c
@@ -134,7 +134,7 @@
     part_ptr = &(g_spm_partition_db.partitions[
             g_spm_partition_db.partition_count]);
     part_ptr->static_data.partition_id = TFM_SP_NON_SECURE_ID;
-#if TFM_PSA_API
+#ifdef TFM_PSA_API
     part_ptr->static_data.partition_flags = SPM_PART_FLAG_APP_ROT |
                                             SPM_PART_FLAG_IPC;
     part_ptr->static_data.partition_priority = TFM_PRIORITY_LOW;
@@ -206,7 +206,7 @@
             desc.sfn = (sfn_t)part->static_data.partition_init;
             desc.sp_id = part->static_data.partition_id;
             res = tfm_core_sfn_request(&desc);
-            if (res == TFM_SUCCESS) {
+            if (res == (int32_t)TFM_SUCCESS) {
                 tfm_spm_partition_set_state(idx, SPM_PARTITION_STATE_IDLE);
             } else {
                 tfm_spm_partition_err_handler(part, TFM_INIT_FAILURE, res);
diff --git a/secure_fw/spm/spm_api.h b/secure_fw/spm/spm_api.h
index d707346..565e708 100644
--- a/secure_fw/spm/spm_api.h
+++ b/secure_fw/spm/spm_api.h
@@ -28,21 +28,17 @@
     SPM_ERR_INVALID_CONFIG,
 };
 
-enum spm_part_state_t {
-    SPM_PARTITION_STATE_UNINIT = 0,
-    SPM_PARTITION_STATE_IDLE,
-    SPM_PARTITION_STATE_RUNNING,
-    SPM_PARTITION_STATE_HANDLING_IRQ,
-    SPM_PARTITION_STATE_SUSPENDED,
-    SPM_PARTITION_STATE_BLOCKED,
-    SPM_PARTITION_STATE_CLOSED
-};
+#define SPM_PARTITION_STATE_UNINIT       0
+#define SPM_PARTITION_STATE_IDLE         1
+#define SPM_PARTITION_STATE_RUNNING      2
+#define SPM_PARTITION_STATE_HANDLING_IRQ 3
+#define SPM_PARTITION_STATE_SUSPENDED    4
+#define SPM_PARTITION_STATE_BLOCKED      5
+#define SPM_PARTITION_STATE_CLOSED       6
 
-enum spm_part_flag_mask_t {
-    SPM_PART_FLAG_APP_ROT = 0x01,
-    SPM_PART_FLAG_PSA_ROT = 0x02,
-    SPM_PART_FLAG_IPC     = 0x04
-};
+#define SPM_PART_FLAG_APP_ROT 0x01
+#define SPM_PART_FLAG_PSA_ROT 0x02
+#define SPM_PART_FLAG_IPC     0x04
 
 /**
  * \brief Holds the iovec parameters that are passed to a service
@@ -339,7 +335,12 @@
  * \return Error code \ref spm_err_t
  *
  * \note This function doesn't check if partition_idx is valid.
- * \note share has to have the value set of \ref tfm_buffer_share_region_e
+ * \note share has to have one of the buffer share values:
+ *           - TFM_BUFFER_SHARE_DISABLE
+ *           - TFM_BUFFER_SHARE_NS_CODE
+ *           - TFM_BUFFER_SHARE_SCRATCH
+ *           - TFM_BUFFER_SHARE_PRIV
+ *           - TFM_BUFFER_SHARE_DEFAULT
  */
 enum spm_err_t tfm_spm_partition_set_share(uint32_t partition_idx,
                                            uint32_t share);
diff --git a/secure_fw/spm/spm_db.h b/secure_fw/spm/spm_db.h
index 6e6e25c..a3af8be 100644
--- a/secure_fw/spm/spm_db.h
+++ b/secure_fw/spm/spm_db.h
@@ -22,17 +22,13 @@
 #define TFM_PARTITION_TYPE_PSA   "PSA-ROT"
 
 #ifdef TFM_PSA_API
-enum tfm_partition_priority {
-    TFM_PRIORITY_LOW = THRD_PRIOR_LOWEST,
-    TFM_PRIORITY_NORMAL = THRD_PRIOR_MEDIUM,
-    TFM_PRIORITY_HIGH = THRD_PRIOR_HIGHEST,
-};
+#define TFM_PRIORITY_LOW    THRD_PRIOR_LOWEST
+#define TFM_PRIORITY_NORMAL THRD_PRIOR_MEDIUM
+#define TFM_PRIORITY_HIGH   THRD_PRIOR_HIGHEST
 #else
-enum tfm_partition_priority {
-    TFM_PRIORITY_LOW = 0xFF,
-    TFM_PRIORITY_NORMAL = 0x7F,
-    TFM_PRIORITY_HIGH = 0,
-};
+#define TFM_PRIORITY_LOW    0xFF
+#define TFM_PRIORITY_NORMAL 0x7F
+#define TFM_PRIORITY_HIGH   0
 #endif
 
 #define TFM_PRIORITY(LEVEL)      TFM_PRIORITY_##LEVEL