fvp: Introduce mixed compilation mode 32bits / 64bits

This patch introduce compilation mode 32bits / 64 bits independently
for every parts:
- COMPILE_NS_USER:   Non-Secure User
- COMPILE_NS_KERNEL: Non-Secure Kernel
- COMPILE_S_USER:    Secure User
- COMPILE_S_KERNEL:  Secure Kernel

This is used on FVP, the non-secure part being bits, but the secure
part can be specified as 32 or 64 bits (64bits by default).

Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
Tested-by: Pascal Brand <pascal.brand@linaro.org> (QEMU)
Tested-by: Pascal Brand <pascal.brand@linaro.org> (FVP)
Signed-off-by: Pascal Brand <pascal.brand@st.com>
diff --git a/fvp.mk b/fvp.mk
index 6a111ef..08bece4 100644
--- a/fvp.mk
+++ b/fvp.mk
@@ -1,25 +1,25 @@
 DEBUG ?= 1
 
+################################################################################
+# Following variables defines how the NS_USER (Non Secure User - Client
+# Application), NS_KERNEL (Non Secure Kernel), S_KERNEL (Secure Kernel) and
+# S_USER (Secure User - TA) are compiled
+################################################################################
+
+COMPILE_NS_USER   := 64
+COMPILE_NS_KERNEL := 64
+COMPILE_S_USER    ?= 64
+COMPILE_S_KERNEL  ?= 64
+
 -include common.mk
 
-################################################################################
-# Mandatory definition to use common.mk
-################################################################################
-CROSS_COMPILE_NS_USER	?= "$(CCACHE)$(AARCH64_CROSS_COMPILE)"
-CROSS_COMPILE_NS_KERNEL	?= "$(CCACHE)$(AARCH64_CROSS_COMPILE)"
-CROSS_COMPILE_S_USER	?= "$(CCACHE)$(AARCH64_CROSS_COMPILE)"
-CROSS_COMPILE_S_KERNEL	?= "$(CCACHE)$(AARCH64_CROSS_COMPILE)"
-OPTEE_OS_BIN		?= $(OPTEE_OS_PATH)/out/arm-plat-vexpress/core/tee.bin
-OPTEE_OS_TA_DEV_KIT_DIR	?= $(OPTEE_OS_PATH)/out/arm-plat-vexpress/export-ta_arm64
 
 ################################################################################
 # Paths to git projects and various binaries
 ################################################################################
 ARM_TF_PATH		?= $(ROOT)/arm-trusted-firmware
-
 EDK2_PATH		?= $(ROOT)/edk2
 EDK2_BIN		?= $(EDK2_PATH)/Build/ArmVExpress-FVP-AArch64/RELEASE_GCC49/FV/FVP_AARCH64_EFI.fd
-
 FOUNDATION_PATH		?= $(ROOT)/Foundation_Platformpkg
 ifeq ($(wildcard $(FOUNDATION_PATH)),)
 $(error $(FOUNDATION_PATH) does not exist)
@@ -112,7 +112,7 @@
 ################################################################################
 # OP-TEE
 ################################################################################
-OPTEE_OS_COMMON_FLAGS += PLATFORM=vexpress-fvp CFG_ARM64_core=y
+OPTEE_OS_COMMON_FLAGS += PLATFORM=vexpress-fvp 
 optee-os: optee-os-common
 
 OPTEE_OS_CLEAN_COMMON_FLAGS += PLATFORM=vexpress-fvp