mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00
sparc32: Add back early sun4/sun4c detection so we can warn properly.
We need to do the check before we try to remap the kernel using SRMMU operations. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ee906c9e0b
commit
9b4c514ad2
1 changed files with 23 additions and 0 deletions
|
@ -532,6 +532,29 @@ copy_prom_done:
|
||||||
be go_to_highmem ! this will be a nop then
|
be go_to_highmem ! this will be a nop then
|
||||||
nop
|
nop
|
||||||
|
|
||||||
|
/* Validate that we are in fact running on an
|
||||||
|
* SRMMU based cpu.
|
||||||
|
*/
|
||||||
|
set 0x4000, %g6
|
||||||
|
cmp %g7, %g6
|
||||||
|
bne not_a_sun4
|
||||||
|
nop
|
||||||
|
|
||||||
|
halt_sun4_or_sun4c:
|
||||||
|
ld [%g7 + 0x68], %o1
|
||||||
|
set sun4c_notsup, %o0
|
||||||
|
sub %o0, %l6, %o0
|
||||||
|
call %o1
|
||||||
|
nop
|
||||||
|
ba halt_me
|
||||||
|
nop
|
||||||
|
|
||||||
|
not_a_sun4:
|
||||||
|
lda [%g0] ASI_M_MMUREGS, %g1
|
||||||
|
andcc %g1, 1, %g0
|
||||||
|
be halt_sun4_or_sun4c
|
||||||
|
nop
|
||||||
|
|
||||||
srmmu_remap:
|
srmmu_remap:
|
||||||
/* First, check for a viking (TI) module. */
|
/* First, check for a viking (TI) module. */
|
||||||
set 0x40000000, %g2
|
set 0x40000000, %g2
|
||||||
|
|
Loading…
Add table
Reference in a new issue