libsp: Introduce FF-A support.

libsp is intended to provide a common set of features for SEL-0 secure
partitions. This includes the FF-A ABI and higher level functions. In
this commit the minimal set of FF-A calls is implemented to provide
compliance.

Signed-off-by: Imre Kis <imre.kis@arm.com>
Change-Id: I5420a11a7dc75b228d0d0d58059dea86e5f927ee
diff --git a/components/messaging/ffa/libsp/component.cmake b/components/messaging/ffa/libsp/component.cmake
new file mode 100644
index 0000000..c20f899
--- /dev/null
+++ b/components/messaging/ffa/libsp/component.cmake
@@ -0,0 +1,32 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2020, Arm Limited and Contributors. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+#-------------------------------------------------------------------------------
+if (NOT DEFINED TGT)
+	message(FATAL_ERROR "mandatory parameter TGT is not defined.")
+endif()
+
+target_sources(${TGT} PRIVATE
+	"${CMAKE_CURRENT_LIST_DIR}/aarch64/ffa_syscalls_a64.S"
+	"${CMAKE_CURRENT_LIST_DIR}/ffa.c"
+	"${CMAKE_CURRENT_LIST_DIR}/ffa_interrupt_handler.c"
+	)
+
+set_property(TARGET ${TGT} PROPERTY PUBLIC_HEADER
+	${CMAKE_CURRENT_LIST_DIR}/include/ffa_api_defines.h
+	${CMAKE_CURRENT_LIST_DIR}/include/ffa_api_types.h
+	${CMAKE_CURRENT_LIST_DIR}/include/ffa_api.h
+	${CMAKE_CURRENT_LIST_DIR}/include/ffa_internal_api.h
+	${CMAKE_CURRENT_LIST_DIR}/include/sp_api_defines.h
+	${CMAKE_CURRENT_LIST_DIR}/include/sp_api_types.h
+	${CMAKE_CURRENT_LIST_DIR}/include/sp_api.h
+	)
+
+
+target_include_directories(${TGT}
+	 PUBLIC
+		"$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include>"
+		"$<INSTALL_INTERFACE:include>"
+	)