sparc32: simpler cputype check in head_32.S
authorSam Ravnborg <sam@ravnborg.org>
Sat, 12 May 2012 01:43:49 +0000 (01:43 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sat, 12 May 2012 18:32:00 +0000 (11:32 -0700)
We know this is not a sun4/sun4c - as we checked earlier.
So no need to repeat the check.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc/kernel/head_32.S

index 17e00c1ff5d1014ed1862dabeb43ceef10d93c2f..9b2d43db2c4617453e9b278149eeffe2531db5f6 100644 (file)
@@ -699,35 +699,26 @@ execute_in_high_mem:
                ba continue_boot
                 nop
 #endif
+
+/* Check to cputype. We may be booted on a sun4u (64 bit box),
+ * and sun4d needs special treatment.
+ */
+
                set     cputypval, %o2
                ldub    [%o2 + 0x4], %l1
 
-               cmp     %l1, ' '
-               be      no_sun4c_here
-                cmp    %l1, 'c'
-               be      no_sun4c_here
-                cmp    %l1, 'm'
-               be      1f
+               cmp     %l1, 'm'
+               be      sun4m_init
                 cmp    %l1, 's'
-               be      1f
+               be      sun4m_init
                 cmp    %l1, 'd'
-               be      1f
+               be      sun4d_init
                 cmp    %l1, 'e'
                be      no_sun4e_here           ! Could be a sun4e.
                 nop
                b       no_sun4u_here           ! AIEEE, a V9 sun4u... Get our BIG BROTHER kernel :))
                 nop
 
-1:             set     cputypval, %l1
-               ldub    [%l1 + 0x4], %l1
-               cmp     %l1, 'd'                ! Let us see how the beast will die
-               be      sun4d_init
-                nop
-
-               /* If not sun4d assume sun4m */
-               b       sun4m_init
-                nop
-
 /* CPUID in bootbus can be found at PA 0xff0140000 */
 #define SUN4D_BOOTBUS_CPUID     0xf0140000
 
@@ -1026,13 +1017,6 @@ continue_boot:
                /* We should not get here. */
                call    halt_me
                 nop
-no_sun4c_here:
-               ld      [%g7 + 0x68], %o1
-               set     sun4c_notsup, %o0
-               call    %o1
-                nop
-               b       halt_me
-                nop
 
 no_sun4e_here:
                ld      [%g7 + 0x68], %o1