[LIBS] libfdt: Include vmm_devtree.h from header file

libfdt APIs use struct vmm_devtree_node as argument so vmm_devtree.h should be included in libs/libfdt.h

Signed-off-by: Anup Patel <anup@brainfault.org>
[ARCH] Introduce separate arch interface header for arch devtree functions

It's not good to tie-up arch devtree functions with arch board functions because there could be arch ports interested in implementing arch devtree functions as part of CPU code.

This patch introduce separte header for arch devtree funtions.

In addition, this patch also introduces common implementation of arch devtree functions for all ARM boards.

Currently, Xvisor ARM strategy of populating device tree is to have one built-in board specific fdt in hypervisor binary. In future, Xvisor ARM would also provide boot arg option for providing custom fdt.

The Xvisor x86_64 strategy of populating device tree would be to create device tree entierly from ACPI tables and not use built-in board specific fdt.

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