fix(ff-a): dispatch other world functions

Move FF-A related functions from other world module to plat ffa module
with different implementations based upon building the Hypervisor, SPMC,
or standalone image.

Change-Id: I85bedf58ddc074d41bb25ae2dcbcdaa407821562
Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
diff --git a/src/arch/fake/hypervisor/ffa.c b/src/arch/fake/hypervisor/ffa.c
index 08183e8..cacc1b2 100644
--- a/src/arch/fake/hypervisor/ffa.c
+++ b/src/arch/fake/hypervisor/ffa.c
@@ -8,9 +8,57 @@
 
 #include "hf/ffa.h"
 
-#include "hf/vm_ids.h"
+#include "hf/vcpu.h"
 
 ffa_vm_id_t arch_ffa_spmc_id_get(void)
 {
 	return HF_SPMC_VM_ID;
 }
+
+void plat_ffa_log_init(void)
+{
+}
+
+bool plat_ffa_is_direct_request_valid(struct vcpu *current,
+				      ffa_vm_id_t sender_vm_id,
+				      ffa_vm_id_t receiver_vm_id)
+{
+	(void)current;
+	(void)sender_vm_id;
+	(void)receiver_vm_id;
+
+	return true;
+}
+
+bool plat_ffa_is_direct_response_valid(struct vcpu *current,
+				       ffa_vm_id_t sender_vm_id,
+				       ffa_vm_id_t receiver_vm_id)
+{
+	(void)current;
+	(void)sender_vm_id;
+	(void)receiver_vm_id;
+
+	return true;
+}
+
+bool plat_ffa_direct_request_forward(ffa_vm_id_t receiver_vm_id,
+				     struct ffa_value args,
+				     struct ffa_value *ret)
+{
+	(void)receiver_vm_id;
+	(void)args;
+	(void)ret;
+	return false;
+}
+
+ffa_memory_handle_t plat_ffa_memory_handle_make(uint64_t index)
+{
+	return index;
+}
+
+bool plat_ffa_memory_handle_allocated_by_current_world(
+	ffa_memory_handle_t handle)
+{
+	(void)handle;
+	return false;
+}