diff -Nur linux-2.5.15-vanilla/arch/i386/pci/direct.c linux-2.5.15-patched/arch/i386/pci/direct.c --- linux-2.5.15-vanilla/arch/i386/pci/direct.c Thu May 9 15:22:49 2002 +++ linux-2.5.15-patched/arch/i386/pci/direct.c Thu Aug 8 10:27:11 2002 @@ -6,6 +6,10 @@ #include #include "pci.h" +/* Ensure the correct pci_conf1_{read|write} functions are compiled in */ +#ifndef CONFIG_MULTIQUAD + + /* * Functions for accessing PCI configuration space with type 1 accesses */ @@ -72,6 +76,11 @@ #undef PCI_CONF1_ADDRESS +#else /* CONFIG_MULTIQUAD */ +extern int pci_conf1_read (int seg, int bus, int dev, int fn, int reg, int len, u32 *value); +extern int pci_conf1_write (int seg, int bus, int dev, int fn, int reg, int len, u32 value); +#endif /* !CONFIG_MULTIQUAD */ + static int pci_conf1_read_config_byte(struct pci_dev *dev, int where, u8 *value) { int result; diff -Nur linux-2.5.15-vanilla/arch/i386/pci/numa.c linux-2.5.15-patched/arch/i386/pci/numa.c --- linux-2.5.15-vanilla/arch/i386/pci/numa.c Thu May 9 15:22:46 2002 +++ linux-2.5.15-patched/arch/i386/pci/numa.c Thu Aug 8 10:52:24 2002 @@ -1,19 +1,23 @@ /* * numa.c - Low-level PCI access for NUMA-Q machines */ + #include #include - #include "pci.h" #define BUS2QUAD(global) (mp_bus_id_to_node[global]) #define BUS2LOCAL(global) (mp_bus_id_to_local[global]) #define QUADLOCAL2BUS(quad,local) (quad_local_to_mp_bus_id[quad][local]) +/* + * Functions for accessing PCI configuration space with type 1 accesses on NUMA-Q + */ + #define PCI_CONF1_ADDRESS(bus, dev, fn, reg) \ (0x80000000 | (BUS2LOCAL(bus) << 16) | (dev << 11) | (fn << 8) | (reg & ~3)) -static int pci_conf1_read (int seg, int bus, int dev, int fn, int reg, int len, u32 *value) +int pci_conf1_read (int seg, int bus, int dev, int fn, int reg, int len, u32 *value) { unsigned long flags; @@ -41,7 +45,7 @@ return 0; } -static int pci_conf1_write (int seg, int bus, int dev, int fn, int reg, int len, u32 value) +int pci_conf1_write (int seg, int bus, int dev, int fn, int reg, int len, u32 value) { unsigned long flags;