Bug 68090

Summary: EHCI is not working with Intel 82801DB (ICH4)
Product: Base System Reporter: Alexei Khalimov <lesha>
Component: i386Assignee: freebsd-i386 (Nobody) <i386>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 5.2-CURRENT   
Hardware: Any   
OS: Any   

Description Alexei Khalimov 2004-06-18 21:20:23 UTC
Today I have decided to give EHCI another try.
This time with SONY "MicroVault" USB mass storage device.
Well, guess what - it is also not working ;-(


uhci0: <Intel 82801DB (ICH4) USB controller USB-A> port 0xdf20-0xdf3f irq 11 at device 29.0 on pci0
uhci0: [GIANT-LOCKED]
usb0: <Intel 82801DB (ICH4) USB controller USB-A> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered

[ 2 more identical entries skipped ]

usb3: EHCI version 1.0
usb3: companion controllers, 2 ports each: usb0 usb1 usb2
usb3: <EHCI (generic) USB 2.0 controller> on ehci0
usb3: USB revision 2.0
uhub3: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub3: 6 ports with 6 removable, self powered

uhub4: Sony USB Embedded Hub, class 9/0, rev 2.00/0.01, addr 2
uhub4: 1 port with 0 removable, self powered
uhub4: cannot open interrupt pipe
device_attach: uhub4 attach returned 6

--------

Last time I have tried with Agrosy USB 2.0 extrenal HDD enclosure
All it gives me:
uhub3: port 1, set config at addr 2 failed
uhub3: device problem, disabling port 1

Fix: 

Unknown
How-To-Repeat: Get yourself Intel 82801DB (ICH4) based Mainboard or Laptop
install 5.2.1-R, cvsup to -CURRENT, enable EHCI in kernel

Try to insert any USB 2.0 device
Comment 1 le freebsd_committer freebsd_triage 2004-07-19 22:01:40 UTC
State Changed
From-To: open->feedback

There have been made some commits to the USB stack that should 
improve EHCI handling.  Can you confirm that this problem still exists? 
I have no problem with a USB2.0 disk on -CURRENT.
Comment 2 Alexei Khalimov 2004-07-19 22:13:57 UTC
Lukas,

now USB2.0 (Agrosy) disk connects ok, but stops responding
after transfering about 50M of data with:
  da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
  umass0: Invalid CSW: tag 442 should be 449

disk is detected as:
 umass0: vendor 0x0840 USB 2.0 Storage Device, rev 2.00/0.01, addr 2
 umass0: SCSI over Bulk-Only; quirks = 0x0000
 umass0:3:0:-1: Attached to scbus3
 da0 at umass-sim0 bus 0 target 0 lun 0
 da0: <USB 2.0 Storage Device 0100> Fixed Direct Access SCSI-0 device
 da0: 1.000MB/s transfers
 da0: 78533MB (160836480 512 byte sectors: 255H 63S/T 10011C)
which is correct, only not sure about 1Mb/s, it gives me about 6-7Mb/s rate

Sony Memory stick won't work, as I assume USB2.0 hubs are not yet supported.

-- 
perl -e 'print unpack("u","1;&5S:&%`:6YT97)C868N<G4`");'
Comment 3 le freebsd_committer freebsd_triage 2004-07-23 14:39:16 UTC
State Changed
From-To: feedback->closed

Close this PR, as the primary problem seems to be fixed. 

It was already reported on the mailing lists that EHCI devices 
stop working after transferring larger amounts of data, so this might 
be worth a separate PR.