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 ++++ x86_64/boot-options.txt | 0 2 files 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) { struct pci_bus *bus; @@ -189,12 +190,14 @@ static int bridge_from_vendor(struct dev } 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 @@ -208,6 +211,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. diff -puN Documentation/x86_64/boot-options.txt~fix-x86_64-mm-via-force-dma-mask-config_pcin-fix Documentation/x86_64/boot-options.txt _