Build: Support multi params in 'extra_params'

This patch extend 'extra_params' in build helper to support multiple
extra params in one config. Params are seperated by ', '.

For example, for a config with both FPHARD and LZOFF enabled,
extra_params can be set as "FPHARD, LZOFF". Then the build helper
will append the configs in the build command generated automatically.

Signed-off-by: Xinyu Zhang <xinyu.zhang@arm.com>
Change-Id: I645284c4ef37d47feb5e31fe093d67a446778c5a
diff --git a/tfm_ci_pylib/tfm_build_manager.py b/tfm_ci_pylib/tfm_build_manager.py
index f78c9e8..b5d7594 100644
--- a/tfm_ci_pylib/tfm_build_manager.py
+++ b/tfm_ci_pylib/tfm_build_manager.py
@@ -90,6 +90,13 @@
 
         return compiler_name
 
+    def map_extra_params(self, params):
+        extra_params = ""
+        param_list = params.split(", ")
+        for param in param_list:
+            extra_params += mapExtraParams[param]
+        return extra_params
+
     def get_config(self):
             return list(self._tbm_build_cfg.keys())
 
@@ -401,7 +408,7 @@
                             "with_ns": i.with_ns,
                             "profile": "" if i.profile=="N.A" else i.profile,
                             "partition_ps": i.partition_ps,
-                            "extra_params": mapExtraParams[i.extra_params]}
+                            "extra_params": self.map_extra_params(i.extra_params)}
         if i.test_psa_api == "IPC":
             overwrite_params["test_psa_api"] += " -DINCLUDE_PANIC_TESTS=1"
         if i.test_psa_api == "CRYPTO" and "musca" in i.tfm_platform:
@@ -592,7 +599,7 @@
             if list(i)[10] == "OFF":    #PARTITION_PS
                 config_param.append("PSOFF")
             if list(i)[11]: # EXTRA_PARAMS
-                config_param.append(list(i)[11])
+                config_param.append(list(i)[11].replace(", ", "_"))
             i_str = "_".join(config_param)
             ret_cfg[i_str] = i
         return ret_cfg