Results 1 to 2 of 2
Thread: USB deregistration problem
Enjoy an ad free experience by logging in. Not a member yet? Register.
- Join Date
- Jul 2008
USB deregistration problem
I am currently trying to get the USB port to detect my USB flashdrive. After plugging in my flashdrive, the light on the flashdrive flashes indicating that the port is powered. However, I do not see anything when running the lsusb command. Also I do not see anything other than my harddrive partitions when running fdisk -l. Mounting usbfs using mount -t usbfs none /proc/bus/usb also has no effect since the devices file are not generated.
Ive run the dmesg command to try and see if I can detect any problems. Running dmesg | grep usb generated the following lines:
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new interface driver usb
/drivers /usb/core/inode.c: creating file 'devices'
/drivers /usb/core/inode.c: creating file '001'
usbcore: registered new interface driver usb-storage
However, running dmesg | grep ehci_hcd gives the following:
ehci_hcd 0000:00:15.1" EHCI Host Controller
ehci_hcd 0000:00:15.1" New USB bus registered, assigned bus number 1
ehci_hcd 0000:00:15.1" reset hcs_params 0x1414 dbg=0 cc=1 pcc=4 ordered ports=4
ehci_hcd 0000:00:15.1" reset hcc_params 0012 thresh 1 uframes 256/512/1024
ehci_hcd 0000:00:15.1" reset command 080002 (park)=0 ithresh=8 period=1024 Reset HALT
ehci_hcd 0000:00:15.1" MWI active
ehci_hcd 0000:00:15.1" request interrupt 7 failed
ehci_hcd 0000:00:15.1" USB bus 1 deregistered
ehci_hcd 0000:00:15.1" init 0000:00:15:1 fail, -16
ehci_hcd: probe of 0000:00:15.1 failed with error -16
So it seems that the device got removed shortly after it was created. Im using Mandrake 10 kernel release 2.6.25.
Please let me know if more information is required. Any help regarding this will be appreciated Thanks
- Join Date
- Jul 2008
I finally found the solution! I thought I should post it since I could not find the solution by googling.
Basically the problem was that there was an IRQ conflict between the USB controller (ehci) and another component called MFGPT timer. This seems to be a high accuracy clock that is more accurate than the default. The conflict occurred because my system ran out of IRQ's to assign (I have 3 ethernet ports which each has its own IRQ). Therefore, a new IRQ could not be assigned to the USB controller and it ended up sharing the IRQ with the timer.
Disabling support for the MFGPT timer in the kernel configuration solved my problem