Add support for arm64

Depends on corresponding API change in user space.

* Adds support for arm64
* Many small fixes to make generic code compile for arm64
* Moves teesmc*.h from armv7 specific to include/arm_common
Add fdts for FVP Foundation model

Adds fdts for FVP Foundation model which reserves the shared
memory used by normal and secure world.

These files is a temporary workaround until the driver has switched
to use CMA to allocate shared memory.
Allow parallel entries to secure world

* Waits for a thread to exit secure world until trying again if
  secure world return "busy"
* Serializes communication with tee-supplicant in case multiple
  threads are trying to communicate with tee-supplicant concurently
* Adds service for secure world to wait until awoken by another
  thread, supporting mutex in secure world
* Bugfix tee_shm_pool_free() to use list_for_each_entry_safe instead
  of list_for_each_entry
fix building by adding include highmem

Change-Id: I3ebeeebb7c3c4084f8a52f36fd5ba2c8246b7480
Signed-off-by: Cedric Chaumont <cedric.chaumont@st.com>
Merge pull request #5 from cedric-chaumont-st-dev/dev/fix_include_highmem

fix building by adding include highmem
Implemented wait in normal world

- add new rpc command TEE_RPC_WAIT to enable wait in normal world
- in order to release cpu resource while waiting, invoke scheudle_timeout()
  when TEE_RPC_WAIT is received
Adding Travis CI to automatically check builds

This includes
- checkpatch.pl
- arm32 compilation
- arm64 compilation

Signed-off-by: Pascal Brand <pascal.brand@st.com>
workaround for the ioremap_cache(d) problem

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
Reviewed-by: Pascal Brand <pascal.brand@linaro.org>
Tested-by: Pascal Brand <pascal.brand@linaro.org> (STM platform)
Travis: use default arm32 compiler; fetch minimal dependencies

- Install the arm32 compiler provided by the distribution instead
of the Linaro compiler
- Install the minimal set of dependencies required by the Linaro
Aarch64 compiler

This speeds up the build significantly.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Pascal Brand <pascal.brand@linaro.org>
Travis: ignore FILE_PATH_CHANGES and GERRIT_CHANGE_ID in checkpatch

Signed-off-by: Pascal Brand <pascal.brand@st.com>
Reviewed-by: Joakim Bech <joakim.bech@linaro.org>