From: Andrew Morton arch/x86_64/kernel/pci-dma.c: In function 'bridge_from_vendor': arch/x86_64/kernel/pci-dma.c:178: error: 'pci_bus_type' undeclared (first use in this function) arch/x86_64/kernel/pci-dma.c:178: error: (Each undeclared identifier is reported only once arch/x86_64/kernel/pci-dma.c:178: error: for each function it appears in.) Why is this file being built if CONFIG_PCI=n?? Cc: Andi Kleen Signed-off-by: Andrew Morton --- arch/x86_64/kernel/pci-dma.c | 4 ++++ 1 file changed, 4 insertions(+) diff -puN arch/x86_64/kernel/pci-dma.c~fix-x86_64-mm-via-force-dma-mask-config_pcin-fix arch/x86_64/kernel/pci-dma.c --- a/arch/x86_64/kernel/pci-dma.c~fix-x86_64-mm-via-force-dma-mask-config_pcin-fix +++ a/arch/x86_64/kernel/pci-dma.c @@ -172,6 +172,7 @@ EXPORT_SYMBOL(dma_free_coherent); static int allow_dac; +#ifdef CONFIG_PCI static int bridge_from_vendor(struct device *dev, u16 vendor) { #ifdef CONFIG_PCI @@ -191,12 +192,14 @@ static int bridge_from_vendor(struct dev #endif return 0; } +#endif int dma_supported(struct device *dev, u64 mask) { if (dma_ops->dma_supported) return dma_ops->dma_supported(dev, mask); +#ifdef CONFIG_PCI if (mask > DMA_32BIT_MASK) { /* Some VIA bridges seem to have trouble with Double Address Cycle. Disable it behind them all for now. The driver @@ -210,6 +213,7 @@ int dma_supported(struct device *dev, u6 if (allow_dac < 0) return 0; } +#endif /* Copied from i386. Doesn't make much sense, because it will only work for pci_alloc_coherent. _