]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - arch/parisc/kernel/pacache.S
Merge tag 'parisc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6
[mv-sheeva.git] / arch / parisc / kernel / pacache.S
index 93ff3d90edd1edc8a0d5d41ecc4adae27efe45f3..5d7218ad885c3841e22c987af9419e3790d50840 100644 (file)
@@ -692,7 +692,7 @@ ENTRY(flush_icache_page_asm)
 
        /* Purge any old translation */
 
-       pitlb           (%sr0,%r28)
+       pitlb           (%sr4,%r28)
 
        ldil            L%icache_stride, %r1
        ldw             R%icache_stride(%r1), %r1
@@ -706,27 +706,29 @@ ENTRY(flush_icache_page_asm)
        sub             %r25, %r1, %r25
 
 
-1:      fic,m          %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
-       fic,m           %r1(%r28)
+       /* fic only has the type 26 form on PA1.1, requiring an
+        * explicit space specification, so use %sr4 */
+1:      fic,m          %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
+       fic,m           %r1(%sr4,%r28)
        cmpb,COND(<<)           %r28, %r25,1b
-       fic,m           %r1(%r28)
+       fic,m           %r1(%sr4,%r28)
 
        sync
        bv              %r0(%r2)
-       pitlb           (%sr0,%r25)
+       pitlb           (%sr4,%r25)
        .exit
 
        .procend