diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2020-03-10 11:22:47 +0100 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2020-03-16 14:29:41 +0100 |
commit | 34160e05257328a3e18200cccfe394e7aeb10be3 (patch) | |
tree | 8d0ca9ad48e29dc8da184930c904572d02f9601f /src/fw/paravirt.c | |
parent | d68335174dc22d1201899607693a9b7ca0509f18 (diff) | |
download | seabios-34160e05257328a3e18200cccfe394e7aeb10be3.tar.gz |
kvm: add support for reading tsc frequency via cpuid.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200310102248.28412-3-kraxel@redhat.com
Diffstat (limited to 'src/fw/paravirt.c')
-rw-r--r-- | src/fw/paravirt.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/fw/paravirt.c b/src/fw/paravirt.c index ef420931..1e3d6012 100644 --- a/src/fw/paravirt.c +++ b/src/fw/paravirt.c @@ -67,6 +67,11 @@ static void kvm_detect(void) if (strcmp(signature, "KVMKVMKVM") == 0) { dprintf(1, "Running on KVM\n"); PlatformRunningOn |= PF_KVM; + if (eax >= KVM_CPUID_SIGNATURE + 0x10) { + cpuid(KVM_CPUID_SIGNATURE + 0x10, &eax, &ebx, &ecx, &edx); + dprintf(1, "kvm: have invtsc, freq %u kHz\n", eax); + tsctimer_setfreq(eax, "invtsc"); + } } } |