powerpc/powernv: remove pnv_pci_ioda_pe_single_vendor
This function is completely bogus - the fact that two PCIe devices come from the same vendor has absolutely nothing to say about the DMA capabilities and characteristics. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
9f4a68d464
commit
661fcb450b
|
@ -1756,31 +1756,6 @@ static void pnv_pci_ioda_dma_dev_setup(struct pnv_phb *phb, struct pci_dev *pdev
|
||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool pnv_pci_ioda_pe_single_vendor(struct pnv_ioda_pe *pe)
|
|
||||||
{
|
|
||||||
unsigned short vendor = 0;
|
|
||||||
struct pci_dev *pdev;
|
|
||||||
|
|
||||||
if (pe->device_count == 1)
|
|
||||||
return true;
|
|
||||||
|
|
||||||
/* pe->pdev should be set if it's a single device, pe->pbus if not */
|
|
||||||
if (!pe->pbus)
|
|
||||||
return true;
|
|
||||||
|
|
||||||
list_for_each_entry(pdev, &pe->pbus->devices, bus_list) {
|
|
||||||
if (!vendor) {
|
|
||||||
vendor = pdev->vendor;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pdev->vendor != vendor)
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Reconfigure TVE#0 to be usable as 64-bit DMA space.
|
* Reconfigure TVE#0 to be usable as 64-bit DMA space.
|
||||||
*
|
*
|
||||||
|
@ -1881,7 +1856,8 @@ static int pnv_pci_ioda_dma_set_mask(struct pci_dev *pdev, u64 dma_mask)
|
||||||
*/
|
*/
|
||||||
if (dma_mask >> 32 &&
|
if (dma_mask >> 32 &&
|
||||||
dma_mask > (memory_hotplug_max() + (1ULL << 32)) &&
|
dma_mask > (memory_hotplug_max() + (1ULL << 32)) &&
|
||||||
pnv_pci_ioda_pe_single_vendor(pe) &&
|
/* pe->pdev should be set if it's a single device, pe->pbus if not */
|
||||||
|
(pe->device_count == 1 || !pe->pbus) &&
|
||||||
phb->model == PNV_PHB_MODEL_PHB3) {
|
phb->model == PNV_PHB_MODEL_PHB3) {
|
||||||
/* Configure the bypass mode */
|
/* Configure the bypass mode */
|
||||||
rc = pnv_pci_ioda_dma_64bit_bypass(pe);
|
rc = pnv_pci_ioda_dma_64bit_bypass(pe);
|
||||||
|
|
Loading…
Reference in New Issue