diff --git a/spm/cactus/cactus_ffa_tests.c b/spm/cactus/cactus_ffa_tests.c
index 2ef08e1..07aaaca 100644
--- a/spm/cactus/cactus_ffa_tests.c
+++ b/spm/cactus/cactus_ffa_tests.c
@@ -259,7 +259,7 @@
 		return false;
 	}
 
-	NOTICE("Memory Retrieved!\n");
+	VERBOSE("Memory Retrieved!\n");
 
 	return true;
 }
@@ -275,7 +275,7 @@
 		return false;
 	}
 
-	NOTICE("Memory Relinquished!\n");
+	VERBOSE("Memory Relinquished!\n");
 	return true;
 }
 
@@ -298,7 +298,7 @@
 
 	composite = ffa_memory_region_get_composite(m, 0);
 
-	NOTICE("Address: %p; page_count: %x %x\n",
+	VERBOSE("Address: %p; page_count: %x %x\n",
 		composite->constituents[0].address,
 		composite->constituents[0].page_count, PAGE_SIZE);
 
diff --git a/spm/cactus/cactus_main.c b/spm/cactus/cactus_main.c
index 58b7dad..531ce4b 100644
--- a/spm/cactus/cactus_main.c
+++ b/spm/cactus/cactus_main.c
@@ -99,8 +99,8 @@
 			 * For the sake of testing, add the vm id to the
 			 * received message.
 			 */
-			NOTICE("Replying to Direct MSG test\n");
 			sp_response = ffa_ret.ret3 | vm_id;
+			VERBOSE("Replying with direct message response: %x\n", sp_response);
 			ffa_ret = ffa_msg_send_direct_resp(vm_id,
 							   HYP_ID,
 							   sp_response);
@@ -121,25 +121,25 @@
 
 static void cactus_print_memory_layout(unsigned int vm_id)
 {
-	NOTICE("Secure Partition memory layout:\n");
+	INFO("Secure Partition memory layout:\n");
 
-	NOTICE("  Text region            : %p - %p\n",
+	INFO("  Text region            : %p - %p\n",
 		(void *)CACTUS_TEXT_START, (void *)CACTUS_TEXT_END);
 
-	NOTICE("  Read-only data region  : %p - %p\n",
+	INFO("  Read-only data region  : %p - %p\n",
 		(void *)CACTUS_RODATA_START, (void *)CACTUS_RODATA_END);
 
-	NOTICE("  Data region            : %p - %p\n",
+	INFO("  Data region            : %p - %p\n",
 		(void *)CACTUS_DATA_START, (void *)CACTUS_DATA_END);
 
-	NOTICE("  BSS region             : %p - %p\n",
+	INFO("  BSS region             : %p - %p\n",
 		(void *)CACTUS_BSS_START, (void *)CACTUS_BSS_END);
 
-	NOTICE("  RX                     : %p - %p\n",
+	INFO("  RX                     : %p - %p\n",
 		(void *)get_sp_rx_start(vm_id),
 		(void *)get_sp_rx_end(vm_id));
 
-	NOTICE("  TX                     : %p - %p\n",
+	INFO("  TX                     : %p - %p\n",
 		(void *)get_sp_tx_start(vm_id),
 		(void *)get_sp_tx_end(vm_id));
 }
@@ -221,11 +221,11 @@
 		smc_ret_values ret;
 		set_putc_impl(HVC_CALL_AS_STDOUT);
 
-		NOTICE("Booting Secondary Cactus Secure Partition (ID: %u)\n%s\n%s\n",
+		NOTICE("Booting Secondary Cactus Secure Partition (ID: %x)\n%s\n%s\n",
 			ffa_id, build_message, version_string);
 
 		if (ffa_id == (SPM_VM_ID_FIRST + 2)) {
-			NOTICE("Mapping RXTX Region\n");
+			VERBOSE("Mapping RXTX Region\n");
 			CONFIGURE_AND_MAP_MAILBOX(mb, PAGE_SIZE, ret);
 			if (ret.ret0 != FFA_SUCCESS_SMC32) {
 				ERROR(
@@ -236,7 +236,7 @@
 		}
 	}
 
-	NOTICE("FFA id: %u\n", ffa_id);
+	INFO("FF-A id: %x\n", ffa_id);
 	cactus_print_memory_layout(ffa_id);
 
 	/* Invoking Tests */
