feat(cactus): validate NPI injection

Cactus SP can now handle the Notification Pending Interrupt:
- Added `npi_handled` array to track the CPUs that have handled the
NPI. The NPI handler will set the index of related to the respective
core.
- Extended and refactored cactus command CACTUS_NOTIFICATION_GET_CMD,
such that the sender can specify that the NPI is to be validated.

Signed-off-by: J-Alves <joao.alves@arm.com>
Change-Id: I2d5728ec4fe2d14fb9ba6f0ba5230ef652467f85
diff --git a/spm/cactus/cactus_interrupt.c b/spm/cactus/cactus_interrupt.c
index 31c6a69..ef3d5cc 100644
--- a/spm/cactus/cactus_interrupt.c
+++ b/spm/cactus/cactus_interrupt.c
@@ -16,6 +16,10 @@
 
 #include <platform_def.h>
 
+#define NOTIFICATION_PENDING_INTERRUPT_INTID 5
+
+extern void notification_pending_interrupt_handler(void);
+
 extern ffa_id_t g_ffa_id;
 
 void cactus_interrupt_handler(void)
@@ -43,6 +47,9 @@
 		spm_interrupt_deactivate(intid);
 
 		break;
+	case NOTIFICATION_PENDING_INTERRUPT_INTID:
+		notification_pending_interrupt_handler();
+		break;
 	default:
 		/*
 		 * Currently the only source of secure interrupt is Trusted