feat(notifications): info get framework notifications

Include framework in the processing of FFA_NOTIFICATION_INFO_GET:
- Hypervisor only cares about notifications targeting VMs.
- SPMC retrieves information of notifications targeting SPs and VMs.

Change-Id: I6ea4a5cf1c14437e01666426c293e20c2f028110
Signed-off-by: J-Alves <joao.alves@arm.com>
diff --git a/src/vm_test.cc b/src/vm_test.cc
index cffe5e6..e7934f8 100644
--- a/src/vm_test.cc
+++ b/src/vm_test.cc
@@ -688,4 +688,29 @@
 	vm_unlock(&current_vm_locked);
 }
 
+TEST_F(vm, vm_notifications_info_get_from_framework)
+{
+	struct vm_locked vm_locked = vm_lock(vm_find_index(0));
+	uint16_t ids[FFA_NOTIFICATIONS_INFO_GET_MAX_IDS] = {0};
+	uint32_t ids_count = 0;
+	uint32_t lists_sizes[FFA_NOTIFICATIONS_INFO_GET_MAX_IDS] = {0};
+	uint32_t lists_count = 0;
+
+	vm_notifications_framework_set_pending(vm_locked, 0x1U);
+
+	/* Get notifications info for the given notifications. */
+	vm_notifications_info_get(vm_locked, ids, &ids_count, lists_sizes,
+				  &lists_count,
+				  FFA_NOTIFICATIONS_INFO_GET_MAX_IDS);
+
+	EXPECT_EQ(ids[0], vm_locked.vm->id);
+	EXPECT_EQ(ids_count, 1);
+	EXPECT_EQ(lists_sizes[0], 0);
+	EXPECT_EQ(lists_count, 1);
+
+	EXPECT_EQ(vm_notifications_framework_get_pending(vm_locked), 0x1U);
+
+	vm_unlock(&vm_locked);
+}
+
 } /* namespace */