[PATCH 1/2] pci: Arch hook to determine config space size

From: brking
Date: Fri Jan 28 2005 - 09:59:12 EST



When working with a PCI-X Mode 2 adapter on a PCI-X Mode 1 PPC64
system, the current code used to determine the config space size
of a device results in a PCI Master abort and an EEH error, resulting
in the device being taken offline. This patch adds the ability for
arch specific code to override part of the config space size
determination to fix this.

Signed-off-by: Brian King <brking@xxxxxxxxxx>
---

linux-2.6.11-rc2-bk5-bjking1/drivers/pci/probe.c | 4 ++++
1 files changed, 4 insertions(+)

diff -puN drivers/pci/probe.c~pci_arch_cfg_space_size drivers/pci/probe.c
--- linux-2.6.11-rc2-bk5/drivers/pci/probe.c~pci_arch_cfg_space_size 2005-01-27 16:56:46.000000000 -0600
+++ linux-2.6.11-rc2-bk5-bjking1/drivers/pci/probe.c 2005-01-27 16:56:46.000000000 -0600
@@ -627,6 +627,8 @@ static void pci_release_dev(struct devic
kfree(pci_dev);
}

+int __attribute__ ((weak)) pcibios_exp_cfg_space(struct pci_dev *dev) { return 1; }
+
/**
* pci_cfg_space_size - get the configuration space size of the PCI device.
*
@@ -653,6 +655,8 @@ static int pci_cfg_space_size(struct pci
goto fail;
}

+ if (!pcibios_exp_cfg_space(dev))
+ goto fail;
if (pci_read_config_dword(dev, 256, &status) != PCIBIOS_SUCCESSFUL)
goto fail;
if (status == 0xffffffff)
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/