[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210121175050.GA2668947@bjorn-Precision-5520>
Date: Thu, 21 Jan 2021 11:50:50 -0600
From: Bjorn Helgaas <helgaas@...nel.org>
To: Zhangfei Gao <zhangfei.gao@...aro.org>
Cc: Bjorn Helgaas <bhelgaas@...gle.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Arnd Bergmann <arnd@...db.de>,
jean-philippe <jean-philippe@...aro.org>,
kenneth-lee-2012@...mail.com, wangzhou1@...ilicon.com,
linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 3/3] PCI: set dma-can-stall for HiSilicon chip
On Thu, Jan 21, 2021 at 10:57:09AM -0600, Bjorn Helgaas wrote:
> On Mon, Jan 18, 2021 at 04:58:36PM +0800, Zhangfei Gao wrote:
> > HiSilicon KunPeng920 and KunPeng930 have devices appear as PCI but are
> > actually on the AMBA bus. These fake PCI devices can support SVA via
> > SMMU stall feature, by setting dma-can-stall for ACPI platforms.
> >
> > Signed-off-by: Zhangfei Gao <zhangfei.gao@...aro.org>
> > Signed-off-by: Jean-Philippe Brucker <jean-philippe@...aro.org>
> > Signed-off-by: Zhou Wang <wangzhou1@...ilicon.com>
> > ---
> > Property dma-can-stall depends on patchset
> > https://lore.kernel.org/linux-iommu/20210108145217.2254447-1-jean-philippe@linaro.org/
> >
> > drivers/pci/quirks.c | 13 +++++++++++++
> > 1 file changed, 13 insertions(+)
> >
> > diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> > index 873d27f..b866cdf 100644
> > --- a/drivers/pci/quirks.c
> > +++ b/drivers/pci/quirks.c
> > @@ -1827,10 +1827,23 @@ DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_VENDOR_ID_HUAWEI, 0x1610, PCI_CLASS_BRIDGE_PCI
> >
> > static void quirk_huawei_pcie_sva(struct pci_dev *pdev)
> > {
> > + struct property_entry properties[] = {
> > + PROPERTY_ENTRY_BOOL("dma-can-stall"),
> > + {},
> > + };
> > +
> > if (pdev->revision != 0x21 && pdev->revision != 0x30)
> > return;
> >
> > pdev->pasid_no_tlp = 1;
> > +
> > + /*
> > + * Set the dma-can-stall property on ACPI platforms. Device tree
> > + * can set it directly.
> > + */
> > + if (!pdev->dev.of_node &&
> > + device_add_properties(&pdev->dev, properties))
> > + pci_warn(pdev, "could not add stall property");
>
> What's the purpose of adding the "dma-can-stall" property? I don't
> see any reference to that property in the tree or in this series. If
> this is related to some other series that uses it, perhaps this part
> should be moved to that series?
Sorry, I missed your note about this above! Thanks for the pointer.
I hate having code in the tree that's useless pending some other
series, but I guess doing it this way helps avoid ordering issues
between this series and that one.
But please include the lore URL to Jean-Philippe's series in the
commit log so that if this patch is merged before Jean-Philippe's,
people at least have a hint about what's going on.
> > }
> > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_HUAWEI, 0xa250, quirk_huawei_pcie_sva);
> > DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_HUAWEI, 0xa251, quirk_huawei_pcie_sva);
> > --
> > 2.7.4
> >
Powered by blists - more mailing lists