Received: by 2002:ac0:aa62:0:0:0:0:0 with SMTP id w31-v6csp1944615ima; Thu, 25 Oct 2018 07:22:44 -0700 (PDT) X-Google-Smtp-Source: AJdET5dYw2T9URV6G1D+BPwNLtpBAduhuWm2uVJOHGWetDmyEXmYMYCw7GK02BcfQUSAgcNv91vq X-Received: by 2002:a17:902:d907:: with SMTP id c7-v6mr1706415plz.198.1540477364555; Thu, 25 Oct 2018 07:22:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1540477364; cv=none; d=google.com; s=arc-20160816; b=sZs7LF4Uwy30eIevpm7rs8Z6BJL8zWjXDykBr0WSM6IGna4N3axsVyDnZZ3lCmPOEV 6THzAVgRs2M0Az8IPTe33Q5E91b3NHYkcnivK2Of1P3WIPDyv9qPIAs4xSHF66raUkgq Cj0zsKyfXWiKcyuYNS9mUQYBbnrP3jJUjFvSdKtorI6I4W3Y0gLMLLuwSuV6ldVkG6HC S812h1tuvnWosM7Euqdu3wp+1/LWlMprsSdb7Sev8T+ZwLzFAXSFZhhI/dtU4jjjUMAx cD/l79c/IB0jo8ZsAdGLvxu6aIwwq7YJmf6gE7Dzd8sSuag7GfViAmqYzCvyfB0BzKFM gT6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=6nYH67R9BTouNw5N7rRCDKoZ7PYfqufxFbnDZuCK7G4=; b=ZvvujebWGjAso8tjfntAsoSZLS4/QZp0lZ2QFiYJrNhj0VTpMLP6UeqJabNS2Xwfwn CxkuRMYlVLzcqV/khddHqhwbzicN70/S2f6LdU6SNFvKVO/LoWcrg0x82kvGvN8MF/ej +Dze6DnEO1S+lowrCaA80cWKK5nshb00vRYIt13uPNW29klhTk5EiJKLmvrP4Bq2ky+X drYCdxlJG/cwQXTqbax6t70kjxRAJnCGkhnFS9Z90Wc43jLJF+hgNpBeLAJ96X0XFieb WVwTMEhQIcpzAo/GA9dcSscYQZ6GlEqqD5iYzsR6ipE5sqPtGzuW/xclPnZdw1340kuT ilbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=RK2kMMG2; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 1-v6si8256322pls.296.2018.10.25.07.21.56; Thu, 25 Oct 2018 07:22:44 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=RK2kMMG2; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731525AbeJYWyX (ORCPT + 99 others); Thu, 25 Oct 2018 18:54:23 -0400 Received: from mail.kernel.org ([198.145.29.99]:37342 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731475AbeJYWyW (ORCPT ); Thu, 25 Oct 2018 18:54:22 -0400 Received: from sasha-vm.mshome.net (unknown [167.98.65.38]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id C02D82085B; Thu, 25 Oct 2018 14:21:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1540477284; bh=QWIkCLJQoAO4bSisqMrkFG8BPZrFTNBlRJV6BiO2SD8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RK2kMMG27LXWblzb5ojQCbDho+d0OBakYNiX2w7O2Hvp8HS8F3ngRU8KKrK8vVWPa zSmNhWJ3ts0ct2suDIGG3ZNTuCqMjZPxjk3vZpU6f86BVLXP9cISCldHxw+dDJelSG Zti6YgA6NgnBlNqXtthx1hp8p3J+vVqWj8EnotFk= From: Sasha Levin To: stable@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Prarit Bhargava , Bjorn Helgaas , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , Andi Kleen , Sasha Levin Subject: [PATCH AUTOSEL 3.18 97/98] x86/PCI: Mark Broadwell-EP Home Agent 1 as having non-compliant BARs Date: Thu, 25 Oct 2018 10:18:52 -0400 Message-Id: <20181025141853.214051-97-sashal@kernel.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181025141853.214051-1-sashal@kernel.org> References: <20181025141853.214051-1-sashal@kernel.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Prarit Bhargava [ Upstream commit da77b67195de1c65bef4908fa29967c4d0af2da2 ] Commit b894157145e4 ("x86/PCI: Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs") marked Home Agent 0 & PCU has having non-compliant BARs. Home Agent 1 also has non-compliant BARs. Mark Home Agent 1 as having non-compliant BARs so the PCI core doesn't touch them. The problem with these devices is documented in the Xeon v4 specification update: BDF2 PCI BARs in the Home Agent Will Return Non-Zero Values During Enumeration Problem: During system initialization the Operating System may access the standard PCI BARs (Base Address Registers). Due to this erratum, accesses to the Home Agent BAR registers (Bus 1; Device 18; Function 0,4; Offsets (0x14-0x24) will return non-zero values. Implication: The operating system may issue a warning. Intel has not observed any functional failures due to this erratum. Link: http://www.intel.com/content/www/us/en/processors/xeon/xeon-e5-v4-spec-update.html Fixes: b894157145e4 ("x86/PCI: Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs") Signed-off-by: Prarit Bhargava Signed-off-by: Bjorn Helgaas CC: Thomas Gleixner CC: Ingo Molnar CC: "H. Peter Anvin" CC: Andi Kleen Signed-off-by: Sasha Levin --- arch/x86/pci/fixup.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/arch/x86/pci/fixup.c b/arch/x86/pci/fixup.c index f16af96c60a2..156fbb69031c 100644 --- a/arch/x86/pci/fixup.c +++ b/arch/x86/pci/fixup.c @@ -554,9 +554,16 @@ static void twinhead_reserve_killing_zone(struct pci_dev *dev) } DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x27B9, twinhead_reserve_killing_zone); +/* + * Broadwell EP Home Agent BARs erroneously return non-zero values when read. + * + * See http://www.intel.com/content/www/us/en/processors/xeon/xeon-e5-v4-spec-update.html + * entry BDF2. + */ static void pci_bdwep_bar(struct pci_dev *dev) { dev->non_compliant_bars = 1; } +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x6f60, pci_bdwep_bar); DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x6fa0, pci_bdwep_bar); DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_INTEL, 0x6fc0, pci_bdwep_bar); -- 2.17.1