Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Nov 2006 20:45:54 +0100
From:      "Daan Vreeken [PA4DAN]" <Danovitsch@vitsch.net>
To:        Warner Losh <imp@freebsd.org>
Cc:        cvs-src@freebsd.org
Subject:   Re: cvs commit: src/sys/dev/usb usbdi.c
Message-ID:  <200611222045.54325.Danovitsch@vitsch.net>
In-Reply-To: <200611221756.kAMHuapt020379@repoman.freebsd.org>
References:  <200611221756.kAMHuapt020379@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 22 November 2006 18:56, Warner Losh wrote:
> imp         2006-11-22 17:56:36 UTC
>
>   FreeBSD src repository
>
>   Modified files:
>     sys/dev/usb          usbdi.c
>   Log:
>   Fix coherency issue.  From submitter:
>
>           I have been debugging the usb problems some more. Your were
>           right in your assumption (thanks for the pointer) about lack
>           of calls to bus_dmamap_sync().  In usbdi.c bus_dmamap_sync()
>           does get used for transfers that move data from PC to USB and
>           it is used for transfers that move data from USB to PC. But
>           someone forgot that control transfers consist of possibly two
>           data chunks : the request itself and optionally a buffer of
>           data that should be transfered to or from the USB device.  On
>           requests to the control endpoint without additional data
>           bus_dmamap_sync() didn't get called. For some reason my first
>           tests with umass worked (due to enough cache poisening I
>           guess).  The attached patch adds a call to bus_dmamap_sync()
>           to usbdi.c and now all devices I have tried work out of the
>           box.  I have successfully transfered large files using the
>           if_axe driver and I have mounted several different umass
>           devices.
>
>   submitted by: Daan Vreeken
>   sponsored by: Vitsch Electronics
>   reviewed by: cognet@

Thanks!

--
Daan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200611222045.54325.Danovitsch>