|
@@ -83,35 +83,35 @@ END_FTR_SECTION_IFCLR(CPU_FTR_ARCH_207S)
|
|
|
cmpwi r4, 0
|
|
|
beq 23f /* skip if not */
|
|
|
BEGIN_FTR_SECTION
|
|
|
- ld r3, HSTATE_MMCR(r13)
|
|
|
+ ld r3, HSTATE_MMCR0(r13)
|
|
|
andi. r4, r3, MMCR0_PMAO_SYNC | MMCR0_PMAO
|
|
|
cmpwi r4, MMCR0_PMAO
|
|
|
beql kvmppc_fix_pmao
|
|
|
END_FTR_SECTION_IFSET(CPU_FTR_PMAO_BUG)
|
|
|
- lwz r3, HSTATE_PMC(r13)
|
|
|
- lwz r4, HSTATE_PMC + 4(r13)
|
|
|
- lwz r5, HSTATE_PMC + 8(r13)
|
|
|
- lwz r6, HSTATE_PMC + 12(r13)
|
|
|
- lwz r8, HSTATE_PMC + 16(r13)
|
|
|
- lwz r9, HSTATE_PMC + 20(r13)
|
|
|
+ lwz r3, HSTATE_PMC1(r13)
|
|
|
+ lwz r4, HSTATE_PMC2(r13)
|
|
|
+ lwz r5, HSTATE_PMC3(r13)
|
|
|
+ lwz r6, HSTATE_PMC4(r13)
|
|
|
+ lwz r8, HSTATE_PMC5(r13)
|
|
|
+ lwz r9, HSTATE_PMC6(r13)
|
|
|
mtspr SPRN_PMC1, r3
|
|
|
mtspr SPRN_PMC2, r4
|
|
|
mtspr SPRN_PMC3, r5
|
|
|
mtspr SPRN_PMC4, r6
|
|
|
mtspr SPRN_PMC5, r8
|
|
|
mtspr SPRN_PMC6, r9
|
|
|
- ld r3, HSTATE_MMCR(r13)
|
|
|
- ld r4, HSTATE_MMCR + 8(r13)
|
|
|
- ld r5, HSTATE_MMCR + 16(r13)
|
|
|
- ld r6, HSTATE_MMCR + 24(r13)
|
|
|
- ld r7, HSTATE_MMCR + 32(r13)
|
|
|
+ ld r3, HSTATE_MMCR0(r13)
|
|
|
+ ld r4, HSTATE_MMCR1(r13)
|
|
|
+ ld r5, HSTATE_MMCRA(r13)
|
|
|
+ ld r6, HSTATE_SIAR(r13)
|
|
|
+ ld r7, HSTATE_SDAR(r13)
|
|
|
mtspr SPRN_MMCR1, r4
|
|
|
mtspr SPRN_MMCRA, r5
|
|
|
mtspr SPRN_SIAR, r6
|
|
|
mtspr SPRN_SDAR, r7
|
|
|
BEGIN_FTR_SECTION
|
|
|
- ld r8, HSTATE_MMCR + 40(r13)
|
|
|
- ld r9, HSTATE_MMCR + 48(r13)
|
|
|
+ ld r8, HSTATE_MMCR2(r13)
|
|
|
+ ld r9, HSTATE_SIER(r13)
|
|
|
mtspr SPRN_MMCR2, r8
|
|
|
mtspr SPRN_SIER, r9
|
|
|
END_FTR_SECTION_IFSET(CPU_FTR_ARCH_207S)
|