I.mx51 EVK floating point support

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

I.mx51 EVK floating point support

881 Views
bergo
Contributor III

Hello,

I've built a linux environment for I.mx51 EVK (all sources from freescale), the kernel is pretty stripped down only to the vitals, but I made sure that VFP is supported.

First I compiled from the command line without any gcc flags, and a source code doing fft took almost 6 minutes to run on the target.

Then I've compiled with  "mfloat-abi=softfp", and the runtime improved by almost 2 minutes. still the run time is much longer then expected.

Thinking I'm on the right track I've tried to compiled with hard floating point calculation (mfloat-abi=hard / mfloat-abi=hardfp) but the code wouldn't compile. Getting the error

"test.c:1: sorry, unimplemented: -mfloat-abi=hard and VFP"

The toolchain I'm using is the one provided by Freescale :

arm-fsl-linux-gnueabi

and I'm using arm-none-linux-gnueabi-gcc for the build

I'm guessing it doesn't support hard floating point...

Any help would be much appreciated !

Labels (2)
0 Kudos
2 Replies

547 Views
Yuri
NXP Employee
NXP Employee

i.MX51 Linux does not use hardware floating point

Re: imx6q - hard-float or soft-float

547 Views
bergo
Contributor III

Thanks for the link Yuri, it shed some light on my issue.

Still I'm wondering how can I utilize the NEON support or vfpv3 that is supposed to be supported by the i.mx51 EVK.

I'm using the toolchain which is "ARM, gcc-4.4.4, multilib, neon optimized". but when I add the flags -mfpu=vfpv3 / -mfpu=neon / no flags at all, I'm getting the same result exactly, the flag doesn't affect the compilation (oppose to "-mfloat-abi=softfp").

although the compilation is going through with no problem. I'm sure "-mfpu" flag doesn't affect.

An example for the compilation line I'm entering is "arm-none-linux-gnueabi-gcc -mfpu=vfpv3 test.c"

(test.c is doing fft computation, and the code takes forever to run on the imx51, while softfp helps improves the time by almost 50%, the times are still unreasonable and unacceptable)

I was hoping to get some help on how to make sure I'm compiling my code with NEON / VFPV3 support

thanks in advance

0 Kudos