diff --git a/arch/arm/kernel/pj4-cp0.c b/arch/arm/kernel/pj4-cp0.c
index a4b1b07..dc4272d 100644
--- a/arch/arm/kernel/pj4-cp0.c
+++ b/arch/arm/kernel/pj4-cp0.c
@@ -62,14 +62,10 @@ static u32 __init pj4_cp_access_read(void)

 static void __init pj4_cp_access_write(u32 value)
 {
-       u32 temp;
-
        __asm__ __volatile__ (
-               "mcr    p15, 0, %1, c1, c0, 2\n\t"
-               "mrc    p15, 0, %0, c1, c0, 2\n\t"
-               "mov    %0, %0\n\t"
-               "sub    pc, pc, #4\n\t"
-               : "=r" (temp) : "r" (value));
+               "mcr    p15, 0, %0, c1, c0, 2\n\t"
+               : : "r" (value));
+       isb();
 }

_______________________________________________
