Originally Posted by drmozes
Q. Do I need to recompile my kernel to be hard float?
No. The kernels are compiled to support the architectures selected (e.g. ARMv7 Tegra, armv6 Broadcom). When selecting the support you will either choose which features to support, or they will be baked into the CPU type anyway. So yes, if the CPU contains hardware floating point support, your kernel will be hard float.
See this discussion for more information:
Adding a little more info to that:
If you're going to compile your own kernel there are still a few selections that you are left to choose and that influence how your kernel is going to deal with floating point calculations:
[ ] Support Thumb user binaries (NEW)
[ ] Enable ThumbEE CPU extension (NEW)
Floating point emulation
[ ] NWFPE math emulation (NEW)
[ ] FastFPE math emulation (EXPERIMENTAL) (NEW)
[ ] VFP-format floating point maths (NEW)
[ ] Advanced SIMD (NEON) Extension support (NEW)
Depending on the system type you select the "Support Thumb user binaries" may get automatically selected wile in the "Floating Point Emulation" menu you are left to choose how your kernel should behave. The NEON extensions only pop up if you enable VFP-Format.
Now the help messages in the "Floating Point Emulation" section can cause further confusion but to my understanding NWFPE and FastFPE
make the kernel do software floating point while VFP-format is the means by which floating point calculations are passed to FPU.
As Stuart has said in other posts ... If the usernald has divorced from hardfloat the kernel will never be asked to perform hardfloat calculations.