psa: driver: Reduce the scope of test driver entry points

Define test driver entry points that provide an alternative
to Mbed TLS driver entry points only when the PSA configuration
is used. Their purpose is only to test the PSA configuration
thus there is no good reason to use them out of this scope.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
diff --git a/library/psa_crypto_cipher.c b/library/psa_crypto_cipher.c
index 713c3d1..12e52fa 100644
--- a/library/psa_crypto_cipher.c
+++ b/library/psa_crypto_cipher.c
@@ -32,25 +32,29 @@
 #include <string.h>
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_DES) || \
-      ( defined(PSA_CRYPTO_DRIVER_TEST) && \
+      ( defined(PSA_CRYPTO_DRIVER_TEST) &&         \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&      \
         defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_DES) ) )
 #define BUILTIN_KEY_TYPE_DES  1
 #endif
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_ALG_CBC_NO_PADDING) || \
-      ( defined(PSA_CRYPTO_DRIVER_TEST) && \
+      ( defined(PSA_CRYPTO_DRIVER_TEST) &&               \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&            \
         defined(MBEDTLS_PSA_ACCEL_ALG_CBC_NO_PADDING) ) )
 #define BUILTIN_ALG_CBC_NO_PADDING  1
 #endif
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_ALG_CBC_PKCS7) || \
-      ( defined(PSA_CRYPTO_DRIVER_TEST) && \
+      ( defined(PSA_CRYPTO_DRIVER_TEST) &&          \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&       \
         defined(MBEDTLS_PSA_ACCEL_ALG_CBC_PKCS7) ) )
 #define BUILTIN_ALG_CBC_PKCS7  1
 #endif
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_CHACHA20) || \
-      ( defined(PSA_CRYPTO_DRIVER_TEST) && \
+      ( defined(PSA_CRYPTO_DRIVER_TEST) &&              \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&           \
         defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_CHACHA20) ) )
 #define BUILTIN_KEY_TYPE_CHACHA20  1
 #endif
@@ -150,7 +154,8 @@
                                              (int) key_bits, mode ) );
 }
 
-#if defined(MBEDTLS_PSA_BUILTIN_CIPHER) || defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(MBEDTLS_PSA_BUILTIN_CIPHER) || \
+    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG) )
 
 static psa_status_t cipher_setup(
     mbedtls_psa_cipher_operation_t *operation,
@@ -569,7 +574,8 @@
         cipher_abort( &operation );
     return( status );
 }
-#endif /* MBEDTLS_PSA_BUILTIN_CIPHER || PSA_CRYPTO_DRIVER_TEST */
+#endif /* MBEDTLS_PSA_BUILTIN_CIPHER ||
+          (PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG) */
 
 #if defined(MBEDTLS_PSA_BUILTIN_CIPHER)
 psa_status_t mbedtls_psa_cipher_encrypt_setup(
@@ -658,7 +664,7 @@
  * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
  */
 
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 psa_status_t mbedtls_transparent_test_driver_cipher_encrypt_setup(
     mbedtls_psa_cipher_operation_t *operation,
     const psa_key_attributes_t *attributes,
@@ -739,6 +745,6 @@
                             alg, input, input_length,
                             output, output_size, output_length ) );
 }
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* MBEDTLS_PSA_CRYPTO_C */
diff --git a/library/psa_crypto_cipher.h b/library/psa_crypto_cipher.h
index 5971e8d..b0d1939 100644
--- a/library/psa_crypto_cipher.h
+++ b/library/psa_crypto_cipher.h
@@ -308,7 +308,7 @@
  * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
  */
 
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 psa_status_t mbedtls_transparent_test_driver_cipher_encrypt_setup(
     mbedtls_psa_cipher_operation_t *operation,
     const psa_key_attributes_t *attributes,
@@ -358,6 +358,6 @@
     uint8_t *output,
     size_t output_size,
     size_t *output_length );
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* PSA_CRYPTO_CIPHER_H */
diff --git a/library/psa_crypto_ecp.c b/library/psa_crypto_ecp.c
index 3ce232c..83cc72d 100644
--- a/library/psa_crypto_ecp.c
+++ b/library/psa_crypto_ecp.c
@@ -42,18 +42,21 @@
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_ECC_KEY_PAIR) ||  \
       ( defined(PSA_CRYPTO_DRIVER_TEST) &&                   \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&                \
         defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_ECC_KEY_PAIR) ) )
 #define BUILTIN_KEY_TYPE_ECC_KEY_PAIR    1
 #endif
 
