arm64: add EFI runtime services
authorMark Salter <msalter@redhat.com>
Wed, 16 Apr 2014 01:59:30 +0000 (21:59 -0400)
committerMark Brown <broonie@linaro.org>
Thu, 24 Jul 2014 21:58:43 +0000 (22:58 +0100)
commit9d805241d70c4491ce031fb6fda0b3875e3f1c7e
tree6770a8f2e5ce747e337a87a96f530749e9d9fc65
parente955cb169280bee2daed9ddf1a834bc8e72d9978
arm64: add EFI runtime services

This patch adds EFI runtime support for arm64. This runtime support allows
the kernel to access various EFI runtime services provided by EFI firmware.
Things like reboot, real time clock, EFI boot variables, and others.

This functionality is supported for little endian kernels only. The UEFI
firmware standard specifies that the firmware be little endian. A future
patch is expected to add support for big endian kernels running with
little endian firmware.

Signed-off-by: Mark Salter <msalter@redhat.com>
[ Remove unnecessary cache/tlb maintenance. ]
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
(cherry picked from commit f84d02755f5a9f3b88e8d15d6384da25ad6dcf5e)
Signed-off-by: Mark Brown <broonie@linaro.org>
Conflicts:
arch/arm64/Kconfig
arch/arm64/kernel/Makefile
arch/arm64/Kconfig
arch/arm64/include/asm/efi.h [new file with mode: 0644]
arch/arm64/kernel/efi.c [new file with mode: 0644]
arch/arm64/kernel/setup.c