From patchwork Thu Jul 5 09:09:53 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robert Hoo X-Patchwork-Id: 939772 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=linux.intel.com Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 41Lsc26lQ0z9s2R for ; Thu, 5 Jul 2018 19:13:53 +1000 (AEST) Received: from localhost ([::1]:51206 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fb0Kk-0003Mu-7M for incoming@patchwork.ozlabs.org; Thu, 05 Jul 2018 05:13:50 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42461) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fb0HB-0000rp-N8 for qemu-devel@nongnu.org; Thu, 05 Jul 2018 05:10:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fb0H6-00072u-30 for qemu-devel@nongnu.org; Thu, 05 Jul 2018 05:10:09 -0400 Received: from mga02.intel.com ([134.134.136.20]:23698) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fb0H5-0006vV-Or for qemu-devel@nongnu.org; Thu, 05 Jul 2018 05:10:04 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Jul 2018 02:10:01 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,311,1526367600"; d="scan'208";a="69807600" Received: from sqa-gate.sh.intel.com (HELO robert-ivt.tsp.org) ([10.239.48.212]) by fmsmga001.fm.intel.com with ESMTP; 05 Jul 2018 02:10:00 -0700 From: Robert Hoo To: qemu-devel@nongnu.org, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com Date: Thu, 5 Jul 2018 17:09:53 +0800 Message-Id: <1530781798-183214-1-git-send-email-robert.hu@linux.intel.com> X-Mailer: git-send-email 1.8.3.1 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 134.134.136.20 Subject: [Qemu-devel] [PATCH v4 0/5] Add Icelake CPU model X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: robert.hu@intel.com, wei.w.wang@intel.com, Robert Hoo , jingqi.liu@intel.com Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" This patch set defines the new guest CPU models of Icelake. The first patch defines new indices for IA32_PRED_CMD MSR (IBPB) and IA32_ARCH_CAPABILITIES MSR. Other patches add CPUID bits feature words for new features, like PCONFIG, WBNOINVD. The final patch defines Icelake-{Server,Client} CPU models. Changelog: v4 At present, mark CPUID_7_0_EDX_ARCH_CAPABILITIES unmigratable. v3 Remove ARCH_CAPABILITIES from Icelake CPU model, at present. Going to compose a separate patch to do 1) qemu set ARCH_CAPABILITES MSR with some default value. 2) expand current CPU feature expression frame work from CPUID features only to MSR bit included as well. Fix some patch format error and update some trivial patch descrptions. v2 Per Paolo's comment, remove unnecessary CPU vmstate check for write/read only IA32_PRED_CMD and IA32_ARCH_CAPABILITIES MSRs. Robert Hoo (5): i386: Add new MSR indices for IA32_PRED_CMD and IA32_ARCH_CAPABILITIES i386: Add CPUID bit and feature words for IA32_ARCH_CAPABILITIES MSR i386: Add CPUID bit for PCONFIG i386: Add CPUID bit for WBNOINVD i386: Add new CPU model Icelake-{Server,Client} target/i386/cpu.c | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- target/i386/cpu.h | 6 +++ 2 files changed, 125 insertions(+), 3 deletions(-)