Tools: Make SPM backend a user configuration

The backend is decided by the number of SFN/IPC Partitions in building.
But sometimes the build system needs to know the backend in advance.
For example, the build system enables different test Partitions for
different backends. And The IPC backend will support both IPC and SFN
Partitions in the future.

This patch makes the SPM backend a user configuration.
The default backend is IPC backend.

To use the SFN backend, users need to enable it manually.
The build system will check if it can be enabled as it can be enabled
only in specific configuration combinations.

Change-Id: I4a08ee19d466778fac2cebef4a3c63fc99e7b258
Signed-off-by: Kevin Peng <kevin.peng@arm.com>
diff --git a/config/tfm_ipc_config_default.cmake b/config/tfm_ipc_config_default.cmake
index b8b16b4..fbe6b09 100644
--- a/config/tfm_ipc_config_default.cmake
+++ b/config/tfm_ipc_config_default.cmake
@@ -1,5 +1,5 @@
 #-------------------------------------------------------------------------------
-# Copyright (c) 2020-2021, Arm Limited. All rights reserved.
+# Copyright (c) 2020-2022, Arm Limited. All rights reserved.
 #
 # SPDX-License-Identifier: BSD-3-Clause
 #
@@ -7,4 +7,6 @@
 
 ############################ Partitions ########################################
 
-set(TFM_PSA_API          ON          CACHE BOOL      "Use PSA API instead of secure library model")
+set(TFM_PSA_API                 ON          CACHE BOOL      "Use PSA API instead of secure library model")
+set(CONFIG_TFM_SPM_BACKEND_IPC  ON)
+set(CONFIG_TFM_SPM_BACKEND_SFN  OFF)