generic: lzma-loader: fix cache invalidation
authorGabor Juhos <juhosg@openwrt.org>
Mon, 21 Mar 2016 13:15:09 +0000 (13:15 +0000)
committerGabor Juhos <juhosg@openwrt.org>
Mon, 21 Mar 2016 13:15:09 +0000 (13:15 +0000)
The current code only partially invalidates both caches
because the cache size and cache-line size values are
incorrectly passed to the C code.

Fix the assembly code to pass the arguments in the correct
order.

Tested on RB532.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 49056

target/linux/generic/image/lzma-loader/src/start.S

index 827458017e1b67d87e2cf1f730bb2f1e8247d63a..f025dabeddb6558b213a8ddd8788d82b9fcf662c 100644 (file)
@@ -145,15 +145,15 @@ nodc:
        addu    t0,s3
 noic:
        /* jump to main */
-       move    a0,s3                   /* icache line size */
-       move    a1,s4                   /* icache size */
-       move    a2,s1                   /* dcache line size */
+       move    a0,s4                   /* icache size */
+       move    a1,s3                   /* icache line size */
+       move    a2,s2                   /* dcache size */
 #ifdef IMAGE_COPY
        jal             t2
 #else
        jal     entry
 #endif
-       move    a3,s2                   /* dcache size */
+       move    a3,s1                   /* dcache line size */
 
        .set reorder
 END(_start)