From: Bjorn Helgaas <helgaas@kernel.org>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: Jacek Lawrynowicz <jacek.lawrynowicz@intel.com>,
linux-pci@vger.kernel.org,
Alex Williamson <alex.williamson@redhat.com>,
Joerg Roedel <jroedel@suse.de>,
David Woodhouse <dwmw2@infradead.org>,
iommu@lists.linux-foundation.org
Subject: Re: [PATCH v4 0/6] PCI: Support multiple DMA aliases
Date: Tue, 12 Apr 2016 13:10:31 -0500 [thread overview]
Message-ID: <20160412181031.GA13093@localhost> (raw)
In-Reply-To: <20160412043828.GA11361@localhost>
On Mon, Apr 11, 2016 at 11:38:28PM -0500, Bjorn Helgaas wrote:
> On Wed, Feb 24, 2016 at 01:43:32PM -0600, Bjorn Helgaas wrote:
> > This is a revision of Jacek's v3 posting:
> > http://lkml.kernel.org/r/1454152012-46337-1-git-send-email-jacek.lawrynowicz@intel.com
> >
> > The changes from v3 are:
> >
> > - Split into smaller patches for reviewability
> > - Move printk when adding DMA alias
> > - Change dma_alias_is_enabled() interface to take two pci_devs
> > - Rename dma_alias_is_enabled() to indicate PCI context
> >
> > The only remaining thing I want to sort out is the dma_alias_is_enabled()
> > vs pci_for_each_dma_alias() question Alex raised. I'll respond to the
> > relevant part of the patch in this series with my specific questions.
> >
> > ---
> >
> > Bjorn Helgaas (1):
> > PCI: Rename dma_alias_is_enabled() to pci_devs_are_dma_aliases()
> >
> > Jacek Lawrynowicz (5):
> > PCI: Add pci_add_dma_alias() to abstract implementation
> > PCI: Move informational printk to pci_add_dma_alias()
> > PCI: Add support for multiple DMA aliases
> > pci: Add DMA alias quirk for mic_x200_dma
> > PCI: Squash pci_dev_flags to remove holes
>
> I applied this series to pci/ntb for v4.7.
Jacek sent another patch to add a second PCI ID. I don't see it on the
list, probably because it's got too much fancy encoding. I applied it, so
the last patch now looks like this:
commit b1a928cdb477037fb7c10fbf94c47f65f2bcce77
Author: Jacek Lawrynowicz <jacek.lawrynowicz@intel.com>
Date: Thu Mar 3 15:53:20 2016 +0100
PCI: Add DMA alias quirk for mic_x200_dma
The MIC x200 NTB forwards DMA transactions upstream using multiple alien
RIDs. These RIDs have to be added as aliases to the DMA device to allow
buffer access when the IOMMU is enabled.
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Alex Williamson <alex.williamson@redhat.com>
Acked-by: David Woodhouse <David.Woodhouse@intel.com>
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 7559e40..8889ac4 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -3725,6 +3725,21 @@ DECLARE_PCI_FIXUP_HEADER(0x1283, 0x8892, quirk_use_pcie_bridge_dma_alias);
DECLARE_PCI_FIXUP_HEADER(0x8086, 0x244e, quirk_use_pcie_bridge_dma_alias);
/*
+ * MIC x200 NTB forwards PCIe traffic using multiple alien RIDs. They have to
+ * be added as aliases to the DMA device in order to allow buffer access
+ * when IOMMU is enabled. Following devfns have to match RIT-LUT table
+ * programmed in the EEPROM.
+ */
+static void quirk_mic_x200_dma_alias(struct pci_dev *pdev)
+{
+ pci_add_dma_alias(pdev, PCI_DEVFN(0x10, 0x0));
+ pci_add_dma_alias(pdev, PCI_DEVFN(0x11, 0x0));
+ pci_add_dma_alias(pdev, PCI_DEVFN(0x12, 0x3));
+}
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2260, quirk_mic_x200_dma_alias);
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2264, quirk_mic_x200_dma_alias);
+
+/*
* Intersil/Techwell TW686[4589]-based video capture cards have an empty (zero)
* class code. Fix it.
*/
prev parent reply other threads:[~2016-04-12 18:10 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-24 19:43 [PATCH v4 0/6] PCI: Support multiple DMA aliases Bjorn Helgaas
2016-02-24 19:43 ` [PATCH v4 1/6] PCI: Add pci_add_dma_alias() to abstract implementation Bjorn Helgaas
2016-04-08 20:18 ` Alex Williamson
2016-02-24 19:43 ` [PATCH v4 2/6] PCI: Move informational printk to pci_add_dma_alias() Bjorn Helgaas
2016-04-08 20:19 ` Alex Williamson
2016-02-24 19:44 ` [PATCH v4 3/6] PCI: Add support for multiple DMA aliases Bjorn Helgaas
2016-02-25 14:38 ` Bjorn Helgaas
2016-02-25 15:41 ` Lawrynowicz, Jacek
2016-02-29 22:44 ` Bjorn Helgaas
2016-03-01 16:57 ` Jacek Lawrynowicz
2016-03-03 14:22 ` [PATCH] " Jacek Lawrynowicz
2016-03-03 14:38 ` [PATCH v5 3/6] " Jacek Lawrynowicz
2016-04-08 20:19 ` Alex Williamson
2016-03-14 22:43 ` [PATCH v4 " David Woodhouse
2016-03-16 0:48 ` Bjorn Helgaas
2016-04-08 16:06 ` Bjorn Helgaas
2016-04-08 16:09 ` David Woodhouse
2016-04-08 17:31 ` Alex Williamson
2016-02-24 19:44 ` [PATCH v4 4/6] PCI: Rename dma_alias_is_enabled() to pci_devs_are_dma_aliases() Bjorn Helgaas
2016-04-08 20:19 ` Alex Williamson
2016-02-24 19:44 ` [PATCH v4 5/6] pci: Add DMA alias quirk for mic_x200_dma Bjorn Helgaas
2016-03-03 14:53 ` [PATCH v5 5/6] PCI: " Jacek Lawrynowicz
2016-04-08 20:19 ` Alex Williamson
2016-02-24 19:44 ` [PATCH v4 6/6] PCI: Squash pci_dev_flags to remove holes Bjorn Helgaas
2016-04-08 20:19 ` Alex Williamson
2016-04-12 4:38 ` [PATCH v4 0/6] PCI: Support multiple DMA aliases Bjorn Helgaas
2016-04-12 16:20 ` Lawrynowicz, Jacek
2016-04-12 18:10 ` Bjorn Helgaas [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160412181031.GA13093@localhost \
--to=helgaas@kernel.org \
--cc=alex.williamson@redhat.com \
--cc=bhelgaas@google.com \
--cc=dwmw2@infradead.org \
--cc=iommu@lists.linux-foundation.org \
--cc=jacek.lawrynowicz@intel.com \
--cc=jroedel@suse.de \
--cc=linux-pci@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).