Lines Matching refs:sprn

651 static struct kvmppc_bat *kvmppc_find_bat(struct kvm_vcpu *vcpu, int sprn)  in kvmppc_find_bat()  argument
656 switch (sprn) { in kvmppc_find_bat()
658 bat = &vcpu_book3s->ibat[(sprn - SPRN_IBAT0U) / 2]; in kvmppc_find_bat()
661 bat = &vcpu_book3s->ibat[4 + ((sprn - SPRN_IBAT4U) / 2)]; in kvmppc_find_bat()
664 bat = &vcpu_book3s->dbat[(sprn - SPRN_DBAT0U) / 2]; in kvmppc_find_bat()
667 bat = &vcpu_book3s->dbat[4 + ((sprn - SPRN_DBAT4U) / 2)]; in kvmppc_find_bat()
676 int kvmppc_core_emulate_mtspr_pr(struct kvm_vcpu *vcpu, int sprn, ulong spr_val) in kvmppc_core_emulate_mtspr_pr() argument
680 switch (sprn) { in kvmppc_core_emulate_mtspr_pr()
700 struct kvmppc_bat *bat = kvmppc_find_bat(vcpu, sprn); in kvmppc_core_emulate_mtspr_pr()
702 kvmppc_set_bat(vcpu, bat, !(sprn % 2), (u32)spr_val); in kvmppc_core_emulate_mtspr_pr()
761 to_book3s(vcpu)->gqr[sprn - SPRN_GQR0] = spr_val; in kvmppc_core_emulate_mtspr_pr()
791 (sprn == SPRN_TFHAR))) { in kvmppc_core_emulate_mtspr_pr()
802 if (sprn == SPRN_TFHAR) in kvmppc_core_emulate_mtspr_pr()
804 else if (sprn == SPRN_TEXASR) in kvmppc_core_emulate_mtspr_pr()
841 pr_info_ratelimited("KVM: invalid SPR write: %d\n", sprn); in kvmppc_core_emulate_mtspr_pr()
842 if (sprn & 0x10) { in kvmppc_core_emulate_mtspr_pr()
848 if ((kvmppc_get_msr(vcpu) & MSR_PR) || sprn == 0) { in kvmppc_core_emulate_mtspr_pr()
859 int kvmppc_core_emulate_mfspr_pr(struct kvm_vcpu *vcpu, int sprn, ulong *spr_val) in kvmppc_core_emulate_mfspr_pr() argument
863 switch (sprn) { in kvmppc_core_emulate_mfspr_pr()
869 struct kvmppc_bat *bat = kvmppc_find_bat(vcpu, sprn); in kvmppc_core_emulate_mfspr_pr()
871 if (sprn % 2) in kvmppc_core_emulate_mfspr_pr()
939 *spr_val = to_book3s(vcpu)->gqr[sprn - SPRN_GQR0]; in kvmppc_core_emulate_mfspr_pr()
968 if (sprn == SPRN_TFHAR) in kvmppc_core_emulate_mfspr_pr()
970 else if (sprn == SPRN_TEXASR) in kvmppc_core_emulate_mfspr_pr()
972 else if (sprn == SPRN_TFIAR) in kvmppc_core_emulate_mfspr_pr()
1006 pr_info_ratelimited("KVM: invalid SPR read: %d\n", sprn); in kvmppc_core_emulate_mfspr_pr()
1007 if (sprn & 0x10) { in kvmppc_core_emulate_mfspr_pr()
1013 if ((kvmppc_get_msr(vcpu) & MSR_PR) || sprn == 0 || in kvmppc_core_emulate_mfspr_pr()
1014 sprn == 4 || sprn == 5 || sprn == 6) { in kvmppc_core_emulate_mfspr_pr()