Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 14 Mar 2015 10:24:52 -0400
From:      The Lost Admin <thelostadmin@gmail.com>
To:        "freebsd-questions@freebsd.org" <freebsd-questions@freebsd.org>
Subject:   Re: FreeBSD 9.3 is not recognizing USB 2.0 peripherals (or maybe USB2 bus)
Message-ID:  <0FFFB482-ACDF-4751-81E4-BD745BB79867@gmail.com>
In-Reply-To: <20150314144238.N29188@sola.nimnet.asn.au>
References:  <mailman.77.1426161601.96255.freebsd-questions@freebsd.org> <20150314144238.N29188@sola.nimnet.asn.au>

next in thread | previous in thread | raw e-mail | index | archive | help

On Mar 14, 2015, at 12:53 AM, Ian Smith <smithi@nimnet.asn.au> wrote:

> 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,
>>=20
>> I?ve got a Zotac Zbox SD-ID12 (Intel Atop D525). According to the=20
>> vendor specs it?s got 6 USB 2.0 ports. It?s spend the last few years=20=

>> sitting on a shelf running FreeBSD and getting periodic=20
>> updates/upgrades and little else.
>>=20
>> Currently at FreeBSD 9.3-RELEASE-p10.
>>=20
>> Recently I decided to make use of some old USB2 hard drives I had=20
>> lying around and turn the box into a basic NAS for my home network=20
>> (nothing fancy just NFS). I got the NFS working without a hitch.
>>=20
>> I attached the first of the USB 2.0 drives and it seamed really slow.=20=

>> Looking at /var/messages it indicates it?s running at USB 1 speeds:
>>=20
>> da0 at umass-sim0 bus 0 scbus4 target 0 lun 0
>> da0: <WD My Passport 071A 2011> Fixed Direct Access SCSI-4 device=20
>> da0: Serial Number 575851314136305639323030
>> da0: 1.000MB/s transfers
>> da0: 953842MB (1953468416 512 byte sectors: 255H 63S/T 121597C)
>> da0: quirks=3D0x2<NO_6_BYTE>
>>=20
>> Further digging into dmesg suggests to me that FreeBSD is somehow=20
>> either not finding or not using USB2 drivers.
>>=20
>> For the sake of keeping this message short, the full verbose dmesg=20
>> can be found here -> http://pastebin.com/sUxvCd0m ; it will expire in=20=

>> one month (April 11, 2015).
>=20
> Unfortunately your dmesg is missing the top - these days you likely =
need=20
> to set kern.msgbufsize=3D98304 or at least >64K, to capture a full =
verbose=20
> boot; I have that in /boot/loader.conf or you can set it from the =
loader=20
> prompt - so it's not clear whether you're running a GENERIC kernel, =
but=20
> as you say 9.3-RELEASE-p10 I'll assume you probably do.  If not, and=20=

> your kernel doesn't include device ehci, that's your problem solved :)

This is the top of a non-verbose DMESG. It will take some fiddling to =
get the verbose one out of the box because it=92s headless. NOTE: =
currently I have module_load eyries for ehci and ohci in loader.conf.

It is a GENERIC kernel.

Copyright (c) 1992-2014 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 9.3-RELEASE-p10 #0: Tue Feb 24 21:01:19 UTC 2015
    root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC i386
gcc version 4.2.1 20070831 patched [FreeBSD]
module_register: module pci/ehci already exists!
Module pci/ehci failed to register: 17
module_register: module pci/ohci already exists!
Module pci/ohci failed to register: 17
CPU: Intel(R) Atom(TM) CPU D525   @ 1.80GHz (1795.74-MHz 686-class CPU)
  Origin =3D "GenuineIntel"  Id =3D 0x106ca  Family =3D 0x6  Model =3D =
0x1c  Stepping =3D 10
  =
Features=3D0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE=
,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
  =
Features2=3D0x40e31d<SSE3,DTES64,MON,DS_CPL,TM2,SSSE3,CX16,xTPR,PDCM,MOVBE=
>
  AMD Features=3D0x20100000<NX,LM>
  AMD Features2=3D0x1<LAHF>
  TSC: P-state invariant, performance statistics
