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

Marcel Moolenaar xcllnt at mac.com
Mon Feb 9 09:51:54 PST 2009


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?

-- 
Marcel Moolenaar
xcllnt at mac.com





More information about the svn-src-head mailing list