-#if ( defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_ECC_PUBLIC_KEY) ||  \
-      ( defined(PSA_CRYPTO_DRIVER_TEST) &&                   \
+#if ( defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_ECC_PUBLIC_KEY) || \
+      ( defined(PSA_CRYPTO_DRIVER_TEST) &&                    \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&                 \
         defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_ECC_PUBLIC_KEY) ) )
 #define BUILTIN_KEY_TYPE_ECC_PUBLIC_KEY  1
 #endif
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_ALG_ECDSA) ||  \
       ( defined(PSA_CRYPTO_DRIVER_TEST) &&       \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&    \
         defined(MBEDTLS_PSA_ACCEL_ALG_ECDSA) &&  \
         defined(MBEDTLS_ECDSA_C) ) )
 #define BUILTIN_ALG_ECDSA 1
@@ -61,6 +64,7 @@
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_ALG_DETERMINISTIC_ECDSA) ||  \
       ( defined(PSA_CRYPTO_DRIVER_TEST) &&                     \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&                  \
         defined(MBEDTLS_PSA_ACCEL_ALG_DETERMINISTIC_ECDSA) &&  \
         defined(MBEDTLS_ECDSA_C) && defined(MBEDTLS_ECDSA_DETERMINISTIC) ) )
 #define BUILTIN_ALG_DETERMINISTIC_ECDSA 1
@@ -567,7 +571,7 @@
  * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
  */
 
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 
 #if defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_ECC_KEY_PAIR) || \
     defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_ECC_PUBLIC_KEY)
@@ -663,6 +667,6 @@
 #endif /* defined(MBEDTLS_PSA_ACCEL_ALG_ECDSA) ||
         * defined(MBEDTLS_PSA_ACCEL_ALG_DETERMINISTIC_ECDSA) */
 
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* MBEDTLS_PSA_CRYPTO_C */
diff --git a/library/psa_crypto_ecp.h b/library/psa_crypto_ecp.h
index 0c2b928..d1c765a 100644
--- a/library/psa_crypto_ecp.h
+++ b/library/psa_crypto_ecp.h
@@ -222,7 +222,7 @@
  * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
  */
 
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 
 psa_status_t mbedtls_transparent_test_driver_ecp_import_key(
     const psa_key_attributes_t *attributes,
@@ -251,6 +251,6 @@
     psa_algorithm_t alg, const uint8_t *hash, size_t hash_length,
     const uint8_t *signature, size_t signature_length );
 
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* PSA_CRYPTO_ECP_H */
diff --git a/library/psa_crypto_hash.c b/library/psa_crypto_hash.c
index 6ef6b07..b9f2757 100644
--- a/library/psa_crypto_hash.c
+++ b/library/psa_crypto_hash.c
@@ -32,39 +32,57 @@
 /* Use builtin defines specific to this compilation unit, since the test driver
  * relies on the software driver. */
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_MD2) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_MD2) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&     \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&  \
+      defined(MBEDTLS_PSA_ACCEL_ALG_MD2) ) )
 #define BUILTIN_ALG_MD2         1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_MD4) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_MD4) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&     \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&  \
+      defined(MBEDTLS_PSA_ACCEL_ALG_MD4) ) )
 #define BUILTIN_ALG_MD4         1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_MD5) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_MD5) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&     \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&  \
+      defined(MBEDTLS_PSA_ACCEL_ALG_MD5) ) )
 #define BUILTIN_ALG_MD5         1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_RIPEMD160) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_RIPEMD160) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&           \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&        \
+      defined(MBEDTLS_PSA_ACCEL_ALG_RIPEMD160) ) )
 #define BUILTIN_ALG_RIPEMD160   1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_SHA_1) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_SHA_1) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&       \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&    \
+      defined(MBEDTLS_PSA_ACCEL_ALG_SHA_1) ) )
 #define BUILTIN_ALG_SHA_1       1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_SHA_224) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_SHA_224) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&         \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&      \
