Interface: Fix the NS PSA API when no connection-based Services
When there is no connectio-based RoT Service, the APIs dedicated
for them are not included in building.
But this tfm_psa_ns_api.c was missed.
This patch fixes this.
Change-Id: Ic442a0e9294dc59125c2e4f5463adda129d19a8f
Signed-off-by: Kevin Peng <kevin.peng@arm.com>
diff --git a/interface/src/tfm_psa_ns_api.c b/interface/src/tfm_psa_ns_api.c
index 4d29f1b..2212931 100644
--- a/interface/src/tfm_psa_ns_api.c
+++ b/interface/src/tfm_psa_ns_api.c
@@ -1,10 +1,12 @@
/*
- * Copyright (c) 2018-2021, Arm Limited. All rights reserved.
+ * Copyright (c) 2018-2022, Arm Limited. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*
*/
+#include "config_impl.h"
+
#include "psa/client.h"
#include "tfm_ns_interface.h"
#include "tfm_api.h"
@@ -32,16 +34,6 @@
0);
}
-psa_handle_t psa_connect(uint32_t sid, uint32_t version)
-{
- return tfm_ns_interface_dispatch(
- (veneer_fn)tfm_psa_connect_veneer,
- sid,
- version,
- 0,
- 0);
-}
-
psa_status_t psa_call(psa_handle_t handle, int32_t type,
const psa_invec *in_vec,
size_t in_len,
@@ -63,6 +55,18 @@
(uint32_t)out_vec);
}
+/* Following veneers are only needed by connection-based services */
+#if CONFIG_TFM_CONNECTION_BASED_SERVICE_API == 1
+psa_handle_t psa_connect(uint32_t sid, uint32_t version)
+{
+ return tfm_ns_interface_dispatch(
+ (veneer_fn)tfm_psa_connect_veneer,
+ sid,
+ version,
+ 0,
+ 0);
+}
+
void psa_close(psa_handle_t handle)
{
(void)tfm_ns_interface_dispatch(
@@ -72,3 +76,4 @@
0,
0);
}
+#endif /* CONFIG_TFM_CONNECTION_BASED_SERVICE_API == 1 */