From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:46681) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TMlMq-0002pO-0b for qemu-devel@nongnu.org; Fri, 12 Oct 2012 15:57:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TMlMp-0001HB-1R for qemu-devel@nongnu.org; Fri, 12 Oct 2012 15:57:55 -0400 Received: from hub021-nj-6.exch021.serverdata.net ([206.225.164.222]:54286) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TMlMo-0001H7-Ts for qemu-devel@nongnu.org; Fri, 12 Oct 2012 15:57:54 -0400 From: Don Slutz Date: Fri, 12 Oct 2012 15:56:22 -0400 Message-ID: <1350071782-23078-18-git-send-email-Don@CloudSwitch.com> In-Reply-To: <1350071782-23078-1-git-send-email-Don@CloudSwitch.com> References: <1350071782-23078-1-git-send-email-Don@CloudSwitch.com> MIME-Version: 1.0 Content-Type: text/plain Subject: [Qemu-devel] [PATCH v7 17/17] target-i386: target-i386: Add VMWare CPUID Timing information in -machine pc, accel=tcg List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org, kvm@vger.kernel.org, mtosatti@redhat.com, ehabkost@redhat.com, imammedo@redhat.com, avi@redhat.com, afaerber@suse.de, peter.maydell@linaro.org, anthony@codemonkey.ws Cc: Don Slutz Part of "target-i386: Add way to expose VMWare CPUID" This is EAX and EBX data for 0x40000010. Add new #define CPUID_HV_TIMING_INFO for this. The best documentation I have found is: http://article.gmane.org/gmane.comp.emulators.kvm.devel/22643 And a test under ESXi 4.0 shows that VMware is setting this data. Signed-off-by: Don Slutz --- target-i386/cpu.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/target-i386/cpu.c b/target-i386/cpu.c index 49e5db3..924db0d 100644 --- a/target-i386/cpu.c +++ b/target-i386/cpu.c @@ -1936,6 +1936,12 @@ void cpu_x86_cpuid(CPUX86State *env, uint32_t index, uint32_t count, *ecx = 0; *edx = 0; break; + case 0x40000010: + *eax = env->tsc_khz; + *ebx = 1000000; /* apic_khz */ + *ecx = 0; + *edx = 0; + break; case 0x80000000: *eax = env->cpuid_xlevel; *ebx = env->cpuid_vendor1; -- 1.7.1