+      defined(MBEDTLS_PSA_ACCEL_ALG_SHA_224) ) )
 #define BUILTIN_ALG_SHA_224     1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_SHA_256) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_SHA_256) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&         \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&      \
+      defined(MBEDTLS_PSA_ACCEL_ALG_SHA_256) ) )
 #define BUILTIN_ALG_SHA_256     1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_SHA_384) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_SHA_384) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&         \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&      \
+      defined(MBEDTLS_PSA_ACCEL_ALG_SHA_384) ) )
 #define BUILTIN_ALG_SHA_384     1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_SHA_512) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_SHA_512) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) &&         \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&      \
+      defined(MBEDTLS_PSA_ACCEL_ALG_SHA_512) ) )
 #define BUILTIN_ALG_SHA_512     1
 #endif
 
@@ -123,7 +141,8 @@
 
 /* Implement the PSA driver hash interface on top of mbed TLS if either the
  * software driver or the test driver requires it. */
-#if defined(MBEDTLS_PSA_BUILTIN_HASH) || defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(MBEDTLS_PSA_BUILTIN_HASH) || \
+    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG) )
 static psa_status_t hash_abort(
     mbedtls_psa_hash_operation_t *operation )
 {
@@ -525,7 +544,8 @@
         return( status );
 
 }
-#endif /* MBEDTLS_PSA_BUILTIN_HASH || PSA_CRYPTO_DRIVER_TEST */
+#endif /* MBEDTLS_PSA_BUILTIN_HASH ||
+          ( PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG ) */
 
 #if defined(MBEDTLS_PSA_BUILTIN_HASH)
 psa_status_t mbedtls_psa_hash_compute(
@@ -581,7 +601,7 @@
  /*
   * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
   */
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 
 static int is_hash_accelerated( psa_algorithm_t alg )
 {
diff --git a/library/psa_crypto_hash.h b/library/psa_crypto_hash.h
index e21905c..7afea4d 100644
--- a/library/psa_crypto_hash.h
+++ b/library/psa_crypto_hash.h
@@ -235,7 +235,7 @@
  * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
  */
 
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 
 psa_status_t mbedtls_transparent_test_driver_hash_compute(
     psa_algorithm_t alg,
@@ -267,6 +267,6 @@
 psa_status_t mbedtls_transparent_test_driver_hash_abort(
     mbedtls_psa_hash_operation_t *operation );
 
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* PSA_CRYPTO_HASH_H */
diff --git a/library/psa_crypto_mac.c b/library/psa_crypto_mac.c
index cf20a9b..d59178e 100644
--- a/library/psa_crypto_mac.c
+++ b/library/psa_crypto_mac.c
@@ -33,11 +33,15 @@
 /* Use builtin defines specific to this compilation unit, since the test driver
  * relies on the software driver. */
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_CMAC) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_CMAC) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) && \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) && \
+      defined(MBEDTLS_PSA_ACCEL_ALG_CMAC) ) )
 #define BUILTIN_ALG_CMAC        1
 #endif
 #if( defined(MBEDTLS_PSA_BUILTIN_ALG_HMAC) || \
-    ( defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_ACCEL_ALG_HMAC) ) )
+    ( defined(PSA_CRYPTO_DRIVER_TEST) && \
+      defined(MBEDTLS_PSA_CRYPTO_CONFIG) && \
+      defined(MBEDTLS_PSA_ACCEL_ALG_HMAC) ) )
 #define BUILTIN_ALG_HMAC        1
 #endif
 
