Please note: This project is no longer active. The website is kept online for historic purposes only.
If you´re looking for a Linux driver for your Atheros WLAN device, you should continue here .

Ticket #1292 (new defect)

Opened 15 years ago

Last modified 12 years ago

[PATCH] Fix for VFP mismatch on armv4-le-elf

Reported by: kired75@hotmail.com Assigned to:
Priority: minor Milestone:
Component: madwifi: HAL Version:
Keywords: vfp hal armv4 Cc:
Patch is attached: 1 Pending:

Description (Last modified by mentor)

My moxa platform requires this to compile because of this error:

arm-linux-ld: ERROR: /home/user/svn/madwifi-ng-refcount/ath_hal/armv4-le-elf.hal.o uses VFP instructions, whereas 
/home/user/svn/madwifi-ng-refcount/ath_hal/ath_hal.o does not

File format not recognized: failed to merge target specific data of file /home/user/svn/madwifi-ng-refcount/ath_hal/armv4-le-elf.hal.o

Attachments

armv4-vfp-fix.diff (383 bytes) - added by kired75@hotmail.com on 05/02/07 15:28:44.
Signed-off-by: Derrick Jobidon <djobidon@teops.com>

Change History

05/02/07 15:28:44 changed by kired75@hotmail.com

  • attachment armv4-vfp-fix.diff added.

Signed-off-by: Derrick Jobidon <djobidon@teops.com>

05/02/07 16:03:56 changed by mentor

  • description changed.

05/02/07 16:05:34 changed by mentor

  • description changed.

05/02/07 16:19:37 changed by mentor

I'm not sure that's the right solution

(follow-up: ↓ 5 ) 05/07/07 04:09:34 changed by mentor

Er, yes, you should be using wackelf and/or -msoft-float...

(in reply to: ↑ 4 ) 05/07/07 15:45:12 changed by mrenzmann

Replying to mentor:

Er, yes, you should be using wackelf and/or -msoft-float...

Right.

Probably that should be explained on a more prominent place, such as INSTALL or hal/README. The HAL v0.9.18.0 CFT and/or the comment(s) in wackelf.c might be helpful.

Any volunteers?

(follow-up: ↓ 7 ) 05/07/07 17:41:46 changed by mentor

Yes, I was going to put a patch in as soon as I understood the whole ARM float thing. But if anyone understands it before me...

(in reply to: ↑ 6 ) 05/13/08 17:37:53 changed by marc.pignat@hevs.ch

Replying to mentor:

Yes, I was going to put a patch in as soon as I understood the whole ARM float thing. But if anyone understands it before me...


Ok, an old thread, but I will respond, since I'm facing the same problem :)

Some ARM cpu have floating point units (VFP7, VFP9, crunch, ...) but in fact, this is not the problem. The linux kernel for ARM (and I think for all others arch) is always built without in-kernel hardware floating point support (there is support for floating point in userland).

The problem here is that the xscale-le-elf.hal.o (and as noted by kired75 armv4-le-elf.hal.o too) was compiled with hardware floating point support. The right way of fixing this problem is to compile these object files using the -msoft-float compiler setting.

The proposed hack is to force the link anyway, which should work if there is no floating point instruction in this code (and floating point is prohibed in kernel, if I good remember).

please note that all ARM based platforms needs this hack:

  • armv4-le-elf.hal.o
  • armv4-be-elf.hal.o
  • xscale-le-elf.hal.o
  • xscale-be-elf.hal.o (was already hacked :)

I will receive by mail my minipci wifi card, I will test it on xscale-le-elf, and I will post the updated patch for all the ARM arch asap

Best regards

Marc