Add initial pass on a multi-part test driver

Signed-off-by: Steven Cooreman <steven.cooreman@silabs.com>
diff --git a/library/psa_crypto.c b/library/psa_crypto.c
index 04ef28b..6acf498 100644
--- a/library/psa_crypto.c
+++ b/library/psa_crypto.c
@@ -4079,6 +4079,23 @@
                               PSA_KEY_USAGE_ENCRYPT :
                               PSA_KEY_USAGE_DECRYPT );
 
+    status = psa_get_key_from_slot( handle, &slot, usage, alg );
+    if( status != PSA_SUCCESS )
+        goto exit;
+
+    /* Try doing this through a driver before using software fallback */
+    if( cipher_operation == MBEDTLS_ENCRYPT )
+        status = psa_driver_wrapper_cipher_encrypt_setup( operation,
+                                                          slot,
+                                                          alg );
+    else
+        status = psa_driver_wrapper_cipher_decrypt_setup( operation,
+                                                          slot,
+                                                          alg );
+
+    if( status != PSA_ERROR_NOT_SUPPORTED )
+        goto exit;
+
     /* A context must be freshly initialized before it can be set up. */
     if( operation->alg != 0 )
     {