omap: SRAM: flush the right address after memcpy in omap_sram_push
authorye janboe <janboe.ye@gmail.com>
Mon, 5 Oct 2009 20:31:44 +0000 (13:31 -0700)
committerTony Lindgren <tony@atomide.com>
Tue, 6 Oct 2009 15:31:50 +0000 (08:31 -0700)
the original flush operation is to flush the function address which is
copied from.
But we do not change the function code and it is not necessary to flush it.

Signed-off-by: janboe <janboe.ye@gmail.com>
Acked-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/plat-omap/sram.c

index 925f64711c37c7d2f37bc67bc31fc87264a81290..75d1f26e5b177055f352bfd2dc428eca39ee09ed 100644 (file)
@@ -270,7 +270,8 @@ void * omap_sram_push(void * start, unsigned long size)
        omap_sram_ceil -= size;
        omap_sram_ceil = ROUND_DOWN(omap_sram_ceil, sizeof(void *));
        memcpy((void *)omap_sram_ceil, start, size);
-       flush_icache_range((unsigned long)start, (unsigned long)(start + size));
+       flush_icache_range((unsigned long)omap_sram_ceil,
+               (unsigned long)(omap_sram_ceil + size));
 
        return (void *)omap_sram_ceil;
 }