Re: libata & no PCI: dma_[un]map_single undefined

From: David Miller
Date: Sun Jun 03 2007 - 20:40:09 EST


From: Meelis Roos <mroos@xxxxxxxx>
Date: Sun, 3 Jun 2007 23:23:33 +0300 (EEST)

> I accidentally enabled libata config options on my Sun Ultra 1 (sparc64,
> UP, no PCI, only SBUS):
>
> MODPOST 440 modules
> ERROR: "dma_unmap_sg" [drivers/ata/libata.ko] undefined!
> ERROR: "dma_map_sg" [drivers/ata/libata.ko] undefined!
> ERROR: "dma_unmap_single" [drivers/ata/libata.ko] undefined!
> ERROR: "dma_mapping_error" [drivers/ata/libata.ko] undefined!
> ERROR: "dma_map_single" [drivers/ata/libata.ko] undefined!
>
> CONFIG_PCI=n
> CONFIG_ATA=m
>
> This seems to be a valid configuration since libata can drive non-PCI
> devices too?

It really makes no sense to allow this on Sparc, there are no
non-PCI Sparc ATA controllers.

Therefore I'll fix it like this:

commit 6274b5c63131c3110405db5d19e71af26cbbd375
Author: David S. Miller <davem@xxxxxxxxxxxxxxxxxxxx>
Date: Sun Jun 3 17:39:56 2007 -0700

[ATA]: Don't allow to enable this for SPARC64 without PCI.

Based upon a report from Meelis Roos.

Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index b4a8d60..7d893a6 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -8,6 +8,7 @@ menuconfig ATA
depends on BLOCK
depends on !(M32R || M68K) || BROKEN
depends on !SUN4 || BROKEN
+ depends on !(SPARC64 && !PCI)
select SCSI
---help---
If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/