USB 3.0 USB HDD an Freebsd 9.2 USB 2.0 Port funktioniert nicht

ret

Active Member
Hallo,

ich hoffe dieses Problem passt ins Installation-Forum. Es geht um die Installation einer Intenso Memory Box 3TB, USB 3.0, USB 2.0 100% compatible (laut Datenblatt).

Diese möchte ich an einen Rechner mit USB 2.0 Anschluss anschließen:

OS:
FreeBSD 9.2-RELEASE #0 r255898: Thu Sep 26 22:50:31 UTC 2013 root@bake.isc.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64

dmesg
Code:
Copyright (c) 1992-2013 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.2-RELEASE #0 r255898: Thu Sep 26 22:50:31 UTC 2013
    root@bake.isc.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
gcc version 4.2.1 20070831 patched [FreeBSD]
CPU: Intel(R) Core(TM)2 Duo CPU    E7400  @ 2.80GHz (2793.12-MHz K8-class CPU)
  Origin = "GenuineIntel"  Id = 0x1067a  Family = 0x6  Model = 0x17  Stepping =
10
  Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C
MOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
  Features2=0xc08e39d<SSE3,DTES64,MON,DS_CPL,EST,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1
,XSAVE,OSXSAVE>
  AMD Features=0x20100800<SYSCALL,NX,LM>
  AMD Features2=0x1<LAHF>
  TSC: P-state invariant, performance statistics
real memory  = 4294967296 (4096 MB)
avail memory = 3324522496 (3170 MB)
Event timer "LAPIC" quality 400
ACPI APIC Table: <IntelR AWRDACPI>
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
FreeBSD/SMP: 1 package(s) x 2 core(s)
cpu0 (BSP): APIC ID:  0
cpu1 (AP): APIC ID:  1
ioapic0: Changing APIC ID to 4
ioapic0 <Version 2.0> irqs 0-23 on motherboard
kbd1 at kbdmux0
acpi0: <IntelR AWRDACPI> on motherboard
acpi0: Power Button (fixed)
acpi0: reservation of 0, a0000 (3) failed
acpi0: reservation of 100000, cf490000 (3) failed
cpu0: <ACPI CPU> on acpi0
cpu1: <ACPI CPU> on acpi0
attimer0: <AT timer> port 0x40-0x43 on acpi0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff irq 0,8 on acpi0
device_attach: hpet0 attach returned 12
atrtc0: <AT realtime clock> port 0x70-0x73 on acpi0
Event timer "RTC" frequency 32768 Hz quality 0
Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
acpi_button0: <Power Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
vgapci0: <VGA-compatible display> port 0xff00-0xff07 mem 0xfdf00000-0xfdf7ffff,0xd0000000-0xdfffffff,0xfdc00000-0xfdcfffff irq 16 at device 2.0 on pci0
agp0: <Intel G33 SVGA controller> on vgapci0
agp0: aperture size is 256M, detected 7164k stolen memory
pcib1: <ACPI PCI-PCI bridge> irq 16 at device 28.0 on pci0
pci1: <ACPI PCI bus> on pcib1
em0: <Intel(R) PRO/1000 Network Connection 7.3.8> port 0xcf00-0xcf1f mem 0xfd9c0000-0xfd9dffff,0xfd900000-0xfd97ffff,0xfd9fc000-0xfd9fffff irq 16 at device 0.0 on pci1
em0: Using MSIX interrupts with 3 vectors
em0: Ethernet address: 68:05:ca:17:b4:a1
pcib2: <ACPI PCI-PCI bridge> irq 17 at device 28.1 on pci0
pci2: <ACPI PCI bus> on pcib2
re0: <RealTek 8168/8111 B/C/CP/D/DP/E/F PCIe Gigabit Ethernet> port 0xbe00-0xbeff mem 0xfdeff000-0xfdefffff irq 17 at device 0.0 on pci2
re0: Using 1 MSI message
re0: Chip rev. 0x38000000
re0: MAC rev. 0x00400000
miibus0: <MII bus> on re0
rgephy0: <RTL8169S/8110S/8211 1000BASE-T media interface> PHY 1 on miibus0
rgephy0:  none, 10baseT, 10baseT-FDX, 10baseT-FDX-flow, 100baseTX, 100baseTX-FDX, 100baseTX-FDX-flow, 1000baseT, 1000baseT-master, 1000baseT-FDX, 1000baseT-FDX-master, 1000baseT-FDX-flow, 1000baseT-FDX-flow-master, auto, auto-flow
re0: Ethernet address: 00:22:68:52:81:8c
uhci0: <Intel 82801G (ICH7) USB controller USB-A> port 0xfe00-0xfe1f irq 23 at device 29.0 on pci0
usbus0 on uhci0
uhci1: <Intel 82801G (ICH7) USB controller USB-B> port 0xfd00-0xfd1f irq 19 at device 29.1 on pci0
usbus1 on uhci1
uhci2: <Intel 82801G (ICH7) USB controller USB-C> port 0xfc00-0xfc1f irq 18 at device 29.2 on pci0
usbus2 on uhci2
uhci3: <Intel 82801G (ICH7) USB controller USB-D> port 0xfb00-0xfb1f irq 16 at device 29.3 on pci0
usbus3 on uhci3
ehci0: <Intel 82801GB/R (ICH7) USB 2.0 controller> mem 0xfdfff000-0xfdfff3ff irq 23 at device 29.7 on pci0
usbus4: EHCI version 1.0
usbus4 on ehci0
pcib3: <ACPI PCI-PCI bridge> at device 30.0 on pci0
pci3: <ACPI PCI bus> on pcib3
em1: <Intel(R) PRO/1000 Legacy Network Connection 1.0.6> port 0xdf00-0xdf3f mem 0xfdbe0000-0xfdbfffff,0xfdbc0000-0xfdbdffff irq 17 at device 2.0 on pci3
em1: Ethernet address: 90:e2:ba:39:f5:2c
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH7 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xf800-0xf80f at device 31.1 on pci0
ata0: <ATA channel> at channel 0 on atapci0
atapci1: <Intel ICH7 SATA300 controller> port 0xf700-0xf707,0xf600-0xf603,0xf500-0xf507,0xf400-0xf403,0xf300-0xf30f irq 19 at device 31.2 on pci0
ata2: <ATA channel> at channel 0 on atapci1
ata3: <ATA channel> at channel 1 on atapci1
pci0: <serial bus, SMBus> at device 31.3 (no driver attached)
acpi_tz0: <Thermal Zone> 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]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: model IntelliMouse, device ID 3
orm0: <ISA Option ROMs> at iomem 0xcc000-0xccfff,0xcd000-0xcdfff,0xce000-0xcefff 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
ppc0: cannot reserve I/O port range
est0: <Enhanced SpeedStep Frequency Control> on cpu0
p4tcc0: <CPU Frequency Thermal Control> on cpu0
est1: <Enhanced SpeedStep Frequency Control> on cpu1
p4tcc1: <CPU Frequency Thermal Control> on cpu1
ZFS NOTICE: Prefetch is disabled by default if less than 4GB of RAM is present;
            to enable, add "vfs.zfs.prefetch_disable=0" to /boot/loader.conf.
