|
@@ -133,7 +133,7 @@ prom_sun4v_name:
|
|
|
prom_niagara_prefix:
|
|
|
.asciz "SUNW,UltraSPARC-T"
|
|
|
prom_sparc_prefix:
|
|
|
- .asciz "SPARC-T"
|
|
|
+ .asciz "SPARC-"
|
|
|
.align 4
|
|
|
prom_root_compatible:
|
|
|
.skip 64
|
|
@@ -396,7 +396,7 @@ sun4v_chip_type:
|
|
|
or %g1, %lo(prom_cpu_compatible), %g1
|
|
|
sethi %hi(prom_sparc_prefix), %g7
|
|
|
or %g7, %lo(prom_sparc_prefix), %g7
|
|
|
- mov 7, %g3
|
|
|
+ mov 6, %g3
|
|
|
90: ldub [%g7], %g2
|
|
|
ldub [%g1], %g4
|
|
|
cmp %g2, %g4
|
|
@@ -408,10 +408,23 @@ sun4v_chip_type:
|
|
|
|
|
|
sethi %hi(prom_cpu_compatible), %g1
|
|
|
or %g1, %lo(prom_cpu_compatible), %g1
|
|
|
- ldub [%g1 + 7], %g2
|
|
|
+ ldub [%g1 + 6], %g2
|
|
|
+ cmp %g2, 'T'
|
|
|
+ be,pt %xcc, 70f
|
|
|
+ cmp %g2, 'M'
|
|
|
+ bne,pn %xcc, 4f
|
|
|
+ nop
|
|
|
+
|
|
|
+70: ldub [%g1 + 7], %g2
|
|
|
cmp %g2, '3'
|
|
|
be,pt %xcc, 5f
|
|
|
mov SUN4V_CHIP_NIAGARA3, %g4
|
|
|
+ cmp %g2, '4'
|
|
|
+ be,pt %xcc, 5f
|
|
|
+ mov SUN4V_CHIP_NIAGARA4, %g4
|
|
|
+ cmp %g2, '5'
|
|
|
+ be,pt %xcc, 5f
|
|
|
+ mov SUN4V_CHIP_NIAGARA5, %g4
|
|
|
ba,pt %xcc, 4f
|
|
|
nop
|
|
|
|
|
@@ -543,6 +556,12 @@ niagara_tlb_fixup:
|
|
|
be,pt %xcc, niagara2_patch
|
|
|
nop
|
|
|
cmp %g1, SUN4V_CHIP_NIAGARA3
|
|
|
+ be,pt %xcc, niagara2_patch
|
|
|
+ nop
|
|
|
+ cmp %g1, SUN4V_CHIP_NIAGARA4
|
|
|
+ be,pt %xcc, niagara2_patch
|
|
|
+ nop
|
|
|
+ cmp %g1, SUN4V_CHIP_NIAGARA5
|
|
|
be,pt %xcc, niagara2_patch
|
|
|
nop
|
|
|
|