[ARM] Simplify low-level memset implementation

Signed-off-by: Anup Patel <anup@brainfault.org>
[ARM] arm32: Add support for ARMv6 processors

This extends arm32 CPU support for ARMv6 processors.

The ARMv7 MMU is fully backward compatible to ARMv6 MMU.

Also, ARMv6 instruction-set is sub-set of ARMv7 instruction-set. In fact, ARMv7 has only few additional instructions.

Signed-off-by: Anup Patel <anup@brainfault.org>
[CORE] Add VMM_NSEC_PER_SEC define to avoid hard-coding in vmm_clocks_calc_mult_shift() usage

Signed-off-by: Anup Patel <anup@brainfault.org>
[ARM] Add Raspberry Pi (or BCM2835 SOC) support

This is initial board support for Raspberry Pi or BCM2835 SOC.

This patch enables us to boot vmm.bin on Raspberry Pi emulated by QEMU.

The source for QEMU with Raspberry Pi support resides in rpi branch of https://github.com/Torlus/qemu

In future, we will be able to boot a ARMv6 guest on Raspberry Pi (emulated by QEMU or real HW).

Signed-off-by: Anup Patel <anup@brainfault.org>
[CORE] Add vmm_devtree_clock_frequency() and vmm_devtree_irq_xxx() APIs

This patch enriches vmm_devtree APIs so that we can avoid hard-coded strings in arch/ and drivers/ for reading irq numbers from device tree nodes.

The patch also adds vmm_devtree_clock_frequency() API which is a helper API for reading clock-frequency attribute of device tree node. This API is not related to arch_clk_xxx() APIs in anyway and it is just a helper API.

Lot of DTS files, arch code, drivers, and emulators get affected by this patch so all possible ARM host have been re-tested with this patch.

Signed-off-by: Anup Patel <anup@brainfault.org>
Merge remote-tracking branch 'upstream/master' into dev_exynos4

Conflicts:
	arch/arm/board/exynos4/brd_main.c
	arch/arm/board/exynos4/dts/exynos4210.dtsi
	drivers/serial/samsung-uart.c