Hardware floating point support for iMX6
|
The hardware floating-point (hardfp) use an on-chip floating-point unit to perform mathematics on floating-point numbers, while software floating-point (softfp) emulates one of these units in software. This is the reason why hardfp is faster than softfp. The name of this unit is FPU (floating-point unit), which is a piece of hardware that can take floating-point values and an operator and return a value. This hardware is optimized to just do floating point math so it performs much better than doing the operations in software. RidgeRun has its own hardware floating-point linaro toolchain version.
We are using the following Linaro toolchain and kernel versions for the iMX6 with hardware floating-point:
- Toolchain:
gcc-linaro-arm-unknown-linux-gnueabihf-4.8.2-2013.07
- Kernel:
boundary-imx_3.0.35_4.0.0
Configuring your SDK with hardware floating-point support
To configure your SDK with hardfp support, you have to follow the next steps:
1. If Linaro is not your default toolchain, run make coreconfig and select Linaro.
/ # make coreconfig Selecting toolchain: 1. arm-eabi-glibc-codesourcery-2011.09 2. linaro 3. arm-eabi-glibc-codesourcery-2009q1-203 Which? 2
2. Select hardware floating-point.
/ # make config --> Toolchain Configurations --> Floating point support -Hardware floating point
3. The default hardfp toolchain binaries path:
/opt/linaro/gcc-linaro-arm-unknown-linux-gnueabihf-4.8.2-2013.07
If you have the toolchain on a different path, change it.
Now, your toolchain is configured to use the hardware floating-point support.
As RidgeRun has its own hardware floating-point Linaro toolchain, the SDK will download and install it.
What is supported?
At this moment, RidgeRun is able to build all the iMX6 SDK without errors and currently supports video and audio.
Known issues
RidgeRun Resources | |||||
Contact Us
|