Received: by 10.192.165.148 with SMTP id m20csp3563742imm; Mon, 7 May 2018 14:37:39 -0700 (PDT) X-Google-Smtp-Source: AB8JxZoJugx7wCb94HIh21t+EtaLlvGAAFcCq7yZwneawGHdtFFq49ntN4SLp1GQouW9WPSYZSRb X-Received: by 10.98.17.220 with SMTP id 89mr37680495pfr.18.1525729059738; Mon, 07 May 2018 14:37:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525729059; cv=none; d=google.com; s=arc-20160816; b=ZzMY5AYYiC9RK2RL2jXvJj40oqa6OqanoiNDORRBvuZmuvv9k4Iq5iBgZgq2iy0U3g 36LySuCBGP0VJ88PAKckTF0KNG6mNewK+F57y9Ox2U9gHlI7vc7x0n3lzhoC4w+V97qt Zct1SBxx3a2Shv7SjZNUJDuusFiDjpCaXM1YrWEqnUdL2UYe4L0t2DtswEuwmKFmetS5 fjH6mmQyNJK6vAfkOBREl8P4kYJoYocbgWYNg3zKIQacWNsoWswHUtT53UAS/1XWfh6u W7chvYZypj3bo1Qp0d6ZGMuq1txBimXoXGrHjTb/qW4bMlugLLCKBm7RRUBdLSBgnwhJ GbiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=zO4ouGf/7xaDXF+0YErkcChnZ/CnjfX68F3nMR8Dp7M=; b=J/M6N6edqqA3I27KO3m0d9WPudFZujA57wNQ/DKoD9rwWlQY8UW9201BfTPJi/WHgE /Ldh4kHJdASbTAV6XzhkYlWTfEyv4bmXIEozufjWds3CHpSzdtqTvpRNl8LrjzhYvW/8 zMef4i28XrlroyNvhyMqxLbIGS3fTdCk+4wyPMBmNK0m7MXLTjksJrGenWArdDz4rZMB viELHIJbEJyTvNAg2iWbYWKcQTRqhDQ8YX+HkaAQiMOxhg3P7uRgrt0AyIeg57jxYizs x65/Ihdf1XyXfsTai5wonha1XJQ/4RLhtx0lDyIlHRE4OHfk1Egx83+GUTdTgA0792lA IjKw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=s/CuRqFG; 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 t8si23065857pfl.344.2018.05.07.14.37.25; Mon, 07 May 2018 14:37:39 -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=s/CuRqFG; 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 S1753217AbeEGVff (ORCPT + 99 others); Mon, 7 May 2018 17:35:35 -0400 Received: from mail.kernel.org ([198.145.29.99]:34372 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752389AbeEGVfd (ORCPT ); Mon, 7 May 2018 17:35:33 -0400 Received: from localhost (unknown [69.71.5.252]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B741B214DA; Mon, 7 May 2018 21:35:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1525728933; bh=PkPwtV5ep6Suue9OcK6vW1OpWwItUNWHs5LnnqNwmic=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=s/CuRqFGPWJHyAkl8M83Fe1EHFtOBvDsVujwB8WSu67Uqz0f058h/6A6zxqmS0TVd +b1rXNsdrbYtclKaOO8L+4CK4eNxBMIuFfkrU4acpXDkF1My75fDH3EaJoZ1o7FDB9 fiSXhI2QtloRoM552gua0hJGkuGkmCOZHLyS/CX8= Date: Mon, 7 May 2018 16:35:31 -0500 From: Bjorn Helgaas To: Sinan Kaya Cc: linux-pci@vger.kernel.org, timur@codeaurora.org, sulrich@codeaurora.org, Keith Busch , Kees Cook , linux-arm-msm@vger.kernel.org, open list , stable@vger.kernel.org, Lukas Wunner , Greg Kroah-Hartman , Bjorn Helgaas , Mika Westerberg , Markus Elfring , linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH] PCI: pciehp: Add quirk for QDF2400 Command Completed erratum Message-ID: <20180507213531.GB133147@bhelgaas-glaptop.roam.corp.google.com> References: <1525602662-1873-1-git-send-email-okaya@codeaurora.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1525602662-1873-1-git-send-email-okaya@codeaurora.org> User-Agent: Mutt/1.9.2 (2017-12-15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, May 06, 2018 at 06:30:53AM -0400, Sinan Kaya wrote: > The QDF2400 controller does not set the Command Completed bit unless > writes to the Slot Command register change "Control" bits. Command > Completed is never set for writes that only change software notification > "Enable" bits. This results in timeouts like this: > > pciehp 0000:00:00.0:pcie004: Timeout on hotplug command 0x1038 > > Cc: stable@vger.kernel.org > Signed-off-by: Sinan Kaya Since there's no bisection benefit for keeping these separate, I folded this into the original quirk and added Mika's reviewed-by. I also added the following ID patch and used PCI_VENDOR_ID_QCOM: commit 333c8c1216c1e7ead6af7b3d667b43eb425b5034 Author: Bjorn Helgaas Date: Mon May 7 15:52:55 2018 -0500 PCI: Add Qualcomm vendor ID Add the Qualcomm vendor ID to pci_ids.h and use it in quirks. Signed-off-by: Bjorn Helgaas diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 2990ad1e7c99..e7bf44515fd6 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -4361,8 +4361,8 @@ static const struct pci_dev_acs_enabled { { PCI_VENDOR_ID_INTEL, 0x15b7, pci_quirk_mf_endpoint_acs }, { PCI_VENDOR_ID_INTEL, 0x15b8, pci_quirk_mf_endpoint_acs }, /* QCOM QDF2xxx root ports */ - { 0x17cb, 0x400, pci_quirk_qcom_rp_acs }, - { 0x17cb, 0x401, pci_quirk_qcom_rp_acs }, + { PCI_VENDOR_ID_QCOM, 0x0400, pci_quirk_qcom_rp_acs }, + { PCI_VENDOR_ID_QCOM, 0x0401, pci_quirk_qcom_rp_acs }, /* Intel PCH root ports */ { PCI_VENDOR_ID_INTEL, PCI_ANY_ID, pci_quirk_intel_pch_acs }, { PCI_VENDOR_ID_INTEL, PCI_ANY_ID, pci_quirk_intel_spt_pch_acs }, diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index cc608fc55334..883cb7bf78aa 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h @@ -2387,6 +2387,8 @@ #define PCI_VENDOR_ID_LENOVO 0x17aa +#define PCI_VENDOR_ID_QCOM 0x17cb + #define PCI_VENDOR_ID_CDNS 0x17cd #define PCI_VENDOR_ID_ARECA 0x17d3 > --- > drivers/pci/hotplug/pciehp_hpc.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/pci/hotplug/pciehp_hpc.c b/drivers/pci/hotplug/pciehp_hpc.c > index e70eba5..974a8f1 100644 > --- a/drivers/pci/hotplug/pciehp_hpc.c > +++ b/drivers/pci/hotplug/pciehp_hpc.c > @@ -914,3 +914,9 @@ static void quirk_cmd_compl(struct pci_dev *pdev) > } > DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_VENDOR_ID_INTEL, PCI_ANY_ID, > PCI_CLASS_BRIDGE_PCI, 8, quirk_cmd_compl); > + > +DECLARE_PCI_FIXUP_CLASS_EARLY(0x17cb, 0x400, > + PCI_CLASS_BRIDGE_PCI, 8, quirk_cmd_compl); > + > +DECLARE_PCI_FIXUP_CLASS_EARLY(0x17cb, 0x401, > + PCI_CLASS_BRIDGE_PCI, 8, quirk_cmd_compl); > -- > 2.7.4 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel