Use PSA build config interface provided by Mbed TLS

Mbed TLS now provides a build configuration interface that allows
the definition of the crypto capability requirements to be
decoupled from the base Mbed TLS build configuration.  This will
allow for deployment specific configrations to be defined while
reusing a common Mbed TLS configuration.  At the moment,
this change uses the public version of psa/crypto_config.h
to provide a full crypto configuration.  When Mbed TLS
provides a way for an external project to provide a
configuration, deployment or factory specific configurations
can be supported in TS.

Signed-off-by: Julian Hall <julian.hall@arm.com>
Change-Id: I605f526d7aaa6be099a356e30ebc9a95bbbb1fd2
diff --git a/deployments/attestation/opteesp/attestation_sp.c b/deployments/attestation/opteesp/attestation_sp.c
index 0bb5fa2..555ce61 100644
--- a/deployments/attestation/opteesp/attestation_sp.c
+++ b/deployments/attestation/opteesp/attestation_sp.c
@@ -17,6 +17,8 @@
 #include <service/attestation/claims/sources/null_lifecycle/null_lifecycle_claim_source.h>
 #include <service/attestation/claims/sources/instance_id/instance_id_claim_source.h>
 #include <service/attestation/key_mngr/local/local_attest_key_mngr.h>
+#include <service/crypto/backend/mbedcrypto/mbedcrypto_backend.h>
+#include <service/secure_storage/backend/mock_store/mock_store.h>
 #include <ffa_api.h>
 #include <sp_api.h>
 #include <sp_rxtx.h>
@@ -56,6 +58,12 @@
 	sp_config_load(init_info);
 
 	/**
+	 * Initialize the mbedcrypto - to be replaced by crypto client
+	 */
+	struct mock_store key_store;
+	mbedcrypto_backend_init(mock_store_init(&key_store), 0);
+
+	/**
 	 * Register claim sources for deployment
 	 */
 	claims_register_init();
@@ -79,8 +87,6 @@
 	/**
 	 * Initialize the service provider
 	 */
- 	psa_crypto_init(); /* temporary */
-
 	local_attest_key_mngr_init(LOCAL_ATTEST_KEY_MNGR_VOLATILE_IAK);
 	attest_iface = attest_provider_init(&attest_provider);