This patch is the result of that discussion a short while back to fix the "hub driver polls too quickly at high speed" bug.
- redefines "interval" of usb_fill_int_urb() to be what the endpoint descriptor returns, and transparently does the log-to-linear conversion if it's high speed - (most of the patch by volume!!) moves declarations forward so testing dev->speed there will compile. No driver changes were needed -- most drivers pass the endpoint bInterval value already, and those that don't are not dealing with high speed device quirks. - Dave p.s. Includes an unrelated one-liner: deletes export of usb_inc_dev_use() so it now shows up in kernel doc. Minor oversight in an earlier patch. p.p.s. Driver-visible API change in 2.5.10: if you use fops, you MUST set num_minors ... listing in the /proc/bus/usb/drivers file happens even if there's no way the driver will be accessible. I think it'd be better to fail the registration if num_minors is zero for a driver using fops.
poll-0425.patch
Description: Binary data