Lines Matching refs:spr_val

204 int kvmppc_core_emulate_mtspr_e500(struct kvm_vcpu *vcpu, int sprn, ulong spr_val)
212 kvmppc_set_pid(vcpu, spr_val);
215 if (spr_val != 0)
217 vcpu_e500->pid[1] = spr_val;
220 if (spr_val != 0)
222 vcpu_e500->pid[2] = spr_val;
225 vcpu->arch.shared->mas0 = spr_val;
228 vcpu->arch.shared->mas1 = spr_val;
231 vcpu->arch.shared->mas2 = spr_val;
235 vcpu->arch.shared->mas7_3 |= spr_val;
238 vcpu->arch.shared->mas4 = spr_val;
241 vcpu->arch.shared->mas6 = spr_val;
245 vcpu->arch.shared->mas7_3 |= (u64)spr_val << 32;
249 vcpu_e500->l1csr0 = spr_val;
253 vcpu_e500->l1csr1 = spr_val;
257 vcpu_e500->hid0 = spr_val;
260 vcpu_e500->hid1 = spr_val;
265 spr_val);
273 vcpu->arch.pwrmgtcr0 = spr_val;
286 vcpu->arch.ivor[BOOKE_IRQPRIO_SPE_UNAVAIL] = spr_val;
289 vcpu->arch.ivor[BOOKE_IRQPRIO_SPE_FP_DATA] = spr_val;
292 vcpu->arch.ivor[BOOKE_IRQPRIO_SPE_FP_ROUND] = spr_val;
297 vcpu->arch.ivor[BOOKE_IRQPRIO_ALTIVEC_UNAVAIL] = spr_val;
300 vcpu->arch.ivor[BOOKE_IRQPRIO_ALTIVEC_ASSIST] = spr_val;
304 vcpu->arch.ivor[BOOKE_IRQPRIO_PERFORMANCE_MONITOR] = spr_val;
308 vcpu->arch.ivor[BOOKE_IRQPRIO_DBELL] = spr_val;
311 vcpu->arch.ivor[BOOKE_IRQPRIO_DBELL_CRIT] = spr_val;
315 emulated = kvmppc_booke_emulate_mtspr(vcpu, sprn, spr_val);
321 int kvmppc_core_emulate_mfspr_e500(struct kvm_vcpu *vcpu, int sprn, ulong *spr_val)
329 *spr_val = vcpu_e500->pid[0];
332 *spr_val = vcpu_e500->pid[1];
335 *spr_val = vcpu_e500->pid[2];
338 *spr_val = vcpu->arch.shared->mas0;
341 *spr_val = vcpu->arch.shared->mas1;
344 *spr_val = vcpu->arch.shared->mas2;
347 *spr_val = (u32)vcpu->arch.shared->mas7_3;
350 *spr_val = vcpu->arch.shared->mas4;
353 *spr_val = vcpu->arch.shared->mas6;
356 *spr_val = vcpu->arch.shared->mas7_3 >> 32;
360 *spr_val = vcpu->arch.decar;
363 *spr_val = vcpu->arch.tlbcfg[0];
366 *spr_val = vcpu->arch.tlbcfg[1];
371 *spr_val = vcpu->arch.tlbps[0];
376 *spr_val = vcpu->arch.tlbps[1];
379 *spr_val = vcpu_e500->l1csr0;
382 *spr_val = vcpu_e500->l1csr1;
385 *spr_val = vcpu_e500->hid0;
388 *spr_val = vcpu_e500->hid1;
391 *spr_val = vcpu_e500->svr;
395 *spr_val = 0;
399 *spr_val = vcpu->arch.mmucfg;
408 *spr_val = vcpu->arch.eptcfg;
412 *spr_val = vcpu->arch.pwrmgtcr0;
418 *spr_val = vcpu->arch.ivor[BOOKE_IRQPRIO_SPE_UNAVAIL];
421 *spr_val = vcpu->arch.ivor[BOOKE_IRQPRIO_SPE_FP_DATA];
424 *spr_val = vcpu->arch.ivor[BOOKE_IRQPRIO_SPE_FP_ROUND];
429 *spr_val = vcpu->arch.ivor[BOOKE_IRQPRIO_ALTIVEC_UNAVAIL];
432 *spr_val = vcpu->arch.ivor[BOOKE_IRQPRIO_ALTIVEC_ASSIST];
436 *spr_val = vcpu->arch.ivor[BOOKE_IRQPRIO_PERFORMANCE_MONITOR];
440 *spr_val = vcpu->arch.ivor[BOOKE_IRQPRIO_DBELL];
443 *spr_val = vcpu->arch.ivor[BOOKE_IRQPRIO_DBELL_CRIT];
447 emulated = kvmppc_booke_emulate_mfspr(vcpu, sprn, spr_val);