[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CADysL2Y7RP1OUthWri2v6cSqk-CRTh2R7urec7P2NdhaZ09KmA@mail.gmail.com>
Date: Mon, 10 Sep 2012 15:51:35 +0530
From: "Gupta, Ramesh" <grgupta@...com>
To: Russell King - ARM Linux <linux@....linux.org.uk>
Cc: linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-omap@...r.kernel.org, tony@...mide.com
Subject: Re: [PATCH v4 1/2] ARM: new cache maintenance api for iommu
Hi Russell,
On Sat, Sep 8, 2012 at 3:44 PM, Russell King - ARM Linux
<linux@....linux.org.uk> wrote:
> On Thu, Jul 05, 2012 at 10:50:17AM +0530, Gupta, Ramesh wrote:
>> + * flush_iommu_mem(start, end)
>> + *
>> + * Clean and invalidate the specified virtual address range.
>> + * This is to support the non coherent iommu drivers.
>> + * The iommu driver need to call this api with the page
>> + * table memory address range to ensure the data held in
>> + * the cache is visible to the slave processor MMU.
>> + * - start - virtual start address
>> + * - end - virtual end address
>
> I think:
> iommu_flush_range(start, end)
> or
> iommu_flush_area(start, size)
> Perform CPU specific cache operations are required to
> ensure that the IOMMU page table mappings covering the
> specified block of memory are visiable to the IOMMU.
I prefer iommu_flush_area(start, size).
>
> Notice that it's defined by purpose, not by implementation. Also notice
> the distinction between _range taking two addresses, and _area taking
> a start plus size.
> Also notice that it is defined just for IOMMU page tables, not for general
> data for other processors.
Agree with your comments, may be I can add an explicit comment for not
using these apis other than IOMMU page tables.
> Note that iommu_flush_area is safer if your virt_to_phys() are non-linear.
Agree, I will send an updated patch series with iommu_flush_area.
thank you for the review comments.
Best regards
Ramesh Gupta G
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists