[DRIVERS] Add the i.MX6 Framebuffer support.

This patch adds
- the i.MX LVDS display bridge driver required in order to use the LVDS
framebuffer.
- the driver for the i.MX IPUv3 controller, with the framebuffer support.
- the i.MX6Q LDB, the IPU and the FB devices in the device tree.

The Nitrogen6X framebuffer 0 is set for 1024x768 with RGB565, to be compatible
with the 10.1" 1024x768 Hannstar LVDS.

Signed-off-by: Jimmy Durand Wesolowski <jimmy.durand-wesolowski@openwide.fr>
Signed-off-by: Anup Patel <anup@brainfault.org>
[CORE] vmm_blockdev: Don't allocate vmm_request_queue in blockdev alloc

Instead on allocating struct vmm_request_queue in vmm_blockdev_alloc()
we should let device driver frameworks allocate it. This way it is
not mandatory to have struct vmm_request_queue allocated from heap.

Signed-off-by: Anup Patel <anup@brainfault.org>
[DRIVERS] spi: Fix dependency of CONFIG_SPI_IMX config option

Signed-off-by: Anup Patel <anup@brainfault.org>
[CORE] Use vmm_completion in vmm_workqueue implementation

Instead of directly using vmm_threads_wakeup() and vmm_threads_sleep()
in worker thread of vmm_workqueue, we now use vmm_completion for
managing sleep and wakeup of worker thread. This patch also moves
struct vmm_workqueue definetion to source file so that we dont
have to include vmm_completion.h in vmm_workqueue.h.

Signed-off-by: Anup Patel <anup@brainfault.org>
[CORE] vmm_blockdev: Add APIs for NOP strategy based request queue

This patch adds untested version of NOP strategy based request queue.

In simpler words, this patch adds provision to create wrapper request
queue on top-of struct vmm_request_queue with NOP strategy.

Signed-off-by: Anup Patel <anup@brainfault.org>
[ARM] Enable newly added drivers in generic-v7-defconfig

Lot of drivers have been added recently for ARMv7 boards
without virtualization extensions.

This patch enables all relevant newly added drivers for
ARMv7 boards in generic-v7-defconfig. We also remove
sabrelite-defconfig because sabrelite board support
is part of generic board support.

In future, it is expected that most of the new boards
supports and drivers will be for ARMv7 with virtualization
boards or ARMv8 boards.

Signed-off-by: Anup Patel <anup@brainfault.org>
[COMMANDS] Add vcpu monitor command

This patch adds monitor sub-command to vcpu command. The new
command periodically prints CPU, RAM, VAPOOL, and VCPU status
just like linux top command. It uses VT100 console commands
to refresh screen and reset cursor position periodically. The
commands works fine with serial port, telnet connection, and
framebuffer character device.

This patch is inspired from patch "[DAEMONS] Add a monitor
daemon, with compatibility with framebuffers." submitted
by Jimmy.

Signed-off-by: Anup Patel <anup@brainfault.org>
Signed-off-by: Jimmy Durand Wesolowski <jimmy.durand-wesolowski@openwide.fr>
[COMMANDS] The RGB565 built-in logo can now be selected in the menu.

There are actually two logos availables, Xvisor's or the SystemX Technological
Research Institute.
Both are in RGB565 format for the moment.

Signed-off-by: Jimmy Durand Wesolowski <jimmy.durand-wesolowski@openwide.fr>
[COMMANDS] Correcting the fb image command dependency.

Signed-off-by: Jimmy Durand Wesolowski <jimmy.durand-wesolowski@openwide.fr>