aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel/head_32.S
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2012-05-11 21:43:49 -0400
committerDavid S. Miller <davem@davemloft.net>2012-05-12 14:32:00 -0400
commitd6ea55733ddfe0d9668096d3de78db479a83cc47 (patch)
tree85f65fadab34b548cf47a43e7e3d9f9e86e953ff /arch/sparc/kernel/head_32.S
parenteb06f476309d42150a54a440d456374475aaacce (diff)
sparc32: simpler cputype check in head_32.S
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>
Diffstat (limited to 'arch/sparc/kernel/head_32.S')
-rw-r--r--arch/sparc/kernel/head_32.S34
1 files changed, 9 insertions, 25 deletions
diff --git a/arch/sparc/kernel/head_32.S b/arch/sparc/kernel/head_32.S
index 17e00c1ff5d..9b2d43db2c4 100644
--- a/arch/sparc/kernel/head_32.S
+++ b/arch/sparc/kernel/head_32.S
@@ -699,35 +699,26 @@ execute_in_high_mem:
699 ba continue_boot 699 ba continue_boot
700 nop 700 nop
701#endif 701#endif
702
703/* Check to cputype. We may be booted on a sun4u (64 bit box),
704 * and sun4d needs special treatment.
705 */
706
702 set cputypval, %o2 707 set cputypval, %o2
703 ldub [%o2 + 0x4], %l1 708 ldub [%o2 + 0x4], %l1
704 709
705 cmp %l1, ' ' 710 cmp %l1, 'm'
706 be no_sun4c_here 711 be sun4m_init
707 cmp %l1, 'c'
708 be no_sun4c_here
709 cmp %l1, 'm'
710 be 1f
711 cmp %l1, 's' 712 cmp %l1, 's'
712 be 1f 713 be sun4m_init
713 cmp %l1, 'd' 714 cmp %l1, 'd'
714 be 1f 715 be sun4d_init
715 cmp %l1, 'e' 716 cmp %l1, 'e'
716 be no_sun4e_here ! Could be a sun4e. 717 be no_sun4e_here ! Could be a sun4e.
717 nop 718 nop
718 b no_sun4u_here ! AIEEE, a V9 sun4u... Get our BIG BROTHER kernel :)) 719 b no_sun4u_here ! AIEEE, a V9 sun4u... Get our BIG BROTHER kernel :))
719 nop 720 nop
720 721
7211: set cputypval, %l1
722 ldub [%l1 + 0x4], %l1
723 cmp %l1, 'd' ! Let us see how the beast will die
724 be sun4d_init
725 nop
726
727 /* If not sun4d assume sun4m */
728 b sun4m_init
729 nop
730
731/* CPUID in bootbus can be found at PA 0xff0140000 */ 722/* CPUID in bootbus can be found at PA 0xff0140000 */
732#define SUN4D_BOOTBUS_CPUID 0xf0140000 723#define SUN4D_BOOTBUS_CPUID 0xf0140000
733 724
@@ -1026,13 +1017,6 @@ continue_boot:
1026 /* We should not get here. */ 1017 /* We should not get here. */
1027 call halt_me 1018 call halt_me
1028 nop 1019 nop
1029no_sun4c_here:
1030 ld [%g7 + 0x68], %o1
1031 set sun4c_notsup, %o0
1032 call %o1
1033 nop
1034 b halt_me
1035 nop
1036 1020
1037no_sun4e_here: 1021no_sun4e_here:
1038 ld [%g7 + 0x68], %o1 1022 ld [%g7 + 0x68], %o1