5

I have a device driver which was compiling fine using arm-linux-gnueabi- I added a few double and float operations into the code and I have been getting the following warnings at compilation:

WARNING: "__aeabi_dsub" [/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] undefined! WARNING: "__aeabi_d2uiz" [/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] undefined! WARNING: "__aeabi_dmul" [/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] undefined! WARNING: "__aeabi_ddiv" [/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] undefined! WARNING: "__aeabi_ui2d" [/home/preetam/Desktop/pwm_driver/driver/pwm_dev.ko] undefined!

Does it mean that the compiler and/or the arm platform does not support floating and double data types?

How do I deal with this situation. I need to be able to do the math to get the proper functionality.

preetam
  • 1,451
  • 1
  • 17
  • 43
  • 1
    Can you do your floating point operations in user space? Floating point operations in kernel space are highly discouraged. See http://stackoverflow.com/questions/13886338/use-of-floating-point-in-the-linux-kernel – Peter L. Nov 04 '14 at 22:47
  • You must not use FP in the kernel. Show what your driver is actually trying to do. – CL. Nov 05 '14 at 08:15
  • 2
    It a pwm driver. The user just wants to give frequency and duty cycle and I need to calculate the time based on that. The user here does not want to do those conversions in userspace. That's my problem. – preetam Nov 06 '14 at 21:02

0 Answers0