Subashini Balaraman wrote:
So we just removed them from the Makefile in the lib-arm directory in u-boot. Then, the sources in your MontaVista toolchain will be used and you can get rid of this error.

I do not know of a patch for this error, but this might be an ad-hoc method that works.

I don't think disabling the lib-arm directory is really a patch for this error. If you disable the lib-arm directory, all division/floating point stuff will be taken from the toolchain you use. Sounds like this works with your MontaVista toolchain, but this must not work for all toolchains. E.g. my self built toolchain then complains that libc uses hardware floating point while uboot uses software floating point and then linking fails.

I think the correct way is to use *all* the stuff in lib_arm, then you are independent of the toolchain and that's the reason why the stuff is there (Note: Ivan Tonchev's u-boot-1.2.0-davinci+nand.patch disables parts of lib_arm as well, what I think is wrong).

For ARM/DaVinci (don't know the other architectures) the main issue here is that __udivdi3 isn't available in lib_arm, but compiler creates call to it because of nand_util.c. So options to fix it are (a) create a __udivdi3 for ARM in lib_arm (anybody with this already?) or (b) fix/work around nand_util.c producing __udivdi3 calls.

I took solution (b) because it is already there (thanks Philip for the pointer):

http://sourceforge.net/mailarchive/forum.php?thread_name=468D2650.10603%40rfo.atmel.com&forum_name=u-boot-users

and reenabled all lib_arm in u-boot-1.2.0-davinci+nand.patch again.

Then it compiles an links fine, hopefully with all toolchains ;)

Best regards

Dirk

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to