Make cpu_get_real_ticks use mfspr
commit4a9590f32e5692114aaae4ca10da89dac633e164
authorAlexander Graf <agraf@suse.de>
Sat, 3 Apr 2010 09:37:26 +0000 (3 11:37 +0200)
committermalc <av1474@comtv.ru>
Sat, 3 Apr 2010 10:26:45 +0000 (3 14:26 +0400)
tree91f5bab144307c88d59785ca41f1a55efadd3cd0
parent93c5a32f89c19a97badd0aa79d2ac2e44376b40e
Make cpu_get_real_ticks use mfspr

PowerPC CPUs have had two ways to read the time base for quite some time now.
They provide it using the mfspr instruction or - if a special bit is set in
that opcode - using mftb. For timekeeping we're currently using mftb.

While trying to get Qemu up and running on an e500v2 system, I stumbled over
the CPU not supporting mftbu. It just throws an illegal instruction trap.

So let's read the SPR values instead. All PPC CPUs should support them anyways.

I tested this patch on an e500v2 system where it makes qemu work and on my 970MP
system with 32-bit user space where everything still works with this patch
applied.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: malc <av1474@comtv.ru>
qemu-timer.h