diff --git a/tests/suites/test_suite_pk.function b/tests/suites/test_suite_pk.function
index ad26caa..9112397 100644
--- a/tests/suites/test_suite_pk.function
+++ b/tests/suites/test_suite_pk.function
@@ -2413,27 +2413,10 @@
      * - Verify from the same PK context used for signature.
      * - Verify with the PK context generated using public key.
      * - Verify using the public PSA key directly.
-     *
-     * Note: PSS requires the hash to be specified on sign operation (i.e. not
-     *       null or any), so in case PSA_ALG_ANY_HASH is provided as input, we
-     *       use mbedtls_pk_sign_ext() instead of mbedtls_pk_sign().
      */
-    if ((PSA_ALG_IS_RSA_OAEP(key_alg) || PSA_ALG_IS_RSA_PSS(key_alg)) &&
-        (!is_psa_hash_alg_specified)) {
-        /* Ensure pk_sign() fails without crashing. */
-        TEST_EQUAL(mbedtls_pk_sign(&pk_priv, md_for_test, in_buf, in_buf_len,
-                                   out_buf, sizeof(out_buf), &out_buf_len,
-                                   mbedtls_test_rnd_std_rand, NULL),
-                   MBEDTLS_ERR_RSA_BAD_INPUT_DATA);
-        TEST_EQUAL(mbedtls_pk_sign_ext(MBEDTLS_PK_RSASSA_PSS, &pk_priv, md_for_test,
-                                       in_buf, in_buf_len,
-                                       out_buf, sizeof(out_buf), &out_buf_len,
-                                       mbedtls_test_rnd_std_rand, NULL), 0);
-    } else {
-        TEST_EQUAL(mbedtls_pk_sign(&pk_priv, md_for_test, in_buf, in_buf_len,
-                                   out_buf, sizeof(out_buf), &out_buf_len,
-                                   mbedtls_test_rnd_std_rand, NULL), 0);
-    }
+    TEST_EQUAL(mbedtls_pk_sign(&pk_priv, md_for_test, in_buf, in_buf_len,
+                               out_buf, sizeof(out_buf), &out_buf_len,
+                               mbedtls_test_rnd_std_rand, NULL), 0);
 
     TEST_EQUAL(mbedtls_pk_verify(&pk_priv, md_for_test, in_buf, in_buf_len,
                                  out_buf, out_buf_len), 0);
