Can't attach EHCI devices in VirtualBox guest

Scott Mitchell scott+lists.freebsd at fishballoon.org
Sun Aug 29 12:47:24 UTC 2010


Hi all,

Having some problems getting any EHCI devices to attach to an 8.1/amd64 
machine running as a VirtualBox guest.  This is VirtualBox 3.2.8 "PUEL" 
edition (i.e. *not* the open-source version) running on an Ubuntu 10.04 host, 
also amd64.

I have these four devices plugged in and the VM configured to claim them:

- 128MB no-brand flash drive, USB1
- 2GB no-brand flash drive, USB2
- 300GB Seagate hard disk, USB2
- 1.5TB WD hard disk, USB2

Full log is below (dmesg_bad.boot) but essentially the USB1 device attaches 
fine while all the USB2 devices fail with an error of the form:

uhub_reattach_port: port 1 reset failed, error=USB_ERR_TIMEOUT
uhub_reattach_port: device problem (USB_ERR_TIMEOUT), disabling port 1

None of the USB2 devices show up in "usbconfig list".

If I disable the VirtualBox EHCI controller, all four devices attach as USB1 
(see dmesg_good.boot below)

The same four devices work fine on:
- Ubuntu amd64 10.04 booted into the same VirtualBox VM from a live CD
- 8.1 amd64 installed as a VMWare Server 2.0.2 guest on the same Ubuntu host
- Directly on the Ubuntu host
- On real hardware running FreeBSD i386 6.x and 7.x (I don't have anything 
  real running 8.x right now)

No idea if this is a VirtualBox or FreeBSD problem (although I'd guess a 
combination of the two) or how to go about fixing it, but happy to try any 
experiments.  I'm not set up to build -CURRENT just now but can do that if 
needed.  Likewise I can fire up other versions of FreeBSD under either VM 
environment if necessary.  I have not tried setting any quirks for any of the 
devices, partly because I don't know what to try but mostly because this 
wasn't necessary in any other environment where these devices do work.

This isn't a showstopper for me as I can keep using VMWare, but I have other 
issues with that and I would *like* to eventually move over to VirtualBox - so 
any suggestions would be much appreciated.

Many thanks,

	Scott


===== dmesg_bad.boot =====
Copyright (c) 1992-2010 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 8.1-RELEASE #0: Mon Jul 19 02:36:49 UTC 2010
    root at mason.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz (2997.06-MHz K8-class 
CPU)
  Origin = "GenuineIntel"  Id = 0x10676  Family = 6  Model = 17  Stepping = 6
  Features=0x783fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE,SSE2>
  Features2=0x209<SSE3,MON,SSSE3>
  AMD Features=0x20100800<SYSCALL,NX,LM>
  AMD Features2=0x1<LAHF>
  TSC: P-state invariant
