Date: Wed, 28 Mar 2007 18:32:22 +0200 From: Hans Petter Selasky <hselasky@c2i.net> To: Markus Henschel <m.henschel@bally-wulff.de> Cc: freebsd-usb@freebsd.org Subject: Re: usb/110855: ugen: interrupt in msgs are truncated when buffer is full Message-ID: <200703281832.22527.hselasky@c2i.net> In-Reply-To: <460A8D1C.7090604@bally-wulff.de> References: <200703271940.l2RJe90x058558@freefall.freebsd.org> <200703281628.30878.hselasky@c2i.net> <460A8D1C.7090604@bally-wulff.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 28 March 2007 17:43, Markus Henschel wrote: > Hans Petter Selasky schrieb: > > On Wednesday 28 March 2007 11:41, Markus Henschel wrote: > >> Hans Petter Selasky schrieb: > >>> The following reply was made to PR usb/110855; it has been noted by > >>> GNATS. > >> > >> Hi, > > > > Could you edit /sys/dev/usb/umass.c > > > > Then lookup: > > > > usbd_delay_ms(uaa->device, 1000); > > > > Change it into: > > > > usbd_delay_ms(uaa->device, 5000); > > > > Then lookup in the function "umass_attach()": > > > > sc->sc_last_xfer_index = UMASS_T_BBB_COMMAND; > > > > and change it into: > > > > sc->sc_last_xfer_index = UMASS_T_BBB_RESET2; > > > > Compile a new kernel and see what happens when you plug the stick again. > > > > --HPS > > Hello again, > > the 1st stick is working now ("JetFlash Mass Storage Device") but the > other stick that worked fine before ("LG USB DRIVE) has problems being > detected now. The "main" device node /dev/da0 is created but not the > node for the 1st partition /dev/da0s1, even after minutes. But when I > try to mount /dev/da0 directly (which doesn't make sense) the command > fails but suddenly /dev/da0s1 appears and is usable. Should I try to > This dmesg looks like it is from the old umass driver? > decrease the delay again? Here is the dmesg output: > > umass0: SCSI over Bulk-Only; quirks = 0x0000 > > umass0: Max Lun is 0 > > umass0:0:-1:-1:XPT_PATH_INQ:. > > umass0:0:0:-1: Attached to scbus0 > > umass0: Attach finished > > scbus0: scanning for umass0:0:0:-1 > > umass0:0:-1:-1:XPT_PATH_INQ:. > > umass0:0:0:0:XPT_PATH_INQ:. > > umass0:0:0:0:XPT_PATH_INQ:. > > umass0:0:0:0:XPT_SCSI_IO: cmd: 0x12, flags: 0x40, 6b cmd/36b data/18b <ZAP> 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200703281832.22527.hselasky>