Hi,

I'm very new to kernel, so apologies if anything i'm typing here is wrong

1. I'm working on a device (ST-SPEAR600-EVB) with 2.6.32.16 kernel
2. At random time USB keyboard/mouse disconnects and reconnects automatically
3. I tried dumping portstatus and portchange registers in
drivers/usb/core/hub.c, Im getting portstatus=0x0100 and
portchange=0x0001
4, Then the disconnected port automatically reconnects the device with
portstatus=0x0301 and portchange=0x0001
5. Then the usb port enabled with portstatus=0x0303 and portchange=0x0000
6. Sometimes, mouse/keyboard dont event gets detected by kernel after
a reboot. I have to plug out and plugin the cable to make them work
again.

I also used usbmon, But I'm not able to find why the usb port gets
device disconnect interrupt the first place. The host controller
driver is ehci-spear, the hid devices are handled by usbhid.

Here is link to usbmon log,

https://drive.google.com/open?id=1GQfSTGhhb5yzUqR7_DETZK-WJl04cbiM

The disconnect issue can be filtered with this command

zgrep -E ‘0:2048|000:0 |s 23|s a3|002:0 0 4’ usbmonlog.log.201801041153.gz


I need know

1. Is there any possibility of drivers (or userspace process) resets
those keyboard/mouse ports? if yes, then, how to check?
2. how to check if the reset happend in the host controller?
2. how to check if the reset happend in the hub?
3. how to check if the reset happend in the usb device?

with my limited knowledge with usbmon text log file, It seems to be
happening in the usb device (interrupts urb traffic takes place first
in port then in root hub). I need some hints to proceed further
digging.

Thanks,
Mohan R
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to