Using SPCI memory sharing functions rather than MSG_SEND.
Bug: 132420445
Change-Id: I1d29ebfdf179c7a7c07223f8c027c22c055d333a
diff --git a/src/arch/aarch64/hypervisor/handler.c b/src/arch/aarch64/hypervisor/handler.c
index 65aef52..b730cf3 100644
--- a/src/arch/aarch64/hypervisor/handler.c
+++ b/src/arch/aarch64/hypervisor/handler.c
@@ -366,6 +366,24 @@
*args = api_spci_run(spci_vm_id(*args), spci_vcpu_index(*args),
current(), next);
return true;
+ case SPCI_MEM_DONATE_32:
+ *args = api_spci_mem_send(SPCI_MSG_SEND_LEGACY_MEMORY_DONATE,
+ ipa_init(args->arg1), args->arg2,
+ args->arg3, args->arg4, args->arg5,
+ current(), next);
+ return true;
+ case SPCI_MEM_LEND_32:
+ *args = api_spci_mem_send(SPCI_MSG_SEND_LEGACY_MEMORY_LEND,
+ ipa_init(args->arg1), args->arg2,
+ args->arg3, args->arg4, args->arg5,
+ current(), next);
+ return true;
+ case SPCI_MEM_SHARE_32:
+ *args = api_spci_mem_send(SPCI_MSG_SEND_LEGACY_MEMORY_SHARE,
+ ipa_init(args->arg1), args->arg2,
+ args->arg3, args->arg4, args->arg5,
+ current(), next);
+ return true;
}
return false;