Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / arch / ppc / kernel / cpu_setup_power4.S
index 6a6ee98..d7bfd60 100644 (file)
@@ -14,8 +14,7 @@
 #include <asm/page.h>
 #include <asm/ppc_asm.h>
 #include <asm/cputable.h>
-#include <asm/ppc_asm.h>
-#include <asm/offsets.h>
+#include <asm/asm-offsets.h>
 #include <asm/cache.h>
 
 _GLOBAL(__970_cpu_preinit)
@@ -64,8 +63,6 @@ _GLOBAL(__970_cpu_preinit)
        isync
        blr
 
-_GLOBAL(__setup_cpu_power4)
-       blr
 _GLOBAL(__setup_cpu_ppc970)
        mfspr   r0,SPRN_HID0
        li      r11,5                   /* clear DOZE and SLEEP */
@@ -89,10 +86,10 @@ _GLOBAL(__setup_cpu_ppc970)
 #define CS_SIZE                32
 
        .data
-       .balign L1_CACHE_LINE_SIZE
+       .balign L1_CACHE_BYTES
 cpu_state_storage:     
        .space  CS_SIZE
-       .balign L1_CACHE_LINE_SIZE,0
+       .balign L1_CACHE_BYTES,0
        .text
        
 /* Called in normal context to backup CPU 0 state. This
@@ -112,7 +109,9 @@ _GLOBAL(__save_cpu_setup)
        /* We only deal with 970 for now */
        mfspr   r0,SPRN_PVR
        srwi    r0,r0,16
-       cmpwi   r0,0x39
+       cmpwi   cr0,r0,0x39
+       cmpwi   cr1,r0,0x3c
+       cror    4*cr0+eq,4*cr0+eq,4*cr1+eq
        bne     1f
 
        /* Save HID0,1,4 and 5 */
@@ -144,7 +143,9 @@ _GLOBAL(__restore_cpu_setup)
        /* We only deal with 970 for now */
        mfspr   r0,SPRN_PVR
        srwi    r0,r0,16
-       cmpwi   r0,0x39
+       cmpwi   cr0,r0,0x39
+       cmpwi   cr1,r0,0x3c
+       cror    4*cr0+eq,4*cr0+eq,4*cr1+eq
        bne     1f
 
        /* Clear interrupt prefix */