If one compiles 2.4.21-pre5 without CONFIG_BLK_DEV_IDEDMA_PCI
the compilation fails with undefined ide_setup_dma().
And indeed, ide_setup_dma is called in ide_hwif_setup_dma
in setup-pci.c.
One of the ways to make the kernel compile with this config is
--- ../../linux-2.4.21-pre5/linux/include/linux/ide.h Tue Mar 4 02:25:12 2003
+++ include/linux/ide.h Tue Mar 4 11:07:32 2003
@@ -1719,6 +1719,7 @@
extern int __ide_dma_lostirq(ide_drive_t *);
extern int __ide_dma_timeout(ide_drive_t *);
#else
+static inline void ide_setup_dma(ide_hwif_t *x, unsigned long y, unsigned int z) {;}
static inline void ide_release_dma(ide_hwif_t *x) {;}
#endif
Andries
[much larger changes might be appropriate]