[CORE] vmm_guest_aspace: Menuconfig option to increase guest region debug.

This patch add an option in the menuconfig to increase the guest region
debugging (CONFIG_GUEST_REGION_DEBUG).
For now, it adds information when two regions are overlapping, with there name,
start address, and end address.
[MAKEFILE] Improve the device tree dependency generation.

This patch allow a generation of device tree file dependency information, so
that the device tree binary is also rebuilt everytime an included file is
modified.
[CORE] Correcting the 'vmm_printf' macro.

The 'vmm_printf' macro was defined with an ending semi-column. It has been
removed, and a resulting missing semi-column was added to the printing in the
main C function.
[DRIVERS] Generic MMIO clocksource support added.

This patch adds the generic MMIO clocksource support, required by the i.MX
timer initialization.
[ARM] Board information printing implemented.

The board information printing is done by checking the generic board name, and
retrieving its own specific information printing function, and calling it, if
any.
[ARM] Sabrelite menu option and specific initialization placeholder added.

The Sabrelite can now be selected in the menuconfig, and the specific board
initialization source skeleton is done.
[DRIVERS] Allow using i.MX6 UART without prior bootloader initialization.

This patch configures and enables the UART FIFO, ignore the RTS, and set the
UART mode to 8N1.
[ARM] Device tree files split between i.MX6-specific and Sabrelite-specific.

Sabrelite guests now refers to a common Sabrelite device tree include source
file.
[ARM] Add the Anatop definition in the i.MX6 device tree file.

The Anatop definition has been added, as it is required by the i.MX6 clock
driver.
[ARM] i.MX6Q clock management added.

This huge patch add the clock management for the i.MX6Q.
This can be largely improved and split as drivers.
This adds simplified GPC, timers, PM, and all clock management functions.
[ARM] i.MX6Q GPT device tree definition compatibility changed.

The i.MX6Q GPT driver is specific to the i.MX6Q. The device tree GPT definition
compatibility is set to with "fsl,imx6q-gpt", instead of "freescale,gpt-timer".
[ARM] GPC definition added in i.MX6Q device tree.

The GPC definition is required by the i.MX6Q GPC driver, which is used by the
i.MX6Q clock management, and should contains at least its register base address
and size.
[ARM] Correcting the i.MX6Q Sabrelite board compatiblity name.

The board compatility expected by the device tree is set to "fsl,imx6q",
instead of "arm,imx6q".
[ARM] i.MX board information printing.

The SOC name and revision will be displayed when asking for the board
information through the Xvisor command line.
[ARM] i.MX6 clocking code calls to Xvisor API corrected.

The 'vmm_sprintf' function does not return an error code, but the number of
buffer written bytes.
The 'vmm_printf', called through 'pr_err', does not support the '%ld', as 'l'
is not a length modifier, but a conversion specifier.
[DRIVER] i.MX6 serial warning corrected.

A warning on a bitwise OR operation has been corrected.
[ARM] i.MX6 CCM device added in the device tree, required for LP clocking.

As the CCM was not declared in the device tree, the associated driver, in
arch/arm/cpu/board/common/imx/clk-imx6q.c was not initialized. Thus, the Low
Power Manager clocking did not set the low power wait mode as clocked, state in
which a WFI set the processor to. In consequence, when the first proc_do_idle
was called, the JTAG probe lost its control over the processor.
The scheduling was functioning though, as the EPIT timer was running.