Tiger, I understand your requirement. It is an action I have on my TODO list. The support should be straightforward. It is mainly to port all the AArch64 assembly files to AArch32. I might have a try this week or next week.
Olivier
-----Original Message----- From: Leif Lindholm [mailto:leif.lindholm@linaro.org] Sent: 24 April 2014 10:20 To: TigerLiu@via-alliance.com Cc: ryan.harkin@linaro.org; linaro-uefi@lists.linaro.org; Olivier Martin Subject: Re: [Linaro-uefi] how to compile a AARCH32 UEFI bin?
On Thu, Apr 24, 2014 at 04:04:43PM +0800, TigerLiu@via-alliance.com wrote:
Because current ARMv8 SOC usually has two system software
configuration:
AARCH64 Kernel + AARCH32 Android
AARCH32 Kernel + AARCH32 Android
Some experts claims that:
Because AARCH64 Linux kernel is not mature until now, and Android
still not
support AARCH64.
The Linux kernel has been available for AArch64 for ARM partners for over 2 years, has been upstreamc for over 1.5, and running on at least FPGA implementations for just as long. While maturity is a bit of a floating term, I would say the AArch64 kernel is certainly ready for production use.
Then “AARCH32 Kernel + AARCH32 Android” is prefer than “AARCH64 Kernel + AARCH32 Android”
So, I thought:
If adopting configuration 2 “AARCH32 Kernel + AARCH32 Android”, then maybe AARCH32 UEFI is needed.
I don't think so. "Other processor architectures" have already announced Android running with 64-bit kernels, so I don't see the need for ARM platforms to move backwards with regards to that.
But certainly any UEFI forum member is permitted to create their own implementation that supports this, following the AArch32 UEFI bindings.
Note that for UEFI runtime services support, it is an implicit requirement that UEFI and kernel match up (aarch64/aatch64 or aarch32/aarch32). So you are correct in that this use-case would require a 32-bit UEFI.
/ Leif