[v4l-dvb-maintainer] budget: bad udelay call, build failure on ARM with DVB_BUDGET

Martin Michlmayr tbm at cyrius.com
Mon Aug 25 14:03:28 CEST 2008

budget.ko fails to build on ARM with:

ERROR: "__bad_udelay" [drivers/media/dvb/ttpci/budget.ko] undefined!
make[1]: *** [__modpost] Error 1

__bad_udelay is specifically designed on ARM to fail when udelay is
called in a bad way.  arch/arm/include/asm/delay.h has this to say
about __bad_udelay:

 * This function intentionally does not exist; if you see references to
 * it, it means that you're calling udelay() with an out of range value.
 * With currently imposed limits, this means that we support a max delay
 * of 2000us. Further limits: HZ<=1000 and bogomips<=3355
extern void __bad_udelay(void);

Can you check why your driver is calling udelay() with a value > 2000?

Martin Michlmayr

More information about the v4l-dvb-maintainer mailing list