[U-Boot-Users] ARM missing __udivdi3 in lib_arm or fix 64bit division in nand_util.c?

Dirk Behme dirk.behme at googlemail.com
Tue Jul 31 07:38:19 CEST 2007


On ARM (don't know for other architectures ;) ) compiling and linking 
nand_util.c results on recent git in

~/uboot/drivers/nand/nand_util.c:657: undefined reference to `__udivdi3'
drivers/nand/libnand.a(nand_util.o): In function `nand_write_opts':
~/uboot/drivers/nand/nand_util.c:481: undefined reference to `__udivdi3'
drivers/nand/libnand.a(nand_util.o): In function `nand_erase_opts':
~/uboot/drivers/nand/nand_util.c:214: undefined reference to `__udivdi3'

In lib_arm __udivsi3 and friends are available, but __udivdi3 is 
missing. There is a fix by modifying nand_util.c

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

to not do any 64bit divisions any more. Now, I wonder what is the 
correct fix for this? Should lib_arm provide __udivdi3 as well or 
should nand_util.c be fixed as in above link to avoid 64bit divisions?

Best regards

Dirk





More information about the U-Boot mailing list