powerpc/powernv: Honor the generic "no_64bit_msi" flag
PATCH v3 5/7 powerpc/powernv: Honor the generic "no_64bit_msi" flag
Instead of the arch specific quirk which we are deprecating and that drivers don't understand.
Signed-off-by Benjamin Herrenschmidt <[email protected]>
CC <[email protected]>
--- arch/powerpc/platforms/powernv/pci-ioda.c | 3 +-- arch/powerpc/platforms/powernv/pci.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-)
arch/powerpc/platforms/powernv/pci-ioda.c +1 -2
@@ -1311,7 +1311,6 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev, unsigned int is_64, struct msi_msg *msg) { struct pnv_ioda_pe *pe = pnv_ioda_get_pe(dev); -struct pci_dn *pdn =pci_get_pdn (dev);struct irq_data *idata;struct irq_chip *ichip;unsigned int xive_num = hwirq - phb->msi_base;
@@ -1327,7 +1326,7 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev,return -ENXIO ;/* Force 32-bit MSI on some broken devices */ -if (pdn && pdn->force_32bit_msi) +if (dev->no_64bit_msi) is_64 =0 ;/* Assign XIVE to PE */
arch/powerpc/platforms/powernv/pci.c +1 -2
@@ -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 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 (phb && phb->msi_bmp.bitmap) ?0 : -ENODEV ;