Core: Minimize the memory usage for partition list

Split the rodata, data and bss of the partition list.

Change-Id: I1b7e876ceee38b65b871b6be664d46bc7bd49af3
Signed-off-by: Summer Qin <summer.qin@arm.com>
diff --git a/secure_fw/spm/spm_db.h b/secure_fw/spm/spm_db.h
index 2ee69f6..90e071c 100644
--- a/secure_fw/spm/spm_db.h
+++ b/secure_fw/spm/spm_db.h
@@ -39,7 +39,6 @@
  * phase.
  */
 struct spm_partition_static_data_t {
-    int32_t index;                      /* Partition index */
     uint32_t partition_id;
     uint32_t partition_flags;
     uint32_t partition_priority;
@@ -51,11 +50,11 @@
  * divided to structures, to keep the related fields close to each other.
  */
 struct spm_partition_desc_t {
-    struct spm_partition_static_data_t static_data;
     struct spm_partition_runtime_data_t runtime_data;
-    struct tfm_spm_partition_platform_data_t *platform_data;
+    const struct spm_partition_static_data_t *static_data;
+    const struct tfm_spm_partition_platform_data_t *platform_data;
 #if TFM_PSA_API
-    struct tfm_spm_partition_memory_data_t memory_data;
+    const struct tfm_spm_partition_memory_data_t *memory_data;
     struct tfm_thrd_ctx sp_thrd;
 #endif
 };