svn commit: r188350 - in head/sys: amd64/amd64 arm/arm dev/usb2/core i386/i386 ia64/ia64 sys

M. Warner Losh imp at bsdimp.com
Mon Feb 9 10:33:31 PST 2009


In message: <2EA5FEEB-E676-4D1B-9700-399C783F4590 at mac.com>
            Marcel Moolenaar <xcllnt at mac.com> writes:
: 
: On Feb 9, 2009, at 6:23 AM, John Baldwin wrote:
: 
: > On Monday 09 February 2009 12:37:53 am Marcel Moolenaar wrote:
: >>
: >> On Feb 8, 2009, at 5:00 PM, Scott Long wrote:
: >>
: >>> Busdma allows you to request bouncing for realignment.
: >>
: >> How exactly?
: >
: > The 'align' parameter to bus_dma_tag_create().  If your hardware  
: > needs buffers
: > to be aligned on a 4-byte boundary and you bus_dmamap_load() a buffer
: > where 'addr % 4 != 0', then the buffer is bounced.  Since by default  
: > the new
: > buffer starts on a page boundary, it satifies the 'addr % 4'.
: 
: But according to the man page, bounce buffering may not
: be implemented or not be applicable to a platform. It
: seems to me that you cannot depend on this side-effect
: in a generic driver. Are you guys talking only in terms
: of i386 or is this generally applicable?

There's no bounce buffering on MIPS right now, for example...  There
likely should be, but it isn't there now.

Warner


More information about the svn-src-head mailing list