@@ -560,7 +564,7 @@
  /*
   * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
   */
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 
 static int is_mac_accelerated( psa_algorithm_t alg )
 {
@@ -667,6 +671,6 @@
     return( mac_abort( operation ) );
 }
 
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* MBEDTLS_PSA_CRYPTO_C */
diff --git a/library/psa_crypto_mac.h b/library/psa_crypto_mac.h
index ba32954..80a644b 100644
--- a/library/psa_crypto_mac.h
+++ b/library/psa_crypto_mac.h
@@ -277,7 +277,7 @@
  * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
  */
 
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 
 psa_status_t mbedtls_transparent_test_driver_mac_compute(
     const psa_key_attributes_t *attributes,
@@ -323,6 +323,6 @@
 psa_status_t mbedtls_transparent_test_driver_mac_abort(
     mbedtls_psa_mac_operation_t *operation );
 
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* PSA_CRYPTO_MAC_H */
diff --git a/library/psa_crypto_rsa.c b/library/psa_crypto_rsa.c
index 3b71913..705cb41 100644
--- a/library/psa_crypto_rsa.c
+++ b/library/psa_crypto_rsa.c
@@ -43,18 +43,21 @@
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_RSA_KEY_PAIR) ||  \
       ( defined(PSA_CRYPTO_DRIVER_TEST) &&                   \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&                \
         defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_RSA_KEY_PAIR) ) )
 #define BUILTIN_KEY_TYPE_RSA_KEY_PAIR    1
 #endif
 
-#if ( defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_RSA_PUBLIC_KEY) ||  \
-      ( defined(PSA_CRYPTO_DRIVER_TEST) &&                   \
+#if ( defined(MBEDTLS_PSA_BUILTIN_KEY_TYPE_RSA_PUBLIC_KEY) || \
+      ( defined(PSA_CRYPTO_DRIVER_TEST) &&                    \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&                 \
         defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_RSA_PUBLIC_KEY) ) )
 #define BUILTIN_KEY_TYPE_RSA_PUBLIC_KEY  1
 #endif
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_ALG_RSA_PKCS1V15_SIGN) ||  \
       ( defined(PSA_CRYPTO_DRIVER_TEST) &&                   \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&                \
         defined(MBEDTLS_PSA_ACCEL_ALG_RSA_PKCS1V15_SIGN) &&  \
         defined(MBEDTLS_RSA_C) && defined(MBEDTLS_PKCS1_V15) ) )
 #define BUILTIN_ALG_RSA_PKCS1V15_SIGN  1
@@ -62,6 +65,7 @@
 
 #if ( defined(MBEDTLS_PSA_BUILTIN_ALG_RSA_PSS) ||  \
       ( defined(PSA_CRYPTO_DRIVER_TEST) &&         \
+        defined(MBEDTLS_PSA_CRYPTO_CONFIG) &&      \
         defined(MBEDTLS_PSA_ACCEL_ALG_RSA_PSS) &&  \
         defined(MBEDTLS_RSA_C) && defined(MBEDTLS_PKCS1_V21) ) )
 #define BUILTIN_ALG_RSA_PSS 1
@@ -624,7 +628,7 @@
  * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
  */
 
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 
 #if defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_RSA_KEY_PAIR) || \
     defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_RSA_PUBLIC_KEY)
@@ -719,6 +723,6 @@
 #endif /* defined(MBEDTLS_PSA_ACCEL_ALG_RSA_PKCS1V15_SIGN) ||
         * defined(MBEDTLS_PSA_ACCEL_ALG_RSA_PSS) */
 
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* MBEDTLS_PSA_CRYPTO_C */
diff --git a/library/psa_crypto_rsa.h b/library/psa_crypto_rsa.h
index 41a90f7..8817462 100644
--- a/library/psa_crypto_rsa.h
+++ b/library/psa_crypto_rsa.h
@@ -216,7 +216,7 @@
  * BEYOND THIS POINT, TEST DRIVER ENTRY POINTS ONLY.
  */
 
-#if defined(PSA_CRYPTO_DRIVER_TEST)
+#if defined(PSA_CRYPTO_DRIVER_TEST) && defined(MBEDTLS_PSA_CRYPTO_CONFIG)
 
 psa_status_t mbedtls_transparent_test_driver_rsa_import_key(
     const psa_key_attributes_t *attributes,
@@ -245,6 +245,6 @@
     psa_algorithm_t alg, const uint8_t *hash, size_t hash_length,
     const uint8_t *signature, size_t signature_length );
 
-#endif /* PSA_CRYPTO_DRIVER_TEST */
+#endif /* PSA_CRYPTO_DRIVER_TEST && MBEDTLS_PSA_CRYPTO_CONFIG */
 
 #endif /* PSA_CRYPTO_RSA_H */