Hello, > -----Original Message----- > From: linux-omap-owner@xxxxxxxxxxxxxxx [mailto:linux-omap- > owner@xxxxxxxxxxxxxxx] On Behalf Of Fernando Guzman Lugo > Sent: Wednesday, March 02, 2011 1:17 AM > To: hiroshi.doyu@xxxxxxxxx > Cc: tony@xxxxxxxxxxx; linux@xxxxxxxxxxxxxxxx; linux- > omap@xxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux- > kernel@xxxxxxxxxxxxxxx; Ramesh Gupta; Hari Kanigeri > Subject: [PATCH] omap:iommu-added cache flushing operation for L2 > cache > > From: Ramesh Gupta <grgupta@xxxxxx> > > Signed-off-by: Ramesh Gupta <grgupta@xxxxxx> > Signed-off-by: Hari Kanigeri <h-kanigeri2@xxxxxx> > --- > arch/arm/plat-omap/iommu.c | 22 ++++++++-------------- > 1 files changed, 8 insertions(+), 14 deletions(-) > > diff --git a/arch/arm/plat-omap/iommu.c b/arch/arm/plat-omap/iommu.c > index e3eb038..aeb2c33 100644 > --- a/arch/arm/plat-omap/iommu.c > +++ b/arch/arm/plat-omap/iommu.c > @@ -471,22 +471,15 @@ EXPORT_SYMBOL_GPL(foreach_iommu_device); > */ > static void flush_iopgd_range(u32 *first, u32 *last) > { > - /* FIXME: L2 cache should be taken care of if it exists */ > - do { > - asm("mcr p15, 0, %0, c7, c10, 1 @ flush_pgd" > - : : "r" (first)); > - first += L1_CACHE_BYTES / sizeof(*first); > - } while (first <= last); > + dmac_flush_range(first, last); There is note just above this API. /* * These are private to the dma-mapping API. Do not use directly. * Their sole purpose is to ensure that data held in the cache * is visible to DMA, or data written by DMA to system memory is * visible to the CPU. */ #define dmac_map_area cpu_cache.dma_map_area #define dmac_unmap_area cpu_cache.dma_unmap_area #define dmac_flush_range cpu_cache.dma_flush_range > + outer_flush_range(virt_to_phys(first), virt_to_phys(last)); > } > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html