fix: remove redundant CPU_ON event subscription for VMs

In the next patch, we implement support for bootstrapping all pinned
execution context of SPs on secondary CPUs upon receiving CPU_ON power
management event. This makes the support for CPU_ON subscription,
through partition manifest, redundant.

Also, SPMC falls back to entrypoint used for primary execution context
if an MP SP fails to register entrypoint for secondary execution
contexts using FFA_SECONDARY_EP_REGISTER interface.

Change-Id: I15bd8ab20469b4bfb7159f2ad60af55e57355dd8
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
diff --git a/src/manifest_test.cc b/src/manifest_test.cc
index 8bcef30..4a78f59 100644
--- a/src/manifest_test.cc
+++ b/src/manifest_test.cc
@@ -1228,7 +1228,7 @@
 	struct manifest_vm *vm;
 	struct_manifest *m;
 
-	/* S-EL1 partition power management field can set bit 0. */
+	/* S-EL1 partition power management field can only set bit 0. */
 	/* clang-format off */
 	std::vector<char>  dtb = ManifestDtBuilder()
 		.Compatible({ "arm,ffa-manifest-1.0" })
@@ -1239,50 +1239,12 @@
 		.Property("execution-state", "<0>")
 		.Property("entrypoint-offset", "<0x00002000>")
 		.Property("messaging-method", "<1>")
-		.Property("power-management-messages", "<1>")
-		.Build();
-	/* clang-format on */
-	ASSERT_EQ(ffa_manifest_from_vec(&m, dtb), MANIFEST_SUCCESS);
-	vm = &m->vm[0];
-	ASSERT_EQ(vm->partition.power_management, 1);
-	manifest_dealloc();
-
-	/* S-EL1 partition power management field can set bit 3. */
-	/* clang-format off */
-	dtb = ManifestDtBuilder()
-		.Compatible({ "arm,ffa-manifest-1.0" })
-		.Property("ffa-version", "<0x10001>")
-		.Property("uuid", "<0xb4b5671e 0x4a904fe1 0xb81ffb13 0xdae1dacb>")
-		.Property("execution-ctx-count", "<8>")
-		.Property("exception-level", "<2>")
-		.Property("execution-state", "<0>")
-		.Property("entrypoint-offset", "<0x00002000>")
-		.Property("messaging-method", "<1>")
-		.Property("power-management-messages", "<8>")
-		.Build();
-	/* clang-format on */
-	ASSERT_EQ(ffa_manifest_from_vec(&m, dtb), MANIFEST_SUCCESS);
-	vm = &m->vm[0];
-	ASSERT_EQ(vm->partition.power_management, 8);
-	manifest_dealloc();
-
-	/* S-EL1 partition power management field can only set bits 0 and 3. */
-	/* clang-format off */
-	dtb = ManifestDtBuilder()
-		.Compatible({ "arm,ffa-manifest-1.0" })
-		.Property("ffa-version", "<0x10001>")
-		.Property("uuid", "<0xb4b5671e 0x4a904fe1 0xb81ffb13 0xdae1dacb>")
-		.Property("execution-ctx-count", "<8>")
-		.Property("exception-level", "<2>")
-		.Property("execution-state", "<0>")
-		.Property("entrypoint-offset", "<0x00002000>")
-		.Property("messaging-method", "<1>")
 		.Property("power-management-messages", "<0xf>")
 		.Build();
 	/* clang-format on */
 	ASSERT_EQ(ffa_manifest_from_vec(&m, dtb), MANIFEST_SUCCESS);
 	vm = &m->vm[0];
-	ASSERT_EQ(vm->partition.power_management, 9);
+	ASSERT_EQ(vm->partition.power_management, 1);
 	manifest_dealloc();
 
 	/* S-EL0 partition power management field is forced to 0. */