ZFS filesystem version: 5
ZFS storage pool version: features support (5000)
Timecounters tick every 1.000 msec
usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 12Mbps Full Speed USB v1.0
usbus3: 12Mbps Full Speed USB v1.0
usbus4: 480Mbps High Speed USB v2.0
ugen0.1: <Intel> at usbus0
uhub0: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus0
ugen1.1: <Intel> at usbus1
uhub1: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus1
ugen2.1: <Intel> at usbus2
uhub2: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus2
ugen3.1: <Intel> at usbus3
uhub3: <Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1> on usbus3
ugen4.1: <Intel> at usbus4
uhub4: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus4
uhub0: 2 ports with 2 removable, self powered
uhub1: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
uhub3: 2 ports with 2 removable, self powered
ada0 at ata2 bus 0 scbus1 target 1 lun 0
ada0: <WDC WD5000AUDX-73H9TY0 01.01A01> ATA-9 SATA 3.x device
ada0: 150.000MB/s transfers (SATA, UDMA5, PIO 8192bytes)
ada0: 476940MB (976773168 512 byte sectors: 16H 63S/T 16383C)
ada0: Previously was known as ad5
SMP: AP CPU #1 Launched!
Timecounter "TSC-low" frequency 1396561115 Hz quality 1000
Root mount waiting for: usbus4
Root mount waiting for: usbus4
uhub4: 8 ports with 8 removable, self powered


Wenn ich die USB HDD jetzt anstecke kommt folgende Fehlermeldung:

Code:
ugen4.2: <Intenso> at usbus4
umass0: <Intenso External USB 3.0, class 0/0, rev 2.10/3.07, addr 2> on usbus4
umass0:  SCSI over Bulk-Only; quirks = 0x0100
umass0:3:0:-1: Attached to scbus3
(probe0:umass-sim0:0:0:0): REPORT LUNS. CDB: a0 00 00 00 00 00 00 00 00 10 00 00
(probe0:umass-sim0:0:0:0): CAM status: SCSI Status Error
(probe0:umass-sim0:0:0:0): SCSI status: Check Condition
(probe0:umass-sim0:0:0:0): SCSI sense: ILLEGAL REQUEST asc:20,0 (Invalid command operation code)
(probe0:umass-sim0:0:0:0): Error 22, Unretryable error
(probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 01 83 00 fc 00
(probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(probe0:umass-sim0:0:0:0): Retrying command
(probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 01 83 00 fc 00
(probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(probe0:umass-sim0:0:0:0): Retrying command
(probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 01 83 00 fc 00
(probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(probe0:umass-sim0:0:0:0): Retrying command
(probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 01 83 00 fc 00
(probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(probe0:umass-sim0:0:0:0): Retrying command
(probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 01 83 00 fc 00
(probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(probe0:umass-sim0:0:0:0): Error 5, Retries exhausted
(da0:umass-sim0:0:0:0): got CAM status 0x44
(da0:umass-sim0:0:0:0): fatal error, failed to attach to device
(da0:umass-sim0:0:0:0): lost device - 0 outstanding, 5 refs
(da0:umass-sim0:0:0:0): removing device entry


#usbconfig
Code:
usbconfig
ugen0.1: <UHCI root HUB Intel> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen1.1: <UHCI root HUB Intel> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen2.1: <UHCI root HUB Intel> at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen3.1: <UHCI root HUB Intel> at usbus3, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen4.1: <EHCI root HUB Intel> at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen4.2: <External USB 3.0 Intenso> at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (2mA)


#camcontrol devlist
Code:
<WDC WD5000AUDX-73H9TY0 01.01A01>  at scbus1 target 1 lun 0 (pass0,ada0)
<Intenso External USB 3.0 0006>    at scbus3 target 0 lun 0 (da0,pass1)

Machmal ist an der Intenso auch kein da0. Unter /dev wird jedenfalls kein da0 Gerät angelegt.

Wäre für ein paar Tipps dankbar, wie ich die Platte zum Laufen bekommen kann.

Gruß

Holger
 
Hallo,

nach einer schlaflosen Nacht bin ich der Lösung zumindest ein kleines Stückchen näher gekommen.

Mit folgenden usb_quirks hatte ich Erfolg und die Platte zum Laufen gebracht:
Code:
usbconfig -d ugen4.2 add_quirk UQ_MSC_NO_INQUIRY
usbconfig -d ugen4.2 add_quirk UQ_ASSUME_CM_OVER_DATA
Ich vermute, dass UQ_ASSUME_CM_OVER_DATA für Platten mit 4k Sektoren notwendig ist?

Ein Shellscript um das Setzen der Quirks zu automatisieren bleibt regelmäßig beim ersten usbconfig Befehl hängen. Wenn ich die Befehle nach dem Booten von Hand eingebe funktionieren sie meistens.
Code:
usbconfig -d ugen4.2 power_off
usbconfig -d ugen4.2 add_quirk UQ_MSC_NO_INQUIRY
usbconfig -d ugen4.2 add_quirk UQ_ASSUME_CM_OVER_DATA
usbconfig -d ugen4.2 power_on

Ich hatte auch schon mit usbconfig reset Versuche unternommen, die waren genauso erfolglos :(

Gruß

Holger
 
Wann wird das Skript denn aufgerufen? Wenn es von Hand geht, dann würde ich zwischen den Befehlen mal ein sleep 1 oder ggf. mehr einbauen, dann könnte es gehen.
 
Bislang habe ich es immer manuell aufgerufen und es scheint tatsächlich mit dem Aufrufzeitpunkt zusammen zu hängen. In der Zwischenzeit konnte ich herausfinden, dass sich die usbconfig Aufrufe sich für immer aufhängen, wenn ich sie vor folgender Fehlermeldung, die wohl von der Standardinitialisierung des USB- oder CAM-Systems kommt.
Code:
(da0:umass-sim0:0:0:0): removing device entry

Es ist zwar keine schöne, saubere Lösung, aber ich werde dem Shell-Script einfach ein sleep 30 voranstellen. Für eine bessere Lösung habe ich jederzeit ein offenes Ohr :-)
 
Zurück
Oben