real memory  =3D 2147483648 (2048 MB)
avail memory =3D 2071896064 (1975 MB)
Event timer "LAPIC" quality 400
ACPI APIC Table: <122310 APIC1702>
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
FreeBSD/SMP: 1 package(s) x 2 core(s) x 2 HTT threads
 cpu0 (BSP): APIC ID:  0
 cpu1 (AP/HT): APIC ID:  1
 cpu2 (AP): APIC ID:  2
 cpu3 (AP/HT): APIC ID:  3
ioapic0: Changing APIC ID to 4
ioapic0 <Version 2.0> irqs 0-23 on motherboard
kbd1 at kbdmux0
acpi0: <122310 RSDT1702> on motherboard
acpi0: Power Button (fixed)
acpi0: reservation of fee00000, 1000 (3) failed
acpi0: reservation of 0, a0000 (3) failed
acpi0: reservation of 100000, 7f600000 (3) failed

>> NOTES:
>> I have tried a variety of USB2 devices (CD R/W, usb hard drive, thumb=20=

>> drives). I have confirmed that all are detected and accessed as USB=20=

>> 2.0 devices on Windows 7, Mac OSX. I have also confirmed that Linux=20=

>> (Raspbian on a raspberry Pi) recognized and used the hard drive as a=20=

>> USB2.0 device.
>=20
> Your dmesg shows:
>=20
> uhci0: <Intel 82801G (ICH7) USB controller USB-A> port 0xd880-0xd89f =
irq=20
> 23 at device 29.0 on pci0
> ioapic0: routing intpin 23 (PCI IRQ 23) to lapic 0 vector 55
> uhci0: LegSup =3D 0x2f00
> usbus0 on uhci0
> usbus0: bpf attached
> uhci0: usbpf: Attached
>=20
> and the same for uhci1, uhci2 and uhci3.  If ehci (USB 2) were being=20=

> detected you'd then expect to see something like, as here on 9.3-R:
>=20
> 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
>=20
> though on a different irq and usbus than the uhci ones.
>=20
>> I tried a few different cables just in case.
>>=20
>> Also, I have been using FreeBSD since the 1990s and used to be pretty=20=

>> active at helping people on this list (a long time ago).
>=20
> That's cool, but you don't need a credit balance to qualify :)
>=20
> smithi@x200:~ % kldstat -v | grep ehci
>                295 ehci/usbus
>                287 pci/ehci
> smithi@x200:~ % devinfo -v | grep ehci
>        ehci0 pnpinfo vendor=3D0x8086 device=3D0x293c subvendor=3D0x17aa=20=

> subdevice=3D0x20f1 class=3D0x0c0320 at slot=3D26 function=3D7 =
handle=3D\_SB_.PCI0.EHC1
>        ehci1 pnpinfo vendor=3D0x8086 device=3D0x293a subvendor=3D0x17aa=20=

> subdevice=3D0x20f1 class=3D0x0c0320 at slot=3D29 function=3D7 =
handle=3D\_SB_.PCI0.EHC0

$ kldstat -v | grep ehci
		317 ehci/usbus
 3    1 0xc1697000 e7b4     ehci.ko (/boot/kernel/ehci.ko)
		 2 pci/ehci

$ devinfo -v | grep ehci
	# produced nothing so..

$ devinfo -v | grep hci
        uhci0 pnpinfo vendor=3D0x8086 device=3D0x27c8 subvendor=3D0x8086 =
subdevice=3D0x27c8 class=3D0x0c0300 at slot=3D29 function=3D0 =
handle=3D\_SB_.PCI0.USB0
        uhci1 pnpinfo vendor=3D0x8086 device=3D0x27c9 subvendor=3D0x8086 =
subdevice=3D0x27c9 class=3D0x0c0300 at slot=3D29 function=3D1 =
handle=3D\_SB_.PCI0.USB1
        uhci2 pnpinfo vendor=3D0x8086 device=3D0x27ca subvendor=3D0x8086 =
subdevice=3D0x27ca class=3D0x0c0300 at slot=3D29 function=3D2 =
handle=3D\_SB_.PCI0.USB2
        uhci3 pnpinfo vendor=3D0x8086 device=3D0x27cb subvendor=3D0x8086 =
subdevice=3D0x27cb class=3D0x0c0300 at slot=3D29 function=3D3 =
handle=3D\_SB_.PCI0.USB3

>=20
> If you've got ehci loaded then it's not being detected, which is weird=20=

> indeed.  Report back with the output of those two commands?
>=20
> 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?0FFFB482-ACDF-4751-81E4-BD745BB79867>