Problem with dma_alloc_coherent at linux-2.6.33-arm1 , withRealView platform,board PBX-A9 and armv7 instructions.

David Yang david.yangshuai at gmail.com
Tue Jul 20 05:22:42 EDT 2010


eh...is it right that I need not use  wmb()  between two writel()?

On Tue, Jul 20, 2010 at 4:53 PM, Catalin Marinas
<catalin.marinas at arm.com> wrote:
> On Tue, 2010-07-20 at 04:17 +0100, David Yang wrote:
>> On Mon, Jul 19, 2010 at 8:29 PM, Catalin Marinas
>> <catalin.marinas at arm.com> wrote:
>> > On Sat, 2010-07-17 at 08:05 +0100, David Yang wrote:
>> >> I have a question: in linux-2.6.28, there is no barriers in the IO
>> >> accessors.
>> >
>> > Because in 2.6.28 we used Strongly Ordered memory for the coherent DMA
>> > buffers and on many CPUs SO accesses are ordered relatively to Device
>> > accesses. But that even this isn't guaranteed by the ARM ARM.
>> >
>>
>> Yes, I know that.
>>
>> But I mean that ,in linux-2.6.28,whether the order between the IO
>> access will be re-ordered at the hardware level? And whether we should
>> use the wmb() to guarantee the order? Here we just talk about the IO
>> register access,without the normal memory or coherent DMA buffers.
>
> IO accesses (via Device memory mapping) are guaranteed by the hardware
> to be ordered (i.e. they reach the device in the specified program
> order).
>



More information about the linux-arm-kernel mailing list