Adding Travis CI to automatically check builds

Current missing are:
- some compilation options that leads to error. They are not corrected
  right now as some of them may by corrected by PR#55
- checkpatch is not downloaded / run because of
  - licenses?
  - CamelCase in GP API that may lead to false alarms

Signed-off-by: Pascal Brand <pascal.brand@st.com>
Minor updates and cleanup
Fix problem with finding static TA with DEBUG=0
Fix strict-aliasing for DEBUG=0
Reenable warnings for all non-3rd party code

* Reenables warnings for all non-3rd party code
* Renames dprintf macro to dprintf_level
Remove unused tee_sleep_services.*
teesmc: sync with ARM Trusted Firmware
teesmc: cleanup teesmc.h
Remove unused functions
Remove unused global variable
tee_mmu_is_mapped cleanup
Clean tz_proc.S

* Removes some unused functions
* Converts a few mcr/mrc instructions to use macros from
  arm32_macros.S instead.
gic: bugfix probe_max_it
fvp: enable uart1 fiq

Configures UART1/GIC to generate a FIQ when there's input on
UART1.
Added script for setting up FVP and OP-TEE

The script will clone and download all needed Git's to run OP-TEE using
FVP (Foundation Models). The first time a user runs the script it will
acquire the needed software from various sources. This is followed by
configuring and building all needed components. In every sub-step there
will be a script created that could be used when building a component
later on.

There are some inter-dependencies between the software components. This
means that the developer using this setup must either now about the
inter-dependencies or if not sure, the developer could build everything
using two general helper scripts in the following order:
 1) build_secure.sh
 2) build_normal.sh

When a user needs to add new files to the root filesystem, he must
update the file "gen_rootfs/filelist-tee.txt".

Some developers might also have access to a Git containing tests
designed for testing OP-TEE functionality. In such case, the developer
can update the script so it matches the users login name (Linaro
account). If such access is granted there will also be tests built and
added by default when running this script.

Reviewed-by: Pascal Brand pascal.brand@linaro.org
Reviewed-by: Jens Wiklander jens.wiklander@linaro.org
"Dirty tests" renamed in "self tests"

Reviewed-by: Jens Wiklander jens.wiklander@linaro.org
Reviewed-by: Joakim Bech joakim.bech@linaro.org
Signed-off-by: Pascal Brand <pascal.brand@st.com>
Drivers gic and uart are optional

Platforms stm do not use gic and uart drivers, whereas vexpress (fvp / qemu)
does. So the conf.mk of the latter case defines the following:
    WITH_UART_DRV := y
    WITH_GIC_DRV := y

Reviewed-by: Joakim Bech joakim.bech@linaro.org
Reviewed-by: Jens Wiklander jens.wiklander@linaro.org
Signed-off-by: Pascal Brand <pascal.brand@st.com>
CFG_TEE_CORE_LOG_LEVEL=0 DEBUG=0 is now up in Travis

Reviewed-by: Jens Wiklander jens.wiklander@linaro.org
Signed-off-by: Pascal Brand <pascal.brand@st.com>
Remove SW version of the RNG which is not secure enough

Reviewed-by: Jens Wiklander jens.wiklander@linaro.org
Signed-off-by: Pascal Brand <pascal.brand@st.com>
Time initialization performed in init_teecore()

Time initialization was performed in specific platform initialization
main_init_helper() function. It is now performed in the generic arm32
initialization init_teecore() function.

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