3 void flush_icache(CELL start
, CELL len
)
7 /* XXX: why doesn't this work on Nokia n800? It should behave
8 identically to the below assembly. */
9 /* result = syscall(__ARM_NR_cacheflush,start,start + len,0); */
11 /* Assembly swiped from
12 http://lists.arm.linux.org.uk/pipermail/linux-arm/2002-July/003931.html
14 __asm__
__volatile__ (
18 "swi " __sys1(__ARM_NR_cacheflush
) "\n"
21 : "r" (start
), "r" (start
+ len
)
25 critical_error("flush_icache() failed",result
);