From: Andrew Morton WARNING: "__udivdi3" [drivers/misc/ioc4.ko] undefined! and drivers/misc/ioc4.c: In function 'ioc4_clock_calibrate': drivers/misc/ioc4.c:211: warning: format '%ld' expects type 'long int', but argument 3 has type 'uint64_t' Cc: Pat Gefre Cc: Jeremy Higdon Cc: Brent Casavant Signed-off-by: Andrew Morton --- drivers/misc/ioc4.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff -puN drivers/misc/ioc4.c~ioc4-fixes drivers/misc/ioc4.c --- a/drivers/misc/ioc4.c~ioc4-fixes +++ a/drivers/misc/ioc4.c @@ -205,10 +205,12 @@ ioc4_clock_calibrate(struct ioc4_driver_ IOC4_CALIBRATE_DEFAULT / IOC4_EXTINT_COUNT_DIVISOR); period = IOC4_CALIBRATE_DEFAULT; } else { + u64 ns = period; + + do_div(ns, IOC4_EXTINT_COUNT_DIVISOR); printk(KERN_DEBUG - "IOC4 %s: PCI clock is %ld ns.\n", - pci_name(idd->idd_pdev), - period / IOC4_EXTINT_COUNT_DIVISOR); + "IOC4 %s: PCI clock is %lld ns.\n", + pci_name(idd->idd_pdev), ns); } /* Remember results. We store the extint clock period rather _