Attached is a patch against the 2.5.8 hub driver, making it
provide the correct polling interval.  Something like this
needs to go into 2.5 (and also 2.4), and this works fine.

BUT:  I'm wondering if maybe such logic shouldn't be put into
usb_fill_int_urb() instead, to reduce the number of mistakes
in device drivers.  I've got to suspect most developers won't
remember that polling intervals use a different encoding in
endpoint descriptors for high speed devices.

That would mean changing the "interval" parameter to that
routine so it's what endpoint->bInterval contains, rather than
a polling interval measured in frames (for full and low speed
transfers) or microframes (for high speed ones).

So the question:  Given this patch and an equivalent one that
pushes the "which bInterval encoding" logic into <linux/usb.h>
and usb_fill_int_urb(), which should go into 2.5?  2.4?

- Dave

Attachment: hub-0420.patch
Description: Binary data

Reply via email to