Hi, Alan. I have some more information about the problem. I tried generating dmesg logs from both a cold boot and a warm boot to see if things were different and they were. I don't know if this information is significant or not. Please feel free to guide me however you want.
First, simply having a cold boot gave me something like this: (...) drivers/usb/core/usb.c: registered new driver usbfs drivers/usb/core/usb.c: registered new driver hub drivers/usb/host/uhci-hcd.c: USB Universal Host Controller Interface driver v2.1 PCI: Found IRQ 9 for device 0000:00:04.2 PCI: Sharing IRQ 9 with 0000:00:04.3 PCI: Sharing IRQ 9 with 0000:00:09.0 PCI: Sharing IRQ 9 with 0000:00:0d.0 uhci_hcd 0000:00:04.2: UHCI Host Controller uhci_hcd 0000:00:04.2: irq 9, io base 0000d400 uhci_hcd 0000:00:04.2: new USB bus registered, assigned bus number 1 drivers/usb/host/uhci-hcd.c: detected 2 ports uhci_hcd 0000:00:04.2: root hub device address 1 usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1 drivers/usb/core/message.c: USB device number 1 default language ID 0x409 usb usb1: Product: UHCI Host Controller usb usb1: Manufacturer: Linux 2.6.1-2 uhci_hcd usb usb1: SerialNumber: 0000:00:04.2 drivers/usb/core/usb.c: usb_hotplug usb usb1: registering 1-0:1.0 (config #1, interface 0) drivers/usb/core/usb.c: usb_hotplug hub 1-0:1.0: usb_probe_interface hub 1-0:1.0: usb_probe_interface - got id hub 1-0:1.0: USB hub found hub 1-0:1.0: 2 ports detected hub 1-0:1.0: standalone hub hub 1-0:1.0: ganged power switching hub 1-0:1.0: global over-current protection hub 1-0:1.0: Port indicators are not supported hub 1-0:1.0: power on to power good time: 2ms hub 1-0:1.0: hub controller current requirement: 0mA hub 1-0:1.0: local power source is good hub 1-0:1.0: no over-current condition exists hub 1-0:1.0: enabling power on all ports hub 1-0:1.0: power on: 0 hub 1-0:1.0: initial port 1 status: ret = 0 hub 1-0:1.0: port 1, status 300, change 3, 1.5 Mb/s hub 1-0:1.0: clear C_CONNECTION1 = 0 hub 1-0:1.0: initial port 2 status: ret = 0 hub 1-0:1.0: port 2, status 300, change 3, 1.5 Mb/s hub 1-0:1.0: clear C_CONNECTION1 = 0 hub 1-0:1.0: initial port 1 status: ret = 0 hub 1-0:1.0: port 1 enable change, status 300 hub 1-0:1.0: initial port 2 status: ret = 0 hub 1-0:1.0: port 2 enable change, status 300 hub 1-0:1.0: power on: 0 PCI: Found IRQ 9 for device 0000:00:04.3 PCI: Sharing IRQ 9 with 0000:00:04.2 PCI: Sharing IRQ 9 with 0000:00:09.0 PCI: Sharing IRQ 9 with 0000:00:0d.0 uhci_hcd 0000:00:04.3: UHCI Host Controller uhci_hcd 0000:00:04.3: irq 9, io base 0000d000 uhci_hcd 0000:00:04.3: new USB bus registered, assigned bus number 2 drivers/usb/host/uhci-hcd.c: detected 2 ports uhci_hcd 0000:00:04.3: root hub device address 1 usb usb2: new device strings: Mfr=3, Product=2, SerialNumber=1 drivers/usb/core/message.c: USB device number 1 default language ID 0x409 usb usb2: Product: UHCI Host Controller usb usb2: Manufacturer: Linux 2.6.1-2 uhci_hcd usb usb2: SerialNumber: 0000:00:04.3 drivers/usb/core/usb.c: usb_hotplug usb usb2: registering 2-0:1.0 (config #1, interface 0) drivers/usb/core/usb.c: usb_hotplug hub 2-0:1.0: usb_probe_interface hub 2-0:1.0: usb_probe_interface - got id hub 2-0:1.0: USB hub found hub 2-0:1.0: 2 ports detected hub 2-0:1.0: standalone hub hub 2-0:1.0: ganged power switching hub 2-0:1.0: global over-current protection hub 2-0:1.0: Port indicators are not supported hub 2-0:1.0: power on to power good time: 2ms hub 2-0:1.0: hub controller current requirement: 0mA hub 2-0:1.0: local power source is good hub 2-0:1.0: no over-current condition exists hub 2-0:1.0: enabling power on all ports hub 2-0:1.0: power on: 0 drivers/usb/host/uhci-hcd.c: d400: suspend_hc hub 2-0:1.0: initial port 1 status: ret = 0 hub 2-0:1.0: port 1, status 300, change 3, 1.5 Mb/s hub 2-0:1.0: clear C_CONNECTION1 = 0 hub 2-0:1.0: initial port 2 status: ret = 0 hub 2-0:1.0: port 2, status 101, change 3, 12 Mb/s hub 2-0:1.0: clear C_CONNECTION1 = 0 hub 2-0:1.0: port_status= 0, port 2 status 101 change 2 hub 2-0:1.0: port_status= 0, port 2 status 101 change 2 hub 2-0:1.0: port_status= 0, port 2 status 101 change 2 hub 2-0:1.0: port_status= 0, port 2 status 101 change 2 hub 2-0:1.0: port_status= 0, port 2 status 101 change 2 hub 2-0:1.0: debounce: port 2: delay 100ms stable 4 status 0x101 hub 2-0:1.0: port reset = 0 hub 2-0:1.0: wait_reset 0, port 2, status 103, change 0 hub 2-0:1.0: new USB device on port 2, assigned address 2 usb 2-2: new device strings: Mfr=1, Product=2, SerialNumber=0 drivers/usb/core/message.c: USB device number 2 default language ID 0x409 usb 2-2: Product: Generic USB Hub usb 2-2: Manufacturer: ALCOR drivers/usb/core/usb.c: usb_hotplug hub 2-0:1.0: power on: 0 usb 2-2: registering 2-2:1.0 (config #1, interface 0) drivers/usb/core/usb.c: usb_hotplug hub 2-2:1.0: usb_probe_interface hub 2-2:1.0: usb_probe_interface - got id hub 2-2:1.0: USB hub found hub 2-2:1.0: 4 ports detected hub 2-2:1.0: standalone hub hub 2-2:1.0: ganged power switching hub 2-2:1.0: global over-current protection hub 2-2:1.0: Port indicators are not supported hub 2-2:1.0: power on to power good time: 44ms hub 2-2:1.0: hub controller current requirement: 100mA hub 2-2:1.0: local power source is good hub 2-2:1.0: no over-current condition exists hub 2-2:1.0: enabling power on all ports hub 2-2:1.0: power on: 0 hub 2-2:1.0: power on: 0 hub 2-2:1.0: power on: 0 hub 2-2:1.0: power on: 0 hub 2-0:1.0: initial port 1 status: ret = 0 hub 2-0:1.0: port 1 enable change, status 300 hub 2-0:1.0: initial port 2 status: ret = 0 If I remember correctly, I plugged the drive here. drivers/usb/host/uhci-hcd.c: d400: wakeup_hc hub 1-0:1.0: initial port 1 status: ret = 0 hub 1-0:1.0: initial port 2 status: ret = 0 hub 1-0:1.0: port 2, status 101, change 3, 12 Mb/s hub 1-0:1.0: clear C_CONNECTION1 = 0 hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 hub 1-0:1.0: debounce: port 2: delay 100ms stable 4 status 0x101 hub 1-0:1.0: port reset = 0 hub 1-0:1.0: wait_reset 0, port 2, status 103, change 0 hub 1-0:1.0: new USB device on port 2, assigned address 2 usb 1-2: new device strings: Mfr=1, Product=3, SerialNumber=0 drivers/usb/core/message.c: USB device number 2 default language ID 0x409 usb 1-2: Product: USB Embedded Hub usb 1-2: Manufacturer: Leading Driver Co.,LTD. drivers/usb/core/usb.c: usb_hotplug usb 1-2: registering 1-2:1.0 (config #1, interface 0) drivers/usb/core/usb.c: usb_hotplug hub 1-2:1.0: usb_probe_interface hub 1-2:1.0: usb_probe_interface - got id hub 1-2:1.0: USB hub found hub 1-2:1.0: 2 ports detected hub 1-2:1.0: compound device; port removable status: FF hub 1-2:1.0: individual port power switching hub 1-2:1.0: individual port over-current protection hub 1-2:1.0: Port indicators are not supported hub 1-2:1.0: power on to power good time: 100ms hub 1-2:1.0: hub controller current requirement: 100mA hub 1-2:1.0: local power source is lost (inactive) hub 1-2:1.0: no over-current condition exists hub 1-2:1.0: enabling power on all ports hub 1-2:1.0: power on: 0 hub 1-2:1.0: power on: 0 hub 1-2:1.0: transfer --> -75 usb 1-2: control timeout on ep0in Ok. This time I didn't try to load usb-storage. I also tried to plug and unplug the drive and the messages that I got were only these: --- dmesg-cold-boot.txt 2004-01-22 01:10:45.000000000 -0200 +++ dmesg-cold-boot-plug-replug.txt 2004-01-22 01:13:05.000000000 -0200 @@ -282,3 +282,8 @@ hub 1-2:1.0: power on: 0 hub 1-2:1.0: transfer --> -75 usb 1-2: control timeout on ep0in +drivers/usb/host/uhci-hcd.c: d400: suspend_hc +hub 1-2:1.0: hub_port_status failed (err = -110) +hub 1-2:1.0: initial port 1 status: ret = -110 +drivers/usb/host/uhci-hcd.c: d400: wakeup_hc +usb 1-2: control timeout on ep0in Ok, then I tried a warm boot after this and got the following differences in the logs. I don't know if they say something significantly different, but I noticed some changes in status of port 2 between the logs. The diff below is relative to the situation when I have not yet plugged the drive, but only loaded the uhci-hcd module: --- dmesg-cold-boot.txt 2004-01-22 01:10:45.000000000 -0200 +++ dmesg-warm-boot.txt 2004-01-22 01:15:38.000000000 -0200 @@ -162,12 +162,12 @@ hub 1-0:1.0: port 1, status 300, change 3, 1.5 Mb/s hub 1-0:1.0: clear C_CONNECTION1 = 0 hub 1-0:1.0: initial port 2 status: ret = 0 -hub 1-0:1.0: port 2, status 300, change 3, 1.5 Mb/s +hub 1-0:1.0: port 2, status 100, change 3, 12 Mb/s hub 1-0:1.0: clear C_CONNECTION1 = 0 hub 1-0:1.0: initial port 1 status: ret = 0 hub 1-0:1.0: port 1 enable change, status 300 hub 1-0:1.0: initial port 2 status: ret = 0 -hub 1-0:1.0: port 2 enable change, status 300 +hub 1-0:1.0: port 2 enable change, status 100 hub 1-0:1.0: power on: 0 PCI: Found IRQ 9 for device 0000:00:04.3 PCI: Sharing IRQ 9 with 0000:00:04.2 @@ -244,16 +244,16 @@ hub 2-0:1.0: initial port 1 status: ret = 0 hub 2-0:1.0: port 1 enable change, status 300 hub 2-0:1.0: initial port 2 status: ret = 0 -drivers/usb/host/uhci-hcd.c: d400: wakeup_hc hub 1-0:1.0: initial port 1 status: ret = 0 hub 1-0:1.0: initial port 2 status: ret = 0 -hub 1-0:1.0: port 2, status 101, change 3, 12 Mb/s +hub 1-0:1.0: port 2, status 101, change 1, 12 Mb/s hub 1-0:1.0: clear C_CONNECTION1 = 0 -hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 -hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 -hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 -hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 -hub 1-0:1.0: port_status= 0, port 2 status 101 change 2 +hub 1-0:1.0: port_status= 0, port 2 status 101 change 0 +drivers/usb/host/uhci-hcd.c: d400: wakeup_hc +hub 1-0:1.0: port_status= 0, port 2 status 101 change 0 +hub 1-0:1.0: port_status= 0, port 2 status 101 change 0 +hub 1-0:1.0: port_status= 0, port 2 status 101 change 0 +hub 1-0:1.0: port_status= 0, port 2 status 101 change 0 hub 1-0:1.0: debounce: port 2: delay 100ms stable 4 status 0x101 hub 1-0:1.0: port reset = 0 hub 1-0:1.0: wait_reset 0, port 2, status 103, change 0 @@ -279,6 +279,5 @@ hub 1-2:1.0: no over-current condition exists hub 1-2:1.0: enabling power on all ports hub 1-2:1.0: power on: 0 -hub 1-2:1.0: power on: 0 hub 1-2:1.0: transfer --> -75 -usb 1-2: control timeout on ep0in +usb 1-2: control timeout on ep0out Ok, then, plugging the drive, unplugging the drive and replugging it in this very same warm boot session gives me the following additional lines (the last lines do seem scary): --- dmesg-warm-boot.txt 2004-01-22 01:15:38.000000000 -0200 +++ dmesg-warm-boot-plug-replug.txt 2004-01-22 01:17:46.000000000 -0200 @@ -281,3 +281,15 @@ hub 1-2:1.0: power on: 0 hub 1-2:1.0: transfer --> -75 usb 1-2: control timeout on ep0out +drivers/usb/host/uhci-hcd.c: d400: suspend_hc +hub 1-2:1.0: power on: -110 +drivers/usb/host/uhci-hcd.c: d400: wakeup_hc +hub 1-0:1.0: initial port 1 status: ret = 0 +hub 1-0:1.0: initial port 2 status: ret = 0 +hub 1-0:1.0: port 2, status 101, change 3, 12 Mb/s +hub 1-0:1.0: clear C_CONNECTION1 = 0 +usb 1-2: USB disconnect, address 2 +usb 1-2: usb_disable_device nuking all URBs +uhci_hcd 0000:00:04.2: shutdown urb d7694b00 pipe 40408280 ep1in-intr +usb 1-2: unregistering interface 1-2:1.0 +usb 1-2: hcd_unlink_urb d7694b00 fail -16 Does this help? I can simulate other situations with the drive, if you want me to. Thank you, Rogério. -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Rogério Brito - [EMAIL PROTECTED] - http://www.ime.usp.br/~rbrito =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ------------------------------------------------------- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel