From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.9 required=3.0 tests=BAYES_00, DATE_IN_FUTURE_06_12,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 485C8C4346E for ; Tue, 29 Sep 2020 08:15:15 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 175F220BED for ; Tue, 29 Sep 2020 08:15:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727679AbgI2IPO (ORCPT ); Tue, 29 Sep 2020 04:15:14 -0400 Received: from mga12.intel.com ([192.55.52.136]:6009 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725536AbgI2IPN (ORCPT ); Tue, 29 Sep 2020 04:15:13 -0400 IronPort-SDR: J9cX7kLAZ5XUAARyemAX9Ny7+zpASNeE0ucKIj6+pp0ZYvDf1qqKUfFEwQ0AjexzfejSgLNuKE /HS9yYbz9NOg== X-IronPort-AV: E=McAfee;i="6000,8403,9758"; a="141546655" X-IronPort-AV: E=Sophos;i="5.77,317,1596524400"; d="scan'208";a="141546655" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Sep 2020 01:15:11 -0700 IronPort-SDR: HdJEXw08RW2OmX8vo3ukX1Qwk5R1r9o2nTX3SKpagcWgz+VVDf6bA97Y6oSDzNrn7hKWI2yc+G 1PYnviIZyXYg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,317,1596524400"; d="scan'208";a="345187563" Received: from cfl-host.sh.intel.com ([10.239.158.142]) by fmsmga002.fm.intel.com with ESMTP; 29 Sep 2020 01:15:07 -0700 From: Fred Gao To: kvm@vger.kernel.org, intel-gfx@lists.freedesktop.org Cc: Fred Gao , Zhenyu Wang , Xiong Zhang , Hang Yuan , Stuart Summers , Lucas De Marchi Subject: [PATCH v2] vfio/pci: Refine Intel IGD OpRegion support Date: Wed, 30 Sep 2020 00:10:38 +0800 Message-Id: <20200929161038.15465-1-fred.gao@intel.com> X-Mailer: git-send-email 2.24.1.1.gb6d4d82bd5 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org Bypass the IGD initialization for Intel's dgfx devices with own expansion ROM and the host/LPC bridge config space are no longer accessed. v2: simply test if discrete or integrated gfx device with root bus. (Alex Williamson) Cc: Zhenyu Wang Cc: Xiong Zhang Cc: Hang Yuan Cc: Stuart Summers Signed-off-by: Lucas De Marchi Signed-off-by: Fred Gao --- drivers/vfio/pci/vfio_pci.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/vfio/pci/vfio_pci.c b/drivers/vfio/pci/vfio_pci.c index f634c81998bb..9258ccfadb79 100644 --- a/drivers/vfio/pci/vfio_pci.c +++ b/drivers/vfio/pci/vfio_pci.c @@ -336,10 +336,11 @@ static int vfio_pci_enable(struct vfio_pci_device *vdev) if (!vfio_vga_disabled() && vfio_pci_is_vga(pdev)) vdev->has_vga = true; - + /* Intel's dgfx should not appear on root bus */ if (vfio_pci_is_vga(pdev) && pdev->vendor == PCI_VENDOR_ID_INTEL && - IS_ENABLED(CONFIG_VFIO_PCI_IGD)) { + IS_ENABLED(CONFIG_VFIO_PCI_IGD) && + pci_is_root_bus(pdev->bus)) { ret = vfio_pci_igd_init(vdev); if (ret) { pci_warn(pdev, "Failed to setup Intel IGD regions\n"); -- 2.24.1.1.gb6d4d82bd5