path: root/drivers/pnp/resource.c
diff options
authorDavid Rientjes <rientjes@google.com>2011-03-22 16:34:56 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2011-03-22 17:44:16 -0700
commit586f83e2b4c080073b115c1a0fcc2757f52839b8 (patch)
tree72d1647d12216e7fb74f4567f583de2ed732a75d /drivers/pnp/resource.c
parentff859ba6d166202d6fd8d6344a41be54e4c8a2b6 (diff)
pnp: only assign IORESOURCE_DMA if CONFIG_ISA_DMA_API is enabled
IORESOURCE_DMA cannot be assigned without utilizing the interface provided by CONFIG_ISA_DMA_API, specifically request_dma() and free_dma(). Thus, there's a strict dependency on the config option and limits IORESOURCE_DMA only to architectures that support ISA-style DMA. ia64 is not one of those architectures, so pnp_check_dma() no longer needs to be special-cased for that architecture. pnp_assign_resources() will now return -EINVAL if IORESOURCE_DMA is attempted on such a kernel. Signed-off-by: David Rientjes <rientjes@google.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: "Luck, Tony" <tony.luck@intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/pnp/resource.c')
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/pnp/resource.c b/drivers/pnp/resource.c
index a925e6b63d72..b0ecacbe53b1 100644
--- a/drivers/pnp/resource.c
+++ b/drivers/pnp/resource.c
@@ -409,9 +409,9 @@ int pnp_check_irq(struct pnp_dev *dev, struct resource *res)
return 1;
int pnp_check_dma(struct pnp_dev *dev, struct resource *res)
-#ifndef CONFIG_IA64
int i;
struct pnp_dev *tdev;
struct resource *tres;
@@ -466,11 +466,8 @@ int pnp_check_dma(struct pnp_dev *dev, struct resource *res)
return 1;
- /* IA64 does not have legacy DMA */
- return 0;
+#endif /* CONFIG_ISA_DMA_API */
unsigned long pnp_resource_type(struct resource *res)

Privacy Policy