From patchwork Fri Dec 15 20:52:45 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bjorn Helgaas X-Patchwork-Id: 10116011 X-Patchwork-Delegate: bhelgaas@google.com Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id DD9BE60327 for ; Fri, 15 Dec 2017 20:52:52 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CF8A82625B for ; Fri, 15 Dec 2017 20:52:52 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C26572875A; Fri, 15 Dec 2017 20:52:52 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3F1532625B for ; Fri, 15 Dec 2017 20:52:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756038AbdLOUwv (ORCPT ); Fri, 15 Dec 2017 15:52:51 -0500 Received: from mail.kernel.org ([198.145.29.99]:59098 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755596AbdLOUwv (ORCPT ); Fri, 15 Dec 2017 15:52:51 -0500 Received: from localhost (unknown [69.71.4.159]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id C797E21879; Fri, 15 Dec 2017 20:52:49 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C797E21879 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=helgaas@kernel.org Date: Fri, 15 Dec 2017 14:52:45 -0600 From: Bjorn Helgaas To: John Strader Cc: linux-pci@vger.kernel.org Subject: Re: Quirk - broken_intx_masking - Ceton InfiniTV4 Message-ID: <20171215205244.GA30595@bhelgaas-glaptop.roam.corp.google.com> References: <92a65068-60b2-c1a8-9e17-ac41fe3c5c93@code.jackst.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <92a65068-60b2-c1a8-9e17-ac41fe3c5c93@code.jackst.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On Thu, Dec 14, 2017 at 05:12:59AM -0800, John Strader wrote: > Submitting a device for quirk_broken_intx_masking, as requested by > modinfo for vfio-pci "nointxmask" parameter. > > The device is a Ceton InfiniTV4 [1b7c:0004].  I can confirm that this > device operates correctly with vfio when passed the nointxmask > parameter.  I can also confirm that applying quirk_broken_intx_masking > via drivers/pci/quirks.c in a custom compiled kernel also works.  I no > longer compile the custom kernel and seem to have misplaced the patch, > so I won't bother remaking a one-liner, but it was of the standard form: > > DECLARE_PCI_FIXUP_FINAL(0x1b7c, 0x0004, >                         quirk_broken_intx_masking); Thanks for your report! I applied the patch below to pci/virtualization for v4.16. commit 7f50dcad8de026d7533a0d1295a27d843ce965aa Author: Bjorn Helgaas Date: Fri Dec 15 14:51:44 2017 -0600 PCI: Mark Ceton InfiniTV4 INTx masking as broken PCI_COMMAND_INTX_DISABLE is writable on the Ceton InfiniTV4, indicating that the device supports disabling the INTx# signal, but it apparently doesn't work. Mark the device so we know we can't use PCI_COMMAND_INTX_DISABLE to disable its interrupts. Link: https://lkml.kernel.org/r/92a65068-60b2-c1a8-9e17-ac41fe3c5c93@code.jackst.com Reported-by: John Strader Signed-off-by: Bjorn Helgaas diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 10684b17d0bd..bb9737ec64b5 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -3215,6 +3215,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_CHELSIO, 0x0030, quirk_broken_intx_masking); DECLARE_PCI_FIXUP_FINAL(0x1814, 0x0601, /* Ralink RT2800 802.11n PCI */ quirk_broken_intx_masking); +DECLARE_PCI_FIXUP_FINAL(0x1b7c, 0x0004, /* Ceton InfiniTV4 */ + quirk_broken_intx_masking); /* * Realtek RTL8169 PCI Gigabit Ethernet Controller (rev 10)