From owner-freebsd-usb@FreeBSD.ORG Mon Oct 4 17:30:17 2010 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9ECB31065698 for ; Mon, 4 Oct 2010 17:30:17 +0000 (UTC) (envelope-from donaldcallen@gmail.com) Received: from mail-pz0-f54.google.com (mail-pz0-f54.google.com [209.85.210.54]) by mx1.freebsd.org (Postfix) with ESMTP id 5409A8FC25 for ; Mon, 4 Oct 2010 17:30:11 +0000 (UTC) Received: by pzk1 with SMTP id 1so760167pzk.13 for ; Mon, 04 Oct 2010 10:30:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type; bh=u7S8s36AHL4YAapyeRuhAz1iwhImxR1bMV43JEywQUg=; b=MMQI5xXsMz2pVtDDvEeC7dpblKyk9+cug8G38hHoIXvHKbhuLyLzcyeAz6kGwxp3KC nDtB/dIX/SbcPjMrKedwV3pF+9VBYmNuD+gF3rEn4k1dPnVeYn1Ot9zS8sHf9AsZZCNh geldIp3La1Ti4Fpl3+kDtvZzQ+vcAgsaUHa/s= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=OkGPNaFdtpn+Y6KdYvG2fP9WCRT8GuhAci2Sh6soDe6pnjQlKe7Sjltakv4bwYffVz h1ZLQHtawWx2z67NO1SAMWPSMYGT25CAyn6Fi6pSkSzoKmsvKiCM7bwyBRedxewSk4fo KO4UmgsmY712IHWD3v8yS1CZ/PazWtxqrq6xo= MIME-Version: 1.0 Received: by 10.142.4.9 with SMTP id 9mr9012660wfd.98.1286213378982; Mon, 04 Oct 2010 10:29:38 -0700 (PDT) Received: by 10.42.177.9 with HTTP; Mon, 4 Oct 2010 10:29:38 -0700 (PDT) In-Reply-To: <20100924153532.GU2846@cicely7.cicely.de> References: <201009230834.12501.hselasky@c2i.net> <20100923155948.GC2846@cicely7.cicely.de> <20100923191256.GE2846@cicely7.cicely.de> <20100923235016.GH2846@cicely7.cicely.de> <20100924153532.GU2846@cicely7.cicely.de> Date: Mon, 4 Oct 2010 13:29:38 -0400 Message-ID: From: Donald Allen To: ticso@cicely.de Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: freebsd-usb@freebsd.org Subject: Re: USB drives still don't work correctly X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Oct 2010 17:30:17 -0000 I've been away for awhile and could not work on this issue. I just looked at the OpenBSD 4.7 sources, and there is no entry in sys/devs/usbdev.h for a vendor with id 0x04fc, nor is there a product id 0x0c15. Considering this and looking at their usb_quirks.c and umass_quirks.c, I don't think OpenBSD is issuing any quirks for the devices I have, and yet these drives work correctly with 4.7, whether plugged in at boot time or hotplugged. So I think there's more to the hotplug problem I'm seeing with FreeBSD 8.1 than simply missing a quirk. If I'm right about this, I'd like to work with those of you actively developing the USB layer to understand what's going on here, leading to a bug-fix if indeed there is a bug. Yes, I can drop this discussion and just work around the problem, albeit inconveniently, by plugging the drives in at boot-time, but given that the drives work with other systems, if I'm going to use FreeBSD, I'd like to see this problem either explained or fixed. /Don On Fri, Sep 24, 2010 at 11:35 AM, Bernd Walter wrote: > On Fri, Sep 24, 2010 at 11:16:14AM -0400, Donald Allen wrote: > > A few more things on this issue: > > > > 1. I installed FreeBSD on another system, just on the off-chance that > > my problem might be caused by testing with an old machine (c. 2005). > > This machine is a relatively new HP desktop and it exhibits exactly > > the same symptoms w.r.t. the USB drives as I described earlier. > > > > 2. I booted the system with one of the drives connected and spinning, > > so I could get the device description with usbconfig: > > > > ugen1.2: at usbus1, > > cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON > > You can't ask the hanging device? > It is bulk only so the command channel should be used for identification > only. > > > bLength = 0x0012 > > bDescriptorType = 0x0001 > > bcdUSB = 0x0200 > > bDeviceClass = 0x0000 > > bDeviceSubClass = 0x0000 > > bDeviceProtocol = 0x0000 > > bMaxPacketSize0 = 0x0040 > > idVendor = 0x04fc > > idProduct = 0x0c15 > > bcdDevice = 0xc683 > > iManufacturer = 0x0002 > > iProduct = 0x0003 > > iSerialNumber = 0x0001 > > bNumConfigurations = 0x0001 > > > > If you dump_device_quirks, you find this entry, matching my hardware: > > > > VID=0x04fc PID=0x0c15 REVLO=0x0000 REVHI=0xffff > QUIRK=UQ_MSC_NO_SYNC_CACHE > > > > So this device is known to the FreeBSD USB world. Unfortunately, the > > built-in quirks in the kernel don't completely do the job. If you > > google for 'freebsd sunplus', you turn up other people complaining > > about the same issues I have. One guy even discovered, as I did, that > > the drive works if it's present at boot-time. > > I've found others as well when searching for the error message. > > > 3. Plugging the drive into a self-powered USB hub and then > > hot-plugging the hub into the computer doesn't help. > > This is unexpected :( > So probably it really is the BIOS making the difference. > > If you stop at the loader stage, plug the device in and then start > the kernel - will it change something? > This way the BIOS won't see the device, but the kernel does. > > Will it help if you try usbconfig reset on the device? > > The feature to reset ports wasn't available with the old stack. > It is just wild guessing, since I'm a bit out of ideas, but you > could try UQ_MSC_FORCE_WIRE_BBB and UQ_MSC_FORCE_PROTO_SCSI, although > the point that it works when already plugged in makes it unlikely. > > -- > B.Walter http://www.bwct.de > Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm. >