diff --git a/include/common/test_helpers.h b/include/common/test_helpers.h
index eaea72c..8220244 100644
--- a/include/common/test_helpers.h
+++ b/include/common/test_helpers.h
@@ -352,4 +352,9 @@
 test_result_t spm_run_multi_core_test(uintptr_t cpu_on_handler,
 				      event_t *cpu_booted);
 
+/**
+ * Enable/Disable managed exit interrupt for the provided SP.
+ */
+bool spm_set_managed_exit_int(ffa_id_t sp_id, bool enable);
+
 #endif /* __TEST_HELPERS_H__ */
diff --git a/tftf/tests/common/test_helpers.c b/tftf/tests/common/test_helpers.c
index 80497bd..73d59bd 100644
--- a/tftf/tests/common/test_helpers.c
+++ b/tftf/tests/common/test_helpers.c
@@ -5,6 +5,7 @@
  */
 
 #include <arch_helpers.h>
+#include <cactus_test_cmds.h>
 #include <plat_topology.h>
 #include <platform.h>
 #include <power_management.h>
@@ -219,3 +220,19 @@
 
 	return TEST_RESULT_SUCCESS;
 }
+
+bool spm_set_managed_exit_int(ffa_id_t sp_id, bool enable)
+{
+	smc_ret_values ret;
+
+	ret = cactus_interrupt_cmd(HYP_ID, sp_id, MANAGED_EXIT_INTERRUPT_ID,
+				   enable, INTERRUPT_TYPE_FIQ);
+
+	if (!is_ffa_direct_response(ret) ||
+	    cactus_get_response(ret) != CACTUS_SUCCESS) {
+		ERROR("Failed to enable Managed exit interrupt\n");
+		return false;
+	}
+
+	return true;
+}
diff --git a/tftf/tests/runtime_services/secure_service/test_ffa_interrupts.c b/tftf/tests/runtime_services/secure_service/test_ffa_interrupts.c
index 7c70de2..c92d683 100644
--- a/tftf/tests/runtime_services/secure_service/test_ffa_interrupts.c
+++ b/tftf/tests/runtime_services/secure_service/test_ffa_interrupts.c
@@ -69,15 +69,7 @@
 	CHECK_SPMC_TESTING_SETUP(1, 0, expected_sp_uuids);
 
 	/* Enable managed exit interrupt as FIQ in the secure side. */
-	ret_values = cactus_interrupt_cmd(SENDER, RECEIVER, MANAGED_EXIT_INTERRUPT_ID,
-					  true, INTERRUPT_TYPE_FIQ);
-
-	if (!is_ffa_direct_response(ret_values)) {
-		return TEST_RESULT_FAIL;
-	}
-
-	if (cactus_get_response(ret_values) != CACTUS_SUCCESS) {
-		ERROR("Failed to enable Managed exit interrupt\n");
+	if (!spm_set_managed_exit_int(RECEIVER, true)) {
 		return TEST_RESULT_FAIL;
 	}
 
@@ -134,15 +126,7 @@
 	}
 
 	/* Disable Managed exit interrupt */
-	ret_values = cactus_interrupt_cmd(SENDER, RECEIVER, MANAGED_EXIT_INTERRUPT_ID,
-					  false, 0);
-
-	if (!is_ffa_direct_response(ret_values)) {
-		return TEST_RESULT_FAIL;
-	}
-
-	if (cactus_get_response(ret_values) != CACTUS_SUCCESS) {
-		ERROR("Failed to disable Managed exit interrupt\n");
+	if (!spm_set_managed_exit_int(RECEIVER, false)) {
 		return TEST_RESULT_FAIL;
 	}
 
