Commit b846edb5 authored by Benjamin Herrenschmidt's avatar Benjamin Herrenschmidt Committed by Luis Henriques

powerpc/powernv: Honor the generic "no_64bit_msi" flag

commit 36074381 upstream.

Instead of the arch specific quirk which we are deprecating
and that drivers don't understand.
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
[ luis: backported to 3.16: adjusted context ]
Signed-off-by: default avatarLuis Henriques <luis.henriques@canonical.com>
parent 58ab4e89
...@@ -901,7 +901,6 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev, ...@@ -901,7 +901,6 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev,
unsigned int is_64, struct msi_msg *msg) unsigned int is_64, struct msi_msg *msg)
{ {
struct pnv_ioda_pe *pe = pnv_ioda_get_pe(dev); struct pnv_ioda_pe *pe = pnv_ioda_get_pe(dev);
struct pci_dn *pdn = pci_get_pdn(dev);
struct irq_data *idata; struct irq_data *idata;
struct irq_chip *ichip; struct irq_chip *ichip;
unsigned int xive_num = hwirq - phb->msi_base; unsigned int xive_num = hwirq - phb->msi_base;
...@@ -917,7 +916,7 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev, ...@@ -917,7 +916,7 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev,
return -ENXIO; return -ENXIO;
/* Force 32-bit MSI on some broken devices */ /* Force 32-bit MSI on some broken devices */
if (pdn && pdn->force_32bit_msi) if (dev->no_64bit_msi)
is_64 = 0; is_64 = 0;
/* Assign XIVE to PE */ /* Assign XIVE to PE */
......
...@@ -50,9 +50,8 @@ static int pnv_msi_check_device(struct pci_dev* pdev, int nvec, int type) ...@@ -50,9 +50,8 @@ static int pnv_msi_check_device(struct pci_dev* pdev, int nvec, int type)
{ {
struct pci_controller *hose = pci_bus_to_host(pdev->bus); struct pci_controller *hose = pci_bus_to_host(pdev->bus);
struct pnv_phb *phb = hose->private_data; struct pnv_phb *phb = hose->private_data;
struct pci_dn *pdn = pci_get_pdn(pdev);
if (pdn && pdn->force_32bit_msi && !phb->msi32_support) if (pdev->no_64bit_msi && !phb->msi32_support)
return -ENODEV; return -ENODEV;
return (phb && phb->msi_bmp.bitmap) ? 0 : -ENODEV; return (phb && phb->msi_bmp.bitmap) ? 0 : -ENODEV;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment