Modifications for psa-crypto in order to integrate with SPM

Add required includes in tests and psa_crypto.c file in order to be able to compilef for the SPM solution.
Some functions needed to be deprecated from psa_crypto.c since they already implemented in the SPM.
diff --git a/library/psa_crypto.c b/library/psa_crypto.c
index ca461c2..68fa0ef 100644
--- a/library/psa_crypto.c
+++ b/library/psa_crypto.c
@@ -27,6 +27,17 @@
 
 #if defined(MBEDTLS_PSA_CRYPTO_C)
 
+//! In case MBEDTLS_PSA_CRYPTO_SPM is defined the code is built for SPM (Secure
+//! Partition Manager) integration which separate the code into two parts
+//! NSPE (Non-Secure Process Environment) and SPE (Secure Process Environment).
+//! In this mode an additional header file should be included.
+#if defined(MBEDTLS_PSA_CRYPTO_SPM)
+//! PSA_CRYPTO_SECURE means that this file is compiled to the SPE side.
+//! some headers will be affected by this flag.
+#define PSA_CRYPTO_SECURE 1
+#include "crypto_spe.h"
+#endif
+
 #include "psa/crypto.h"
 
 #include <stdlib.h>
@@ -2481,7 +2492,7 @@
 /****************************************************************/
 /* Key Policy */
 /****************************************************************/
-
+#if !defined(MBEDTLS_PSA_CRYPTO_SPM)
 void psa_key_policy_init( psa_key_policy_t *policy )
 {
     memset( policy, 0, sizeof( *policy ) );
@@ -2504,7 +2515,7 @@
 {
     return( policy->alg );
 }
-
+#endif /* !defined(MBEDTLS_PSA_CRYPTO_SPM) */
 psa_status_t psa_set_key_policy( psa_key_slot_t key,
                                  const psa_key_policy_t *policy )
 {