Re: svn commit: r196380 - head/sys/dev/usb

[ Available lists | Index of svn-src-all | Month of Aug 2009 | Week of 19 Aug 2009 | Raw email | View thread | Wrap long lines | Reply | Tag ]
From
Sam Leffler <sam@errno.com>
Date
19 Aug 2009 15:30:39
Subject
Re: svn commit: r196380 - head/sys/dev/usb
Message-ID
4A8C1AA0.20303@errno.com


[ Hide this part ]
Rafal Jaworowski wrote:
> Author: raj
> Date: Wed Aug 19 14:39:08 2009
> New Revision: 196380
> URL: http://svn.freebsd.org/changeset/base/196380
>
> Log:
> Fix USB cache sync operations for platforms with non-coherent DMA.
>
> - usb_pc_cpu_invalidate() is called between [consecutive] reads from a device,
> so a sequence of BUS_DMASYNC_POSTREAD and _PREREAD should be used. Note we
> cannot use or'ed shorthand ( _POSTREAD | _PREREAD) for BUS_DMASYNC flags, as
> the low level bus dma sync operation is implementation dependent and we
> cannot assume the required order of operations to be guaranteed.
>
> - usb_pc_cpu_flush() is called before writing to a device, so
> BUS_DMASYNC_PREWRITE should be used.
>
> Submitted by: Grzegorz Bernacki
> Reviewed by: HPS, arm@, usb@ ML
> Tested by: HPS, Mike Tancsa
> Approved by: re (kib)
> Obtained from: Semihalf

Is this different from the patch I tested on Gateworks 2358 boards which
didn't completely resolve problems?

Sam


Elapsed time: 0.434 seconds