I've been using USB 2.0 successfully in Linux for almost a year now. Specifically, a PCMCIA card, two PCI cards, a few motherboard-integrated chips, and two external hard drive housings. However, for some reason I can't even guess, every single adapter card has died.
First was the PCMCIA card. It uses an NEC chip, probably the first generation one. It worked perfectly with both USB 2.0 and 1.1 devices in both Linux and Windows 2000 for about 4 months, then stopped recognizing devices. The EHCI and OHCI drivers still detect and initialize the card, but it is completely inoperative.
Then the PCI card I used in my file server box, also with the NEC chip, went crazy. At first it would just have a hard time recognizing high speed devices, but would eventually work. Then it stopped working in high-speed mode altogether, giving "bulk_msg timeout" errors and rendering the EHCI module unremovable. It would still work in full speed mode with the OHCI driver, but now even that doesn't work. The second I try to do something like copy a file from an external hard drive it locks up, although the driver can still be removed. Again, the card is still detected by both the EHCI and OHCI drivers.
Third was a PCI card I bought used from someone, this time with the VIA chip. It only worked right for about a month, then just a week ago it stopped detecting USB 1.1 devices like my printer and scanner. However, high-speed USB 2.0 devices work fine. Again, it is detected and initialized by both the USB 2.0 EHCI driver and USB 1.1 UHCI driver.
Can anyone give me any insight as to what's going on? Is there some lethal defect in Linux's EHCI driver? Did I just happen to get 3 bad cards?
Update: I have solved the mystery of the PCMCIA card. For some reason, although it used to work without the external power adapter, it doesn't anymore. Plugging in the external power fixed it. The failing PCI cards still have me

though...