diff --git a/tests/include/test/helpers.h b/tests/include/test/helpers.h
index 73459d9..f2fb62d 100644
--- a/tests/include/test/helpers.h
+++ b/tests/include/test/helpers.h
@@ -37,6 +37,7 @@
 
 #if defined(MBEDTLS_THREADING_C) && defined(MBEDTLS_THREADING_PTHREAD) && \
     defined(MBEDTLS_TEST_HOOKS)
+#include "mbedtls/threading.h"
 #define MBEDTLS_TEST_MUTEX_USAGE
 #endif
 
@@ -230,8 +231,21 @@
  */
 void mbedtls_test_info_reset(void);
 
+#ifdef MBEDTLS_TEST_MUTEX_USAGE
 /**
- * \brief           Record the current test case as a failure if two integers
+ * \brief       Get the test info data mutex.
+ *
+ * \note        This is designed only to be used by threading_helpers to avoid a
+ *              deadlock, not for general access to this mutex.
+ *
+ * \return      The test info data mutex.
+ */
+mbedtls_threading_mutex_t *mbedtls_test_get_info_mutex(void);
+
+#endif /* MBEDTLS_TEST_MUTEX_USAGE */
+
+/**
+ * \brief Record the current test case as a failure if two integers
  *                  have a different value.
  *
  *                  This function is usually called via the macro
diff --git a/tests/src/helpers.c b/tests/src/helpers.c
index 724fb59..d0c75b0 100644
--- a/tests/src/helpers.c
+++ b/tests/src/helpers.c
@@ -288,7 +288,15 @@
 #endif /* MBEDTLS_THREADING_C */
 }
 
-#endif
+#endif /* MBEDTLS_BIGNUM_C */
+
+#ifdef MBEDTLS_TEST_MUTEX_USAGE
+mbedtls_threading_mutex_t *mbedtls_test_get_info_mutex(void)
+{
+    return &mbedtls_test_info_mutex;
+}
+
+#endif /* MBEDTLS_TEST_MUTEX_USAGE */
 
 /*----------------------------------------------------------------------------*/
 /* Helper Functions */
diff --git a/tests/src/threading_helpers.c b/tests/src/threading_helpers.c
index 0894700..165e350 100644
--- a/tests/src/threading_helpers.c
+++ b/tests/src/threading_helpers.c
@@ -117,8 +117,6 @@
      * mbedtls_test_mutex_usage_check() will mark it as failed. */
 }
 
-extern mbedtls_threading_mutex_t mbedtls_test_info_mutex;
-
 static int mbedtls_test_mutex_can_test(mbedtls_threading_mutex_t *mutex)
 {
     /* If we attempt to run tests on this mutex then we are going to run into a
@@ -127,7 +125,7 @@
      * reporting that failure, as we already hold the mutex at that point.
      * 2. Given the 'global' position of the initialization and free of this
      * mutex, it will be shown as leaked on the first test run. */
-    if (mutex == &mbedtls_test_info_mutex) {
+    if (mutex == mbedtls_test_get_info_mutex()) {
         return 0;
     }
 
