From: Bjorn Helgaas <helgaas@kernel.org> To: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Cc: lorenzo.pieralisi@arm.com, marc.zyngier@arm.com, sudeep.holla@arm.com, will.deacon@arm.com, robin.murphy@arm.com, joro@8bytes.org, bhelgaas@google.com, gabriele.paoloni@huawei.com, john.garry@huawei.com, iommu@lists.linux-foundation.org, linux-arm-kernel@lists.infradead.org, linux-acpi@vger.kernel.org, linux-pci@vger.kernel.org, devel@acpica.org, linuxarm@huawei.com, wangzhou1@hisilicon.com, guohanjun@huawei.com Subject: Re: [PATCH v9 4/4] PCI: hisi: blacklist hip06/hip07 controllers behind SMMUv3 Date: Tue, 10 Oct 2017 05:51:57 -0500 [thread overview] Message-ID: <20171010105157.GT25517@bhelgaas-glaptop.roam.corp.google.com> (raw) In-Reply-To: <20171006140450.89652-5-shameerali.kolothum.thodi@huawei.com> On Fri, Oct 06, 2017 at 03:04:50PM +0100, Shameer Kolothum wrote: > The HiSilicon erratum 161010801 describes the limitation of > HiSilicon platforms hip06/hip07 to support the SMMUv3 mappings > for MSI transactions. > > PCIe controller on these platforms has to differentiate the MSI > payload against other DMA payload and has to modify the MSI > payload. This basically makes it difficult for this platforms to > have a SMMU translation for MSI. In order to workaround this, ARM > SMMUv3 driver requires a quirk to treat the MSI regions separately. > Such a quirk is currently missing for DT based systems and therefore > we need to blacklist the hip06/hip07 PCIe controllers. > > Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Acked-by: Bjorn Helgaas <bhelgaas@google.com> > --- > drivers/pci/dwc/pcie-hisi.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/drivers/pci/dwc/pcie-hisi.c b/drivers/pci/dwc/pcie-hisi.c > index a201791..6800747 100644 > --- a/drivers/pci/dwc/pcie-hisi.c > +++ b/drivers/pci/dwc/pcie-hisi.c > @@ -270,6 +270,12 @@ static int hisi_pcie_probe(struct platform_device *pdev) > struct resource *reg; > int ret; > > + if ((IS_BUILTIN(CONFIG_ARM_SMMU_V3)) && > + of_property_read_bool(dev->of_node, "iommu-map")) { > + dev_warn(dev, "HiSilicon erratum 161010801: blacklisting PCIe controllers behind SMMUv3\n"); > + return -ENODEV; > + } > + > hisi_pcie = devm_kzalloc(dev, sizeof(*hisi_pcie), GFP_KERNEL); > if (!hisi_pcie) > return -ENOMEM; > @@ -340,6 +346,12 @@ static int hisi_pcie_almost_ecam_probe(struct platform_device *pdev) > struct device *dev = &pdev->dev; > struct pci_ecam_ops *ops; > > + if ((IS_BUILTIN(CONFIG_ARM_SMMU_V3)) && > + of_property_read_bool(dev->of_node, "iommu-map")) { > + dev_warn(dev, "HiSilicon erratum 161010801: blacklisting PCIe controllers behind SMMUv3\n"); > + return -ENODEV; > + } > + > ops = (struct pci_ecam_ops *)of_device_get_match_data(dev); > return pci_host_common_probe(pdev, ops); > } > -- > 1.9.1 > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: helgaas@kernel.org (Bjorn Helgaas) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v9 4/4] PCI: hisi: blacklist hip06/hip07 controllers behind SMMUv3 Date: Tue, 10 Oct 2017 05:51:57 -0500 [thread overview] Message-ID: <20171010105157.GT25517@bhelgaas-glaptop.roam.corp.google.com> (raw) In-Reply-To: <20171006140450.89652-5-shameerali.kolothum.thodi@huawei.com> On Fri, Oct 06, 2017 at 03:04:50PM +0100, Shameer Kolothum wrote: > The HiSilicon erratum 161010801 describes the limitation of > HiSilicon platforms hip06/hip07 to support the SMMUv3 mappings > for MSI transactions. > > PCIe controller on these platforms has to differentiate the MSI > payload against other DMA payload and has to modify the MSI > payload. This basically makes it difficult for this platforms to > have a SMMU translation for MSI. In order to workaround this, ARM > SMMUv3 driver requires a quirk to treat the MSI regions separately. > Such a quirk is currently missing for DT based systems and therefore > we need to blacklist the hip06/hip07 PCIe controllers. > > Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Acked-by: Bjorn Helgaas <bhelgaas@google.com> > --- > drivers/pci/dwc/pcie-hisi.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/drivers/pci/dwc/pcie-hisi.c b/drivers/pci/dwc/pcie-hisi.c > index a201791..6800747 100644 > --- a/drivers/pci/dwc/pcie-hisi.c > +++ b/drivers/pci/dwc/pcie-hisi.c > @@ -270,6 +270,12 @@ static int hisi_pcie_probe(struct platform_device *pdev) > struct resource *reg; > int ret; > > + if ((IS_BUILTIN(CONFIG_ARM_SMMU_V3)) && > + of_property_read_bool(dev->of_node, "iommu-map")) { > + dev_warn(dev, "HiSilicon erratum 161010801: blacklisting PCIe controllers behind SMMUv3\n"); > + return -ENODEV; > + } > + > hisi_pcie = devm_kzalloc(dev, sizeof(*hisi_pcie), GFP_KERNEL); > if (!hisi_pcie) > return -ENOMEM; > @@ -340,6 +346,12 @@ static int hisi_pcie_almost_ecam_probe(struct platform_device *pdev) > struct device *dev = &pdev->dev; > struct pci_ecam_ops *ops; > > + if ((IS_BUILTIN(CONFIG_ARM_SMMU_V3)) && > + of_property_read_bool(dev->of_node, "iommu-map")) { > + dev_warn(dev, "HiSilicon erratum 161010801: blacklisting PCIe controllers behind SMMUv3\n"); > + return -ENODEV; > + } > + > ops = (struct pci_ecam_ops *)of_device_get_match_data(dev); > return pci_host_common_probe(pdev, ops); > } > -- > 1.9.1 > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-acpi" in > the body of a message to majordomo at vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2017-10-10 10:52 UTC|newest] Thread overview: 96+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-10-06 14:04 [PATCH v9 0/4] iommu/smmu-v3: Workaround for hisilicon 161010801 erratum(reserve HW MSI) Shameer Kolothum 2017-10-06 14:04 ` [Devel] " Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:04 ` [PATCH v9 1/4] ACPI/IORT: Add msi address regions reservation helper Shameer Kolothum 2017-10-06 14:04 ` [Devel] " Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:04 ` [PATCH v9 2/4] iommu/dma: Add a helper function to reserve HW MSI address regions for IOMMU drivers Shameer Kolothum 2017-10-06 14:04 ` [Devel] " Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-13 19:23 ` Will Deacon 2017-10-13 19:23 ` [Devel] " Will Deacon 2017-10-13 19:23 ` Will Deacon 2017-10-13 19:23 ` Will Deacon 2017-10-16 16:09 ` Shameerali Kolothum Thodi 2017-10-16 16:09 ` [Devel] " Shameerali Kolothum Thodi 2017-10-16 16:09 ` Shameerali Kolothum Thodi 2017-10-16 16:09 ` Shameerali Kolothum Thodi [not found] ` <5FC3163CFD30C246ABAA99954A238FA83844672A-WFPaWmAhWqtUuCJht5byYAK1hpo4iccwjNknBlVQO8k@public.gmane.org> 2017-10-18 12:34 ` Robin Murphy 2017-10-18 12:34 ` [Devel] " Robin Murphy 2017-10-18 12:34 ` Robin Murphy 2017-10-18 12:34 ` Robin Murphy 2017-10-18 14:23 ` Shameerali Kolothum Thodi 2017-10-18 14:23 ` [Devel] " Shameerali Kolothum Thodi 2017-10-18 14:23 ` Shameerali Kolothum Thodi 2017-10-18 14:23 ` Shameerali Kolothum Thodi 2017-10-26 10:11 ` Shameerali Kolothum Thodi 2017-10-26 10:11 ` [Devel] " Shameerali Kolothum Thodi 2017-10-26 10:11 ` Shameerali Kolothum Thodi 2017-10-26 10:11 ` Shameerali Kolothum Thodi 2017-11-03 11:35 ` Lorenzo Pieralisi 2017-11-03 11:35 ` [Devel] " Lorenzo Pieralisi 2017-11-03 11:35 ` Lorenzo Pieralisi 2017-11-07 9:37 ` Shameerali Kolothum Thodi 2017-11-07 9:37 ` [Devel] " Shameerali Kolothum Thodi 2017-11-07 9:37 ` Shameerali Kolothum Thodi 2017-11-07 9:37 ` Shameerali Kolothum Thodi 2017-10-06 14:04 ` [PATCH v9 3/4] iommu/arm-smmu-v3:Enable ACPI based HiSilicon erratum 161010801 Shameer Kolothum 2017-10-06 14:04 ` [Devel] " Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:04 ` [PATCH v9 4/4] PCI: hisi: blacklist hip06/hip07 controllers behind SMMUv3 Shameer Kolothum 2017-10-06 14:04 ` [Devel] " Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:04 ` Shameer Kolothum 2017-10-06 14:27 ` Gabriele Paoloni 2017-10-06 14:27 ` Gabriele Paoloni 2017-10-06 14:27 ` Gabriele Paoloni 2017-10-09 8:32 ` Zhou Wang 2017-10-09 8:32 ` Zhou Wang 2017-10-09 8:32 ` Zhou Wang 2017-10-09 23:54 ` Bjorn Helgaas 2017-10-09 23:54 ` Bjorn Helgaas 2017-10-09 23:54 ` Bjorn Helgaas [not found] ` <20171009235452.GP25517-1RhO1Y9PlrlHTL0Zs8A6p5iNqAH0jzoTYJqu5kTmcBRl57MIdRCFDg@public.gmane.org> 2017-10-10 0:15 ` Bjorn Helgaas 2017-10-10 0:15 ` Bjorn Helgaas 2017-10-10 0:15 ` Bjorn Helgaas 2017-10-10 9:42 ` Shameerali Kolothum Thodi 2017-10-10 9:42 ` [Devel] " Shameerali Kolothum Thodi 2017-10-10 9:42 ` Shameerali Kolothum Thodi 2017-10-10 9:42 ` Shameerali Kolothum Thodi 2017-10-10 10:06 ` Lorenzo Pieralisi 2017-10-10 10:06 ` [Devel] " Lorenzo Pieralisi 2017-10-10 10:06 ` Lorenzo Pieralisi 2017-10-10 10:06 ` Lorenzo Pieralisi 2017-10-10 10:19 ` Gabriele Paoloni 2017-10-10 10:19 ` Gabriele Paoloni 2017-10-10 10:19 ` Gabriele Paoloni 2017-10-10 10:51 ` Bjorn Helgaas [this message] 2017-10-10 10:51 ` Bjorn Helgaas 2017-10-13 19:22 ` Will Deacon 2017-10-13 19:22 ` [Devel] " Will Deacon 2017-10-13 19:22 ` Will Deacon 2017-10-13 19:22 ` Will Deacon [not found] ` <20171013192209.GH30572-5wv7dgnIgG8@public.gmane.org> 2017-10-15 7:46 ` Shameerali Kolothum Thodi 2017-10-15 7:46 ` [Devel] " Shameerali Kolothum Thodi 2017-10-15 7:46 ` Shameerali Kolothum Thodi 2017-10-15 7:46 ` Shameerali Kolothum Thodi 2017-10-18 10:51 ` Will Deacon 2017-10-18 10:51 ` [Devel] " Will Deacon 2017-10-18 10:51 ` Will Deacon 2017-10-18 10:51 ` Will Deacon [not found] ` <20171018105145.GC11669-5wv7dgnIgG8@public.gmane.org> 2017-10-18 12:25 ` Shameerali Kolothum Thodi 2017-10-18 12:25 ` [Devel] " Shameerali Kolothum Thodi 2017-10-18 12:25 ` Shameerali Kolothum Thodi 2017-10-18 12:25 ` Shameerali Kolothum Thodi 2017-10-18 13:45 ` Will Deacon 2017-10-18 13:45 ` [Devel] " Will Deacon 2017-10-18 13:45 ` Will Deacon 2017-10-18 13:45 ` Will Deacon [not found] ` <20171006140450.89652-1-shameerali.kolothum.thodi-hv44wF8Li93QT0dZR+AlfA@public.gmane.org> 2017-10-11 11:34 ` [PATCH v9 0/4] iommu/smmu-v3: Workaround for hisilicon 161010801 erratum(reserve HW MSI) Shameerali Kolothum Thodi 2017-10-11 11:34 ` [Devel] " Shameerali Kolothum Thodi 2017-10-11 11:34 ` Shameerali Kolothum Thodi 2017-10-11 11:34 ` Shameerali Kolothum Thodi
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=20171010105157.GT25517@bhelgaas-glaptop.roam.corp.google.com \ --to=helgaas@kernel.org \ --cc=bhelgaas@google.com \ --cc=devel@acpica.org \ --cc=gabriele.paoloni@huawei.com \ --cc=guohanjun@huawei.com \ --cc=iommu@lists.linux-foundation.org \ --cc=john.garry@huawei.com \ --cc=joro@8bytes.org \ --cc=linux-acpi@vger.kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-pci@vger.kernel.org \ --cc=linuxarm@huawei.com \ --cc=lorenzo.pieralisi@arm.com \ --cc=marc.zyngier@arm.com \ --cc=robin.murphy@arm.com \ --cc=shameerali.kolothum.thodi@huawei.com \ --cc=sudeep.holla@arm.com \ --cc=wangzhou1@hisilicon.com \ --cc=will.deacon@arm.com \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.