Hi! I have some custom USB hardware which stopped working somewhere in 2.4.19preX. So I was sticking to 2.4.18 until I tried 2.4.19.SuSE (from SuSE 8.1) which didn't have such problems eg. device was connecting OK.
After examination of kernel sources, I found that the SuSE had patched the hub.c with the attached patch. To confirm, I tried 2.4.20. Also unable to connect. Then applied the hub.c patch to it. Solved the problem! So I wonder, what this patch does? Should it be submitted to the main tree?
--- drivers/usb/hub.c.orig 2002-11-30 11:47:39.000000000 +0100 +++ drivers/usb/hub.c 2002-11-30 11:48:12.000000000 +0100 @@ -667,6 +667,7 @@ } else delay_time += HUB_DEBOUNCE_STEP; + if (portstatus&USB_PORT_STAT_CONNECTION) return 0; } return ((portstatus&USB_PORT_STAT_CONNECTION)) ? 0 : 1; }
