Il Sun, Feb 18, 2007 at 11:24:18AM -0500, Alan Stern ha scritto:
> On Sat, 17 Feb 2007, Luca Tettamanti wrote:
>
> > Hello,
> > whenever I plug a mouse into my laptop I get this message:
> >
> > hub 1-0:1.0: Cannot enable port 5. Maybe the USB cable is bad?
> >
> > It happens with *any* mouse (which are probably all USB1) but memory
> > sticks works fine (because I only have USB2 devices here).
> >
> > It turned out to be an user error, since I "lost" the OHCI module and
> > only EHCI was enabled. Once OHCI driver is loaded the mouse is
> > recognized. Still, the message is confusing and suggests a hardware
> > failure.
>
> Does the same message still appear when ohci-hcd is loaded?
No, that's the point.
> > The "problem" is not new either (I tried kernels as old as 2.6.17), I
> > just noticed because previously I was using a PS2 mouse.
> >
> > It seems that EHCI controller is unable to drive old low speed devices,
>
> Correct. It can't drive full-speed devices either.
>
> > is it possible to just ignore them? Or maybe emitting a better
> > diagnostic message?
>
> It is not only possible -- it's supposed to happen! The fact that you get
> that message in your log means something is wrong on your system. Or
> maybe it means something is wrong with the hub driver; I'll have to try
> reproducing your experience.
>
> > Me loading EHCI, plugging the mouse, loading OHCI, plugging the mouse
> > again (this is 2.6-git-current):
>
> The log is useless for debugging unless you enable CONFIG_USB_DEBUG.
Ok, this is me plugging/unplugging the mouse with only ehci loaded:
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
ehci_hcd: block sizes: qh 128 qtd 96 itd 192 sitd 96
ACPI: PCI Interrupt 0000:00:03.3[D] -> Link [LNKH] -> GSI 9 (level, low) -> IRQ
9
ehci_hcd 0000:00:03.3: EHCI Host Controller
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file 'devices'
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '001'
ehci_hcd 0000:00:03.3: new USB bus registered, assigned bus number 1
ehci_hcd 0000:00:03.3: reset hcs_params 0x103206 dbg=1 cc=3 pcc=2 ordered !ppc
ports=6
ehci_hcd 0000:00:03.3: reset hcc_params 7070 thresh 7 uframes 1024
PCI: cache line size of 64 is not supported by device 0000:00:03.3
ehci_hcd 0000:00:03.3: supports USB remote wakeup
ehci_hcd 0000:00:03.3: irq 9, io mem 0xe5800000
ehci_hcd 0000:00:03.3: reset command 010002 (park)=0 ithresh=1 period=1024
Reset HALT
ehci_hcd 0000:00:03.3: init command 010001 (park)=0 ithresh=1 period=1024 RUN
ehci_hcd 0000:00:03.3: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: default language 0x0409
usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: EHCI Host Controller
usb usb1: Manufacturer: Linux 2.6.20-g8a03d9a4 ehci_hcd
usb usb1: SerialNumber: 0000:00:03.3
usb usb1: uevent
usb usb1: usb_probe_device
usb usb1: configuration #1 chosen from 1 choice
usb usb1: adding 1-0:1.0 (config #1, interface 0)
usb 1-0:1.0: uevent
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: 6 ports detected
hub 1-0:1.0: standalone hub
hub 1-0:1.0: no power switching (usb 1.0)
hub 1-0:1.0: individual port over-current protection
hub 1-0:1.0: Single TT
hub 1-0:1.0: TT requires at most 8 FS bit times (666 ns)
hub 1-0:1.0: power on to power good time: 20ms
hub 1-0:1.0: local power source is good
hub 1-0:1.0: trying to enable port power on non-switchable hub
hub 1-0:1.0: state 7 ports 6 chg 0000 evt 0000
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '001'
hub 1-0:1.0: state 7 ports 6 chg 0000 evt 0020
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port 5, status 0501, change 0001, 480 Mb/s
hub 1-0:1.0: debounce: port 5: total 100ms stable 100ms status 0x501
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
hub 1-0:1.0: Cannot enable port 5. Maybe the USB cable is bad?
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
hub 1-0:1.0: Cannot enable port 5. Maybe the USB cable is bad?
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
hub 1-0:1.0: Cannot enable port 5. Maybe the USB cable is bad?
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port_wait_reset: err = -22
hub 1-0:1.0: port 5 not enabled, trying reset again...
hub 1-0:1.0: Cannot enable port 5. Maybe the USB cable is bad?
hub 1-0:1.0: state 7 ports 6 chg 0000 evt 0020
hub 1-0:1.0: state 7 ports 6 chg 0000 evt 0020
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001002 POWER sig=se0 CSC
hub 1-0:1.0: port 5, status 0100, change 0001, 12 Mb/s
hub 1-0:1.0: debounce: port 5: total 100ms stable 100ms status 0x100
Now I load ohci module and plug the mouse:
ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
ohci_hcd: block sizes: ed 64 td 64
ACPI: PCI Interrupt 0000:00:03.0[A] -> Link [LNKE] -> GSI 9 (level, low) -> IRQ
9
ohci_hcd 0000:00:03.0: OHCI Host Controller
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '002'
ohci_hcd 0000:00:03.0: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:03.0: created debug files
ohci_hcd 0000:00:03.0: irq 9, io mem 0xe7000000
ohci_hcd 0000:00:03.0: resetting from state 'reset', control = 0x0
ohci_hcd 0000:00:03.0: enabling initreset quirk
ohci_hcd 0000:00:03.0: OHCI controller state
ohci_hcd 0000:00:03.0: OHCI 1.0, NO legacy support registers
ohci_hcd 0000:00:03.0: control 0x083 HCFS=operational CBSR=3
ohci_hcd 0000:00:03.0: cmdstatus 0x00000 SOC=0
ohci_hcd 0000:00:03.0: intrstatus 0x00000004 SF
ohci_hcd 0000:00:03.0: intrenable 0x8000004a MIE RHSC RD WDH
ohci_hcd 0000:00:03.0: hcca frame #0005
ohci_hcd 0000:00:03.0: roothub.a 01000202 POTPGT=1 NPS NDP=2(2)
ohci_hcd 0000:00:03.0: roothub.b 00000000 PPCM=0000 DR=0000
ohci_hcd 0000:00:03.0: roothub.status 00008000 DRWE
ohci_hcd 0000:00:03.0: roothub.portstatus [0] 0x00000100 PPS
ohci_hcd 0000:00:03.0: roothub.portstatus [1] 0x00000100 PPS
usb usb2: default language 0x0409
usb usb2: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: OHCI Host Controller
usb usb2: Manufacturer: Linux 2.6.20-g8a03d9a4 ohci_hcd
usb usb2: SerialNumber: 0000:00:03.0
usb usb2: uevent
usb usb2: usb_probe_device
usb usb2: configuration #1 chosen from 1 choice
usb usb2: adding 2-0:1.0 (config #1, interface 0)
usb 2-0:1.0: uevent
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: no power switching (usb 1.0)
hub 2-0:1.0: global over-current protection
hub 2-0:1.0: power on to power good time: 2ms
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: trying to enable port power on non-switchable hub
hub 2-0:1.0: state 7 ports 2 chg 0000 evt 0000
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '001'
ACPI: PCI Interrupt 0000:00:03.1[B] -> Link [LNKF] -> GSI 9 (level, low) -> IRQ
9
ohci_hcd 0000:00:03.1: OHCI Host Controller
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '003'
ohci_hcd 0000:00:03.1: new USB bus registered, assigned bus number 3
ohci_hcd 0000:00:03.1: created debug files
ohci_hcd 0000:00:03.1: irq 9, io mem 0xe6800000
ohci_hcd 0000:00:03.1: resetting from state 'reset', control = 0x0
ohci_hcd 0000:00:03.1: enabling initreset quirk
ohci_hcd 0000:00:03.1: OHCI controller state
ohci_hcd 0000:00:03.1: OHCI 1.0, NO legacy support registers
ohci_hcd 0000:00:03.1: control 0x083 HCFS=operational CBSR=3
ohci_hcd 0000:00:03.1: cmdstatus 0x00000 SOC=0
ohci_hcd 0000:00:03.1: intrstatus 0x00000004 SF
ohci_hcd 0000:00:03.1: intrenable 0x8000004a MIE RHSC RD WDH
ohci_hcd 0000:00:03.1: hcca frame #0005
ohci_hcd 0000:00:03.1: roothub.a 01000202 POTPGT=1 NPS NDP=2(2)
ohci_hcd 0000:00:03.1: roothub.b 00000000 PPCM=0000 DR=0000
ohci_hcd 0000:00:03.1: roothub.status 00008000 DRWE
ohci_hcd 0000:00:03.1: roothub.portstatus [0] 0x00000100 PPS
ohci_hcd 0000:00:03.1: roothub.portstatus [1] 0x00000100 PPS
usb usb3: default language 0x0409
usb usb3: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb3: Product: OHCI Host Controller
usb usb3: Manufacturer: Linux 2.6.20-g8a03d9a4 ohci_hcd
usb usb3: SerialNumber: 0000:00:03.1
usb usb3: uevent
usb usb3: usb_probe_device
usb usb3: configuration #1 chosen from 1 choice
usb usb3: adding 3-0:1.0 (config #1, interface 0)
usb 3-0:1.0: uevent
hub 3-0:1.0: usb_probe_interface
hub 3-0:1.0: usb_probe_interface - got id
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 2 ports detected
hub 3-0:1.0: standalone hub
hub 3-0:1.0: no power switching (usb 1.0)
hub 3-0:1.0: global over-current protection
hub 3-0:1.0: power on to power good time: 2ms
hub 3-0:1.0: local power source is good
hub 3-0:1.0: no over-current condition exists
hub 3-0:1.0: trying to enable port power on non-switchable hub
hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0000
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '001'
ACPI: PCI Interrupt 0000:00:03.2[C] -> Link [LNKG] -> GSI 9 (level, low) -> IRQ
9
ohci_hcd 0000:00:03.2: OHCI Host Controller
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '004'
ohci_hcd 0000:00:03.2: new USB bus registered, assigned bus number 4
ohci_hcd 0000:00:03.2: created debug files
ohci_hcd 0000:00:03.2: irq 9, io mem 0xe6000000
ohci_hcd 0000:00:03.2: resetting from state 'reset', control = 0x0
ohci_hcd 0000:00:03.2: enabling initreset quirk
ohci_hcd 0000:00:03.2: OHCI controller state
ohci_hcd 0000:00:03.2: OHCI 1.0, NO legacy support registers
ohci_hcd 0000:00:03.2: control 0x083 HCFS=operational CBSR=3
ohci_hcd 0000:00:03.2: cmdstatus 0x00000 SOC=0
ohci_hcd 0000:00:03.2: intrstatus 0x00000004 SF
ohci_hcd 0000:00:03.2: intrenable 0x8000004a MIE RHSC RD WDH
ohci_hcd 0000:00:03.2: hcca frame #0005
ohci_hcd 0000:00:03.2: roothub.a 01000202 POTPGT=1 NPS NDP=2(2)
ohci_hcd 0000:00:03.2: roothub.b 00000000 PPCM=0000 DR=0000
ohci_hcd 0000:00:03.2: roothub.status 00008000 DRWE
ohci_hcd 0000:00:03.2: roothub.portstatus [0] 0x00000100 PPS
ohci_hcd 0000:00:03.2: roothub.portstatus [1] 0x00000100 PPS
usb usb4: default language 0x0409
usb usb4: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb4: Product: OHCI Host Controller
usb usb4: Manufacturer: Linux 2.6.20-g8a03d9a4 ohci_hcd
usb usb4: SerialNumber: 0000:00:03.2
usb usb4: uevent
usb usb4: usb_probe_device
usb usb4: configuration #1 chosen from 1 choice
usb usb4: adding 4-0:1.0 (config #1, interface 0)
usb 4-0:1.0: uevent
hub 4-0:1.0: usb_probe_interface
hub 4-0:1.0: usb_probe_interface - got id
hub 4-0:1.0: USB hub found
hub 4-0:1.0: 2 ports detected
hub 4-0:1.0: standalone hub
hub 4-0:1.0: no power switching (usb 1.0)
hub 4-0:1.0: global over-current protection
hub 4-0:1.0: power on to power good time: 2ms
hub 4-0:1.0: local power source is good
hub 4-0:1.0: no over-current condition exists
hub 4-0:1.0: trying to enable port power on non-switchable hub
hub 4-0:1.0: state 7 ports 2 chg 0000 evt 0000
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '001'
ohci_hcd 0000:00:03.0: auto-stop root hub
ohci_hcd 0000:00:03.1: auto-stop root hub
ohci_hcd 0000:00:03.2: auto-stop root hub
hub 1-0:1.0: state 7 ports 6 chg 0000 evt 0020
ehci_hcd 0000:00:03.3: GetStatus port 5 status 001403 POWER sig=k CSC CONNECT
hub 1-0:1.0: port 5, status 0501, change 0001, 480 Mb/s
hub 1-0:1.0: debounce: port 5: total 100ms stable 100ms status 0x501
ehci_hcd 0000:00:03.3: port 5 low speed --> companion
ohci_hcd 0000:00:03.1: auto-wakeup root hub
ehci_hcd 0000:00:03.3: GetStatus port 5 status 003002 POWER OWNER sig=se0 CSC
hub 1-0:1.0: state 7 ports 6 chg 0000 evt 0020
hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0004
ohci_hcd 0000:00:03.1: GetStatus roothub.portstatus [1] = 0x00010301 CSC LSDA
PPS CCS
hub 3-0:1.0: port 2, status 0301, change 0001, 1.5 Mb/s
hub 3-0:1.0: debounce: port 2: total 100ms stable 100ms status 0x301
ohci_hcd 0000:00:03.1: GetStatus roothub.portstatus [1] = 0x00100303 PRSC LSDA
PPS PES CCS
usb 3-2: new low speed USB device using ohci_hcd and address 2
ohci_hcd 0000:00:03.1: GetStatus roothub.portstatus [1] = 0x00100303 PRSC LSDA
PPS PES CCS
usb 3-2: skipped 1 descriptor after interface
usb 3-2: default language 0x0409
usb 3-2: new device strings: Mfr=1, Product=2, SerialNumber=0
usb 3-2: Product: 3D USB Mouse
usb 3-2: Manufacturer: Agiler
usb 3-2: uevent
usb 3-2: usb_probe_device
usb 3-2: configuration #1 chosen from 1 choice
usb 3-2: adding 3-2:1.0 (config #1, interface 0)
usb 3-2:1.0: uevent
/home/kronos/src/linux-2.6/drivers/usb/core/inode.c: creating file '002'
hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0004
usbhid 3-2:1.0: usb_probe_interface
usbhid 3-2:1.0: usb_probe_interface - got id
input: Agiler 3D USB Mouse as /class/input/input6
input: USB HID v1.00 Mouse [Agiler 3D USB Mouse] on usb-0000:00:03.1-2
usbcore: registered new interface driver usbhid
/home/kronos/src/linux-2.6/drivers/usb/input/hid-core.c: v2.6:USB HID core
driver
hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0004
ohci_hcd 0000:00:03.1: GetStatus roothub.portstatus [1] = 0x00030300 PESC CSC
LSDA PPS
hub 3-0:1.0: port 2, status 0300, change 0003, 1.5 Mb/s
usb 3-2: USB disconnect, address 2
usb 3-2: unregistering device
usb 3-2: usb_disable_device nuking all URBs
usb 3-2: unregistering interface 3-2:1.0
usbdev3.2_ep81: ep_device_release called for usbdev3.2_ep81
usb 3-2:1.0: uevent
usbdev3.2_ep00: ep_device_release called for usbdev3.2_ep00
usb 3-2: uevent
hub 3-0:1.0: debounce: port 2: total 100ms stable 100ms status 0x300
ohci_hcd 0000:00:03.1: auto-stop root hub
Luca
--
"La Via prosegue senza fine."
Bilbo Baggins - Il Signore degli Anelli - J.R.R. Tolkien
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel