{"id":802843,"url":"http://patchwork.ozlabs.org/api/patches/802843/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pci/patch/20170817181014.1257-3-jonathan.derrick@intel.com/","project":{"id":28,"url":"http://patchwork.ozlabs.org/api/projects/28/?format=json","name":"Linux PCI development","link_name":"linux-pci","list_id":"linux-pci.vger.kernel.org","list_email":"linux-pci@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20170817181014.1257-3-jonathan.derrick@intel.com>","list_archive_url":null,"date":"2017-08-17T18:10:12","name":"[v2,2/4] pci/x86: Move VMD quirks to x86 fixups","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"608ae310bdb033f55eebab370ec52b9be274fd4a","submitter":{"id":68102,"url":"http://patchwork.ozlabs.org/api/people/68102/?format=json","name":"Jon Derrick","email":"jonathan.derrick@intel.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-pci/patch/20170817181014.1257-3-jonathan.derrick@intel.com/mbox/","series":[],"comments":"http://patchwork.ozlabs.org/api/patches/802843/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/802843/checks/","tags":{},"related":[],"headers":{"Return-Path":"<linux-pci-owner@vger.kernel.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=linux-pci-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xYDnR1ksmz9sPt\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri, 18 Aug 2017 04:11:55 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1753900AbdHQSL0 (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tThu, 17 Aug 2017 14:11:26 -0400","from mga09.intel.com ([134.134.136.24]:13743 \"EHLO mga09.intel.com\"\n\trhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S1753898AbdHQSLY (ORCPT <rfc822;linux-pci@vger.kernel.org>);\n\tThu, 17 Aug 2017 14:11:24 -0400","from orsmga005.jf.intel.com ([10.7.209.41])\n\tby orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t17 Aug 2017 11:11:24 -0700","from eremita.lm.intel.com ([10.232.112.28])\n\tby orsmga005.jf.intel.com with ESMTP; 17 Aug 2017 11:11:23 -0700"],"X-ExtLoop1":"1","X-IronPort-AV":"E=Sophos;i=\"5.41,389,1498546800\"; d=\"scan'208\";a=\"138830391\"","From":"Jon Derrick <jonathan.derrick@intel.com>","To":"<linux-pci@vger.kernel.org>, <iommu@lists.linux-foundation.org>","Cc":"Bjorn Helgaas <helgaas@kernel.org>,\n\tDavid Woodhouse <dwmw2@infradead.org>,\n\tKeith Busch <keith.busch@intel.com>, Scott Bauer <scott.bauer@intel.com>,\n\tDavid Fugate <david.fugate@intel.com>, <linux-kernel@vger.kernel.org>,\n\tJon Derrick <jonathan.derrick@intel.com>","Subject":"[PATCH v2 2/4] pci/x86: Move VMD quirks to x86 fixups","Date":"Thu, 17 Aug 2017 12:10:12 -0600","Message-Id":"<20170817181014.1257-3-jonathan.derrick@intel.com>","X-Mailer":"git-send-email 2.9.4","In-Reply-To":"<20170817181014.1257-1-jonathan.derrick@intel.com>","References":"<20170817181014.1257-1-jonathan.derrick@intel.com>","Sender":"linux-pci-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<linux-pci.vger.kernel.org>","X-Mailing-List":"linux-pci@vger.kernel.org"},"content":"VMD currently only exists for Intel x86 products\n\nSigned-off-by: Jon Derrick <jonathan.derrick@intel.com>\n---\n arch/x86/pci/fixup.c | 18 ++++++++++++++++++\n drivers/pci/quirks.c | 17 -----------------\n 2 files changed, 18 insertions(+), 17 deletions(-)","diff":"diff --git a/arch/x86/pci/fixup.c b/arch/x86/pci/fixup.c\nindex 11e4074..ca4b02e5 100644\n--- a/arch/x86/pci/fixup.c\n+++ b/arch/x86/pci/fixup.c\n@@ -618,3 +618,21 @@ static void quirk_apple_mbp_poweroff(struct pci_dev *pdev)\n \t\tdev_info(dev, \"can't work around MacBook Pro poweroff issue\\n\");\n }\n DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x8c10, quirk_apple_mbp_poweroff);\n+\n+/*\n+ * VMD-enabled root ports will change the source ID for all messages\n+ * to the VMD device. Rather than doing device matching with the source\n+ * ID, the AER driver should traverse the child device tree, reading\n+ * AER registers to find the faulting device.\n+ */\n+static void quirk_no_aersid(struct pci_dev *pdev)\n+{\n+\t/* VMD Domain */\n+\tif (pdev->bus->sysdata && pci_domain_nr(pdev->bus) >= 0x10000)\n+\t\tpdev->bus->bus_flags |= PCI_BUS_FLAGS_NO_AERSID;\n+}\n+DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2030, quirk_no_aersid);\n+DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2031, quirk_no_aersid);\n+DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2032, quirk_no_aersid);\n+DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2033, quirk_no_aersid);\n+\ndiff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c\nindex f1c9852..073baba 100644\n--- a/drivers/pci/quirks.c\n+++ b/drivers/pci/quirks.c\n@@ -4671,23 +4671,6 @@ static void quirk_intel_qat_vf_cap(struct pci_dev *pdev)\n }\n DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x443, quirk_intel_qat_vf_cap);\n \n-/*\n- * VMD-enabled root ports will change the source ID for all messages\n- * to the VMD device. Rather than doing device matching with the source\n- * ID, the AER driver should traverse the child device tree, reading\n- * AER registers to find the faulting device.\n- */\n-static void quirk_no_aersid(struct pci_dev *pdev)\n-{\n-\t/* VMD Domain */\n-\tif (pdev->bus->sysdata && pci_domain_nr(pdev->bus) >= 0x10000)\n-\t\tpdev->bus->bus_flags |= PCI_BUS_FLAGS_NO_AERSID;\n-}\n-DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2030, quirk_no_aersid);\n-DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2031, quirk_no_aersid);\n-DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2032, quirk_no_aersid);\n-DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x2033, quirk_no_aersid);\n-\n /* FLR may cause some 82579 devices to hang. */\n static void quirk_intel_no_flr(struct pci_dev *dev)\n {\n","prefixes":["v2","2/4"]}