From owner-freebsd-usb@FreeBSD.ORG Thu Mar 29 06:39:18 2007 Return-Path: X-Original-To: freebsd-usb@freebsd.org Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7F4E516A408 for ; Thu, 29 Mar 2007 06:39:18 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe13.swip.net [212.247.155.129]) by mx1.freebsd.org (Postfix) with ESMTP id 1A59813C448 for ; Thu, 29 Mar 2007 06:39:17 +0000 (UTC) (envelope-from hselasky@c2i.net) X-Cloudmark-Score: 0.000000 [] Received: from [193.217.102.48] (account mc467741@c2i.net HELO [10.0.0.249]) by mailfe13.swip.net (CommuniGate Pro SMTP 5.1.7) with ESMTPA id 58316921; Thu, 29 Mar 2007 08:39:16 +0200 From: Hans Petter Selasky To: Markus Henschel Date: Thu, 29 Mar 2007 08:38:57 +0200 User-Agent: KMail/1.9.5 References: <200703271940.l2RJe90x058558@freefall.freebsd.org> <200703281832.22527.hselasky@c2i.net> <460AB387.20304@bally-wulff.de> In-Reply-To: <460AB387.20304@bally-wulff.de> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200703290838.57458.hselasky@c2i.net> Cc: freebsd-usb@freebsd.org Subject: Re: usb/110855: ugen: interrupt in msgs are truncated when buffer is full 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: Thu, 29 Mar 2007 06:39:18 -0000 On Wednesday 28 March 2007 20:27, Markus Henschel wrote: > Hans Petter Selasky schrieb: > > > > > > Can you revert the changes you made to "umass.c" ? > > > > You can do this for example by copying "sys/dev/usb/umass.c" from the SVN > > repo to where you have your kernel sources. > > > > Then edit "sys/dev/usb/umass.c" again. > > > > Lookup the function "umass_t_bbb_status_callback()". > > > > Right below the label "tr_transferred" you add like this: > > > > tr_transferred: > > /* don't retry the status, but do a full reset if > > * there is something wrong with the CSW: > > */ > > sc->sc_status_try = 1; > > > > Compile a new kernel (or if you are smart, leave "device umass" out of > > the kernel config file and just recompile the "umass" module: > > sys/modules/umass) > > > > What happens now? > > > > --HPS > > Mmmm, seems like I must have messed something up before. So I reapplied > the changes to a clean system. The first stick says now. The !!!! mark > the point where the hanging occurs. Does it hang as long as before ? If you try to increase the delay again, does that help? Edit sys/dev/usb/umass.c Then lookup: usbd_delay_ms(uaa->device, 1000); Change it into: usbd_delay_ms(uaa->device, 5000); > > Thank you for your time. Let me know if you want me to try other > changes. May be it would be easier if you could create a branch in svn > with the changes needed? Maybe. --HPS