Xen: EFI: Parse DT parameters for Xen specific UEFI
authorShannon Zhao <shannon.zhao@linaro.org>
Thu, 12 May 2016 12:19:54 +0000 (20:19 +0800)
committerDavid Vrabel <david.vrabel@citrix.com>
Wed, 6 Jul 2016 09:34:47 +0000 (10:34 +0100)
commit0cac5c3018b32707b3bab40e4beb83f91c4204f1
tree2782afbb0fd9f861df6d0af6aa3d1f9481145708
parent9c6098685a1d5df72da61ff7838ebb1524796869
Xen: EFI: Parse DT parameters for Xen specific UEFI

The EFI DT parameters for bare metal are located under /chosen node,
while for Xen Dom0 they are located under /hyperviosr/uefi node. These
parameters under /chosen and /hyperviosr/uefi are not expected to appear
at the same time.

Parse these EFI parameters and initialize EFI like the way for bare
metal except the runtime services because the runtime services for Xen
Dom0 are available through hypercalls and they are always enabled. So it
sets the EFI_RUNTIME_SERVICES flag if it finds /hyperviosr/uefi node and
bails out in arm_enable_runtime_services() when EFI_RUNTIME_SERVICES
flag is set already.

Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk>
arch/arm/xen/enlighten.c
drivers/firmware/efi/arm-runtime.c
drivers/firmware/efi/efi.c