real memory  = 1073676288 (1023 MB)
avail memory = 1018789888 (971 MB)
ACPI APIC Table: <VBOX   VBOXAPIC>
ioapic0: Changing APIC ID to 1
MADT: Forcing active-low polarity and level trigger for SCI
ioapic0 <Version 1.1> irqs 0-23 on motherboard
kbd1 at kbdmux0
acpi0: <VBOX VBOXXSDT> on motherboard
acpi0: [ITHREAD]
acpi0: Power Button (fixed)
acpi0: Sleep Button (fixed)
Timecounter "ACPI-safe" frequency 3579545 Hz quality 850
acpi_timer0: <32-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0
cpu0: <ACPI CPU> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
isab0: <PCI-ISA bridge> at device 1.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 UDMA33 controller> port 
0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xd000-0xd00f at device 1.1 on pci0
ata0: <ATA channel 0> on atapci0
ata0: [ITHREAD]
ata1: <ATA channel 1> on atapci0
ata1: [ITHREAD]
vgapci0: <VGA-compatible display> mem 0xe0000000-0xe0ffffff irq 18 at device 
2.0 on pci0
em0: <Intel(R) PRO/1000 Legacy Network Connection 1.0.1> port 0xd010-0xd017 
mem 0xf0000000-0xf001ffff irq 19 at device 3.0 on pci0
em0: [FILTER]
em0: Ethernet address: 08:00:27:b1:fe:25
pci0: <base peripheral> at device 4.0 (no driver attached)
ohci0: <OHCI (generic) USB controller> mem 0xf0804000-0xf0804fff irq 22 at 
device 6.0 on pci0
ohci0: [ITHREAD]
usbus0: <OHCI (generic) USB controller> on ohci0
pci0: <bridge> at device 7.0 (no driver attached)
ehci0: <Intel 82801FB (ICH6) USB 2.0 controller> mem 0xf0805000-0xf0805fff irq 
19 at device 11.0 on pci0
ehci0: [ITHREAD]
usbus1: EHCI version 1.0
usbus1: <Intel 82801FB (ICH6) USB 2.0 controller> on ehci0
acpi_acad0: <AC Adapter> on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
atkbd0: [ITHREAD]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: [ITHREAD]
psm0: model IntelliMouse Explorer, device ID 4
orm0: <ISA Option ROMs> at iomem 0xc0000-0xc8fff,0xe2000-0xe2fff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
atrtc0: <AT Real Time Clock> at port 0x70 irq 8 on isa0
ppc0: cannot reserve I/O port range
Timecounter "TSC" frequency 2997060234 Hz quality 800
Timecounters tick every 10.000 msec
usbus0: 12Mbps Full Speed USB v1.0
usbus1: 480Mbps High Speed USB v2.0
ad0: 20480MB <VBOX HARDDISK 1.0> at ata0-master UDMA33 
ugen0.1: <Apple> at usbus0
uhub0: <Apple OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
ugen1.1: <Intel> at usbus1
uhub1: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1
acd0: DVDROM <VBOX CD-ROM/1.0> at ata1-master UDMA33 
Root mount waiting for: usbus1 usbus0
uhub0: 8 ports with 8 removable, self powered
Root mount waiting for: usbus1 usbus0
ugen0.2: <Generic> at usbus0
umass0: <Generic Mass Storage Device, class 0/0, rev 1.10/1.00, addr 2> on 
usbus0
umass0:  SCSI over Bulk-Only; quirks = 0x0000
umass0: Get Max Lun not supported (USB_ERR_SHORT_XFER)
Root mount waiting for: usbus1 usbus0
umass0:0:0:-1: Attached to scbus0
Root mount waiting for: usbus1
uhub1: 8 ports with 8 removable, self powered
da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
da0: <TwinMOS Mobile Disk 7.77> Removable Direct Access SCSI-2 device 
da0: 1.000MB/s transfers
da0: 125MB (256000 512 byte sectors: 64H 32S/T 125C)
GEOM: da0: partition 1 does not end on a track boundary.
Root mount waiting for: usbus1
uhub_reattach_port: port 1 reset failed, error=USB_ERR_TIMEOUT
uhub_reattach_port: device problem (USB_ERR_TIMEOUT), disabling port 1
Trying to mount root from ufs:/dev/ad0s1a
uhub_reattach_port: port 2 reset failed, error=USB_ERR_TIMEOUT
uhub_reattach_port: device problem (USB_ERR_TIMEOUT), disabling port 2

===== dmesg_good.boot =====
Copyright (c) 1992-2010 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 8.1-RELEASE #0: Mon Jul 19 02:36:49 UTC 2010
    root at mason.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz (2994.27-MHz K8-class 
CPU)
  Origin = "GenuineIntel"  Id = 0x10676  Family = 6  Model = 17  Stepping = 6
  Features=0x783fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE,SSE2>
  Features2=0x209<SSE3,MON,SSSE3>
  AMD Features=0x20100800<SYSCALL,NX,LM>
  AMD Features2=0x1<LAHF>
  TSC: P-state invariant
