Bug 12707
Summary: | some USB2.0 devices pluged on USB2.0 ports are managed at low speed | ||
---|---|---|---|
Product: | Drivers | Reporter: | Thierry Vignaud (thierry.vignaud) |
Component: | USB | Assignee: | Greg Kroah-Hartman (greg) |
Status: | RESOLVED INVALID | ||
Severity: | high | CC: | alan, obones, s.witzel, tjcwtjcw |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.30-rcX (2.6.22 -) | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: | dmesg output |
Description
Thierry Vignaud
2009-02-15 04:01:36 UTC
On Sun, Feb 15, 2009 at 04:01:37AM -0800, bugme-daemon@bugzilla.kernel.org wrote: > Some USB2.0 devices are dead slow b/c the kernel thinks they're USB1.0. > Looking at dmesg, one can spot the following (note the last line): > > Intel ICH 0000:00:02.7: PCI INT C -> GSI 18 (level, low) -> IRQ 18 > ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver > input: PC Speaker as /class/input/input3 > ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver > Warning! ehci_hcd should always be loaded before uhci_hcd and ohci_hc Please follow the warning that the kernel is giving you and load ehci-hcd before uhci-hcd and ohci-hcd, that should solve this problem. > With modularized modules, udev doesn't enforce loading ehci before ohci/uhci. > It looks like when ohci is loaded first, the kernel sometimes do the wrong > thing. Put a line in your /etc/modprobe.conf to load ehci-hcd before the other two and udev will do so automatically. Created attachment 20348 [details]
dmesg output
This doesn't help. I had already previously tried building ehci as core module and the like. In the above 2.6.29-rc5 dmesg output, one can see that echci is loaded first. However, the first time the USB2 disc is plugged, it's handled as USB1: usb 2-2: new full speed USB device using ohci_hcd and address 2 usb 2-2: not running at top speed; connect to a high speed hub usb 2-2: New USB device found, idVendor=059f, idProduct=0341 The second time, it's handled as USB2: usb 1-3: new high speed USB device using ehci_hcd and address 109 usb 1-3: New USB device found, idVendor=059f, idProduct=0341 usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 Using the same damn physical port... Still valid. It still sometimes randomly connect as USB1 on the same physical port. As I said, a kernel with ehci in core will just not see it in that case until ohci_hcd is loaded (with tons of "hub 1-0:1.0: unable to enumerate USB device on port 2" messages) Here is what looks like the same problem on an OpenSuse 11.2 (2.6.31.8-0.1-desktop x86_64 Intel Atom) system. This shows a DVD writer being correctly detected as USB 2.0, and a hard disk being wrongly detected as USB 1.1 . Both devices really support USB 2.0, and both are connected to 'motherboard' USB sockets in the obvious way. [ 2.144566] device-mapper: ioctl: 4.15.0-ioctl (2009-04-01) initialised: dm-devel@redhat.com [ 2.178233] udev: starting version 146 [ 2.341079] usb 1-1: new high speed USB device using ehci_hcd and address 3 [ 2.538064] usb 1-1: device descriptor read/64, error -71 [ 2.837064] usb 1-1: device descriptor read/64, error -71 [ 3.040070] usb 1-1: new high speed USB device using ehci_hcd and address 4 [ 3.505045] usb 1-1: device not accepting address 4, error -71 [ 3.528068] md: linear personality registered for level -1 [ 3.606049] usb 1-1: new high speed USB device using ehci_hcd and address 5 [ 3.837918] PM: Marking nosave pages: 000000000009f000 - 0000000000100000 [ 3.837935] PM: Basic memory bitmaps created [ 3.901229] PM: Basic memory bitmaps freed [ 3.925385] PM: Starting manual resume from disk [ 3.925395] PM: Resume from partition 253:3 [ 3.925400] PM: Checking hibernation image. [ 3.925645] PM: Resume from disk failed. [ 4.068040] usb 1-1: device not accepting address 5, error -71 [ 4.068194] hub 1-0:1.0: unable to enumerate USB device on port 1 [ 4.091721] EXT4-fs (dm-1): barriers enabled [ 4.092065] kjournald2 starting: pid 327, dev dm-1:8, commit interval 5 seconds [ 4.092588] EXT4-fs (dm-1): internal journal on dm-1:8 [ 4.092598] EXT4-fs (dm-1): delayed allocation enabled [ 4.092606] EXT4-fs: file extents enabled [ 4.097812] EXT4-fs: mballoc enabled [ 4.097856] EXT4-fs (dm-1): mounted filesystem with ordered data mode [ 4.176062] usb 1-3: new high speed USB device using ehci_hcd and address 6 [ 4.311090] usb 1-3: New USB device found, idVendor=152e, idProduct=2507 [ 4.311106] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 4.311119] usb 1-3: Product: Super Multi Rewriter [ 4.311128] usb 1-3: Manufacturer: HLDS Inc. [ 4.311138] usb 1-3: SerialNumber: P01061024184203 [ 4.311459] usb 1-3: configuration #1 chosen from 1 choice [ 4.312046] scsi6 : SCSI emulation for USB Mass Storage devices [ 4.312326] usb-storage: device found at 6 [ 4.312335] usb-storage: waiting for device to settle before scanning [ 4.573052] usb 2-1: new full speed USB device using ohci_hcd and address 2 [ 4.766405] usb 2-1: not running at top speed; connect to a high speed hub [ 4.867436] usb 2-1: New USB device found, idVendor=07ab, idProduct=fcfe [ 4.867447] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 4.867455] usb 2-1: Product: Freecom Hard Drive [ 4.867461] usb 2-1: Manufacturer: Freecom [ 4.867466] usb 2-1: SerialNumber: 01BC0E5601300 [ 4.867708] usb 2-1: configuration #1 chosen from 1 choice [ 4.870744] scsi7 : SCSI emulation for USB Mass Storage devices [ 4.870970] usb-storage: device found at 2 [ 4.870978] usb-storage: waiting for device to settle before scanning [ 5.348951] scsi 6:0:0:0: CD-ROM HL-DT-ST DVDRAM GSA-E10N JE07 PQ: 0 ANSI: 0 [ 5.350223] usb-storage: device scan complete [ 5.909618] scsi 7:0:0:0: Direct-Access SAMSUNG HD400LD WQ10 PQ: 0 ANSI: 0 [ 5.920646] sd 7:0:0:0: [sdb] 781422768 512-byte logical blocks: (400 GB/372 GiB) Hello, I'm also seeing the same warning on a Mandriva 2010.0 with all the latest updates on an x64 system. Kernel id is 2.6.31.12-desktop-2mnb All USB bugs should be sent to the linux-usb@vger.kernel.org mailing list, and not entered into bugzilla. Please bring this issue up there, if it is still a problem in the latest kernel release. |