Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 14 Mar 2015 15:53:35 +1100 (EST)
From:      Ian Smith <smithi@nimnet.asn.au>
To:        The Lost Admin <thelostadmin@gmail.com>
Cc:        freebsd-questions@freebsd.org
Subject:   FreeBSD 9.3 is not recognizing USB 2.0 peripherals (or maybe USB2 bus)
Message-ID:  <20150314144238.N29188@sola.nimnet.asn.au>
In-Reply-To: <mailman.77.1426161601.96255.freebsd-questions@freebsd.org>
References:  <mailman.77.1426161601.96255.freebsd-questions@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
In freebsd-questions Digest, Vol 562, Issue 4, Message: 3
On Wed, 11 Mar 2015 18:43:03 -0400 The Lost Admin <thelostadmin@gmail.com> wrote:
 > Hi all,
 > 
 > I?ve got a Zotac Zbox SD-ID12 (Intel Atop D525). According to the 
 > vendor specs it?s got 6 USB 2.0 ports. It?s spend the last few years 
 > sitting on a shelf running FreeBSD and getting periodic 
 > updates/upgrades and little else.
 > 
 > Currently at FreeBSD 9.3-RELEASE-p10.
 > 
 > Recently I decided to make use of some old USB2 hard drives I had 
 > lying around and turn the box into a basic NAS for my home network 
 > (nothing fancy just NFS). I got the NFS working without a hitch.
 > 
 > I attached the first of the USB 2.0 drives and it seamed really slow. 
 > Looking at /var/messages it indicates it?s running at USB 1 speeds:
 > 
 > da0 at umass-sim0 bus 0 scbus4 target 0 lun 0
 > da0: <WD My Passport 071A 2011> Fixed Direct Access SCSI-4 device 
 > da0: Serial Number 575851314136305639323030
 > da0: 1.000MB/s transfers
 > da0: 953842MB (1953468416 512 byte sectors: 255H 63S/T 121597C)
 > da0: quirks=0x2<NO_6_BYTE>
 > 
 > Further digging into dmesg suggests to me that FreeBSD is somehow 
 > either not finding or not using USB2 drivers.
 > 
 > For the sake of keeping this message short, the full verbose dmesg 
 > can be found here -> http://pastebin.com/sUxvCd0m ; it will expire in 
 > one month (April 11, 2015).

Unfortunately your dmesg is missing the top - these days you likely need 
to set kern.msgbufsize=98304 or at least >64K, to capture a full verbose 
boot; I have that in /boot/loader.conf or you can set it from the loader 
prompt - so it's not clear whether you're running a GENERIC kernel, but 
as you say 9.3-RELEASE-p10 I'll assume you probably do.  If not, and 
your kernel doesn't include device ehci, that's your problem solved :)

 > NOTES:
 > I have tried a variety of USB2 devices (CD R/W, usb hard drive, thumb 
 > drives). I have confirmed that all are detected and accessed as USB 
 > 2.0 devices on Windows 7, Mac OSX. I have also confirmed that Linux 
 > (Raspbian on a raspberry Pi) recognized and used the hard drive as a 
 > USB2.0 device.

Your dmesg shows:

uhci0: <Intel 82801G (ICH7) USB controller USB-A> port 0xd880-0xd89f irq 
 23 at device 29.0 on pci0
ioapic0: routing intpin 23 (PCI IRQ 23) to lapic 0 vector 55
uhci0: LegSup = 0x2f00
usbus0 on uhci0
usbus0: bpf attached
uhci0: usbpf: Attached

and the same for uhci1, uhci2 and uhci3.  If ehci (USB 2) were being 
detected you'd then expect to see something like, as here on 9.3-R:

ehci0: <Intel 82801I (ICH9) USB 2.0 controller> mem 0xf2926c00-0xf2926fff irq
 23 at device 26.7 on pci0
ioapic0: routing intpin 23 (PCI IRQ 23) to lapic 0 vector 55
usbus3: EHCI version 1.0
usbus3 on ehci0
usbus3: bpf attached
ehci0: usbpf: Attached

though on a different irq and usbus than the uhci ones.

 > I tried a few different cables just in case.
 > 
 > Also, I have been using FreeBSD since the 1990s and used to be pretty 
 > active at helping people on this list (a long time ago).

That's cool, but you don't need a credit balance to qualify :)

smithi@x200:~ % kldstat -v | grep ehci
                295 ehci/usbus
                287 pci/ehci
smithi@x200:~ % devinfo -v | grep ehci
        ehci0 pnpinfo vendor=0x8086 device=0x293c subvendor=0x17aa 
 subdevice=0x20f1 class=0x0c0320 at slot=26 function=7 handle=\_SB_.PCI0.EHC1
        ehci1 pnpinfo vendor=0x8086 device=0x293a subvendor=0x17aa 
 subdevice=0x20f1 class=0x0c0320 at slot=29 function=7 handle=\_SB_.PCI0.EHC0

If you've got ehci loaded then it's not being detected, which is weird 
indeed.  Report back with the output of those two commands?

cheers, Ian  (please cc me, I take questions as a digest)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150314144238.N29188>