[ipxe-devel] [RFC] Why does ARM set -mcpu=cortex-a15
Heinrich Schuchardt
xypron.glpk at gmx.de
Thu Mar 29 00:45:28 UTC 2018
Hello Michael,
I have some questions concerning the compilation flags used by iPXE on ARM.
There are a lot of different ARM CPUs available. Why do we set
-mcpu=cortex-a15?
This would for instance exclude i.mx6 CPUs which are Cortex-A9.
The Allwinner A20 I am currently testing on is Cortex-A7.
All aforementioned CPUs have an FPU. So why use -mfloat=soft?
Couldn't we use something like
-march=armv7-a -mfpu=vfpv3-d16 -mfloat=hard
instead? This is what Debian requires for armhf.
The following differences exist
HVC (hypervisor call) assembler instruction is not available on
Cortex-A7, Cortex-A9. This concerns arch/arm/include/bits/xen.h which is
included by drivers/net/netfront.c and some tests. But the netfront
driver is irrelevant for snp.efi.
Fused multiply and add is not available on the Cortex-A9 FPU.
Best regards
Heinrich
More information about the ipxe-devel
mailing list