real memory  = 1073676288 (1023 MB)
avail memory = 1018789888 (971 MB)
ACPI APIC Table: <VBOX   VBOXAPIC>
ioapic0: Changing APIC ID to 1
MADT: Forcing active-low polarity and level trigger for SCI
ioapic0 <Version 1.1> irqs 0-23 on motherboard
kbd1 at kbdmux0
acpi0: <VBOX VBOXXSDT> on motherboard
acpi0: [ITHREAD]
acpi0: Power Button (fixed)
acpi0: Sleep Button (fixed)
Timecounter "ACPI-safe" frequency 3579545 Hz quality 850
acpi_timer0: <32-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0
cpu0: <ACPI CPU> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
isab0: <PCI-ISA bridge> at device 1.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 UDMA33 controller> port 
0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xd000-0xd00f at device 1.1 on pci0
ata0: <ATA channel 0> on atapci0
ata0: [ITHREAD]
ata1: <ATA channel 1> on atapci0
ata1: [ITHREAD]
vgapci0: <VGA-compatible display> mem 0xe0000000-0xe0ffffff irq 18 at device 
2.0 on pci0
em0: <Intel(R) PRO/1000 Legacy Network Connection 1.0.1> port 0xd010-0xd017 
mem 0xf0000000-0xf001ffff irq 19 at device 3.0 on pci0
em0: [FILTER]
em0: Ethernet address: 08:00:27:b1:fe:25
pci0: <base peripheral> at device 4.0 (no driver attached)
ohci0: <OHCI (generic) USB controller> mem 0xf0804000-0xf0804fff irq 22 at 
device 6.0 on pci0
ohci0: [ITHREAD]
usbus0: <OHCI (generic) USB controller> on ohci0
pci0: <bridge> at device 7.0 (no driver attached)
acpi_acad0: <AC Adapter> on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
atkbd0: [ITHREAD]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: [ITHREAD]
psm0: model IntelliMouse Explorer, device ID 4
orm0: <ISA Option ROMs> at iomem 0xc0000-0xc8fff,0xe2000-0xe2fff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
atrtc0: <AT Real Time Clock> at port 0x70 irq 8 on isa0
ppc0: cannot reserve I/O port range
Timecounter "TSC" frequency 2994272198 Hz quality 800
Timecounters tick every 10.000 msec
usbus0: 12Mbps Full Speed USB v1.0
ad0: 20480MB <VBOX HARDDISK 1.0> at ata0-master UDMA33 
ugen0.1: <Apple> at usbus0
uhub0: <Apple OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
acd0: DVDROM <VBOX CD-ROM/1.0> at ata1-master UDMA33 
Root mount waiting for: usbus0
uhub0: 8 ports with 8 removable, self powered
Root mount waiting for: usbus0
ugen0.2: <Generic> at usbus0
umass0: <Generic Mass Storage Device, class 0/0, rev 1.10/1.00, addr 2> on 
usbus0
umass0:  SCSI over Bulk-Only; quirks = 0x0000
umass0: Get Max Lun not supported (USB_ERR_SHORT_XFER)
Root mount waiting for: usbus0
umass0:0:0:-1: Attached to scbus0
Root mount waiting for: usbus0
da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
da0: <TwinMOS Mobile Disk 7.77> Removable Direct Access SCSI-2 device 
da0: 1.000MB/s transfers
da0: 125MB (256000 512 byte sectors: 64H 32S/T 125C)
ugen0.3: <SMI Corporation> at usbus0
umass1: <SMI Corporation USB DISK, class 0/0, rev 1.10/11.00, addr 3> on 
usbus0
umass1:  SCSI over Bulk-Only; quirks = 0x0000
GEOM: da0: partition 1 does not end on a track boundary.
umass1:1:1:-1: Attached to scbus1
da1 at umass-sim1 bus 1 scbus1 target 0 lun 0
da1: <Easy Disk 1100> Removable Direct Access SCSI-0 device 
da1: 1.000MB/s transfers
da1: 1935MB (3963904 512 byte sectors: 255H 63S/T 246C)
GEOM: da1: partition 1 does not start on a track boundary.
GEOM: da1: partition 1 does not end on a track boundary.
ugen0.4: <Seagate> at usbus0
umass2: <Seagate ST94811U2-RK, class 0/0, rev 1.10/2.00, addr 4> on usbus0
umass2:  SCSI over Bulk-Only; quirks = 0x0000
umass2:2:2:-1: Attached to scbus2
da2 at umass-sim2 bus 2 scbus2 target 0 lun 0
da2: <ST330063 1A 3.04> Fixed Direct Access SCSI-0 device 
da2: 1.000MB/s transfers
da2: 286168MB (586072368 512 byte sectors: 255H 63S/T 36481C)
ugen0.5: <Western Digital> at usbus0
umass3: <Western Digital External HDD, class 0/0, rev 1.10/1.75, addr 5> on 
usbus0
umass3:  SCSI over Bulk-Only; quirks = 0x0000
Root mount waiting for: usbus0
umass3:3:3:-1: Attached to scbus3
Trying to mount root from ufs:/dev/ad0s1a
da3 at umass-sim3 bus 3 scbus3 target 0 lun 0
da3: <WD 15EADS External 1.75> Fixed Direct Access SCSI-4 device 
da3: 1.000MB/s transfers
da3: 1430799MB (2930277168 512 byte sectors: 255H 63S/T 182401C)

===== usbconfig_bad.out =====
ugen0.1: <OHCI root HUB Apple> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) 
pwr=ON
ugen1.1: <EHCI root HUB Intel> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) 
pwr=ON
ugen0.2: <Mass Storage Device Generic> at usbus0, cfg=0 md=HOST spd=FULL 
(12Mbps) pwr=ON

===== usbconfig_good.out =====
ugen0.1: <OHCI root HUB Apple> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) 
pwr=ON
ugen0.2: <Mass Storage Device Generic> at usbus0, cfg=0 md=HOST spd=FULL 
(12Mbps) pwr=ON
ugen0.3: <USB DISK SMI Corporation> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) 
pwr=ON
ugen0.4: <ST94811U2-RK Seagate> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) 
pwr=ON
ugen0.5: <External HDD Western Digital> at usbus0, cfg=0 md=HOST spd=FULL 
(12Mbps) pwr=ON


More information about the freebsd-usb mailing list