2002-11-20 04:54:13

by Phil Oester

[permalink] [raw]
Subject: [PATCH] Allow 2.5.48 IDE to compile w/o DMA

Attempting to compile 2.5.48-bk with generic IDE support, but not DMA support gives the following errors:

drivers/built-in.o: In function `init_dma_generic':
drivers/built-in.o(.text+0x34e4d): undefined reference to `ide_setup_dma'
drivers/built-in.o: In function `ide_hwif_setup_dma':
drivers/built-in.o(.text+0x43f9d): undefined reference to `ide_get_or_set_dma_base'
drivers/built-in.o(.text+0x44025): undefined reference to `ide_setup_dma'

The patch below fixed it up for me.

Phil Oester

diff -ru linux-2.5.45-orig/drivers/ide/pci/generic.c linux-2.5.45/drivers/ide/pci/generic.c
--- linux-2.5.45-orig/drivers/ide/pci/generic.c Wed Oct 30 19:42:57 2002
+++ linux-2.5.45/drivers/ide/pci/generic.c Fri Nov 1 14:42:16 2002
@@ -60,7 +60,11 @@

static void init_dma_generic (ide_hwif_t *hwif, unsigned long dmabase)
{
+#ifdef CONFIG_BLK_DEV_IDEDMA
ide_setup_dma(hwif, dmabase, 8);
+#else /* !CONFIG_BLK_DEV_IDEDMA */
+ return;
+#endif /* CONFIG_BLK_DEV_IDEDMA */
}

extern void ide_setup_pci_device(struct pci_dev *, ide_pci_device_t *);
diff -ru linux-2.5.45-orig/drivers/ide/setup-pci.c linux-2.5.45/drivers/ide/setup-pci.c
--- linux-2.5.45-orig/drivers/ide/setup-pci.c Wed Oct 30 19:42:28 2002
+++ linux-2.5.45/drivers/ide/setup-pci.c Fri Nov 1 14:00:55 2002
@@ -475,6 +475,8 @@
return hwif;
}

+#ifdef CONFIG_BLK_DEV_IDEDMA
+
/**
* ide_hwif_setup_dma - configure DMA interface
* @dev: PCI device
@@ -528,6 +530,8 @@
}
}

+#endif /* CONFIG_BLK_DEV_IDEDMA */
+
/**
* ide_setup_pci_controller - set up IDE PCI
* @dev: PCI device


2002-11-20 13:31:50

by Alan

[permalink] [raw]
Subject: Re: [PATCH] Allow 2.5.48 IDE to compile w/o DMA

On Wed, 2002-11-20 at 05:01, Phil Oester wrote:
> Attempting to compile 2.5.48-bk with generic IDE support, but not DMA support gives the following errors:

This is already fixed up differently in 2.5.47-ac. If 2.5.49 works well
enough to test I'll submit the IDE updates then


Alan