Date: Wed, 19 Aug 2009 14:48:59 +0000 (UTC) From: Rafal Jaworowski <raj@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/dev/usb usb_busdma.c Message-ID: <200908191449.n7JEnKqq059024@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
raj 2009-08-19 14:48:59 UTC FreeBSD src repository Modified files: (Branch: RELENG_8) sys/dev/usb usb_busdma.c Log: SVN rev 196381 on 2009-08-19 14:48:59Z by raj MFC r196380 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 Revision Changes Path 1.13.2.2 +3 -4 src/sys/dev/usb/usb_busdma.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200908191449.n7JEnKqq059024>