On 06/28/2012 03:51 PM, Takashi Iwai wrote:
At Thu, 28 Jun 2012 19:06:07 +0530, Laxman Dewangan wrote: [...]
But, still we need to be careful about this. As mentioned, there is no flag to know the possibility of writecombine mmap beforehand. It'd be nice if we have either a compile-time or a run-time flag / function to check that. Then the driver can also expose the mmap capability to user-space depending on the flag.
If writecombine is not supported it will fallback to a "normal" mmap. Here's an excerpt from the DMA mapping documentation:
DMA_ATTR_WRITE_COMBINE ----------------------
DMA_ATTR_WRITE_COMBINE specifies that writes to the mapping may be buffered to improve performance.
Since it is optional for platforms to implement DMA_ATTR_WRITE_COMBINE, those that do not will simply ignore the attribute and exhibit default behavior.
- Lars