[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110126201000.GB7323@n2100.arm.linux.org.uk>
Date: Wed, 26 Jan 2011 20:10:00 +0000
From: Russell King - ARM Linux <linux@....linux.org.uk>
To: David Rientjes <rientjes@...gle.com>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Ralf Baechle <ralf@...ux-mips.org>,
Kyle McMartin <kyle@...hat.com>,
James Bottomley <James.Bottomley@...senpartnership.com>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Thomas Gleixner <tglx@...utronix.de>,
"H. Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...hat.com>,
"David S. Miller" <davem@...emloft.net>,
Greg Kroah-Hartman <gregkh@...e.de>,
Randy Dunlap <randy.dunlap@...cle.com>, x86@...nel.org,
linux-arch@...r.kernel.org, netdev@...r.kernel.org,
linux-scsi@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [patch] kconfig: unify GENERIC_ISA_DMA and ISA_DMA_API
On Wed, Jan 26, 2011 at 12:00:08PM -0800, David Rientjes wrote:
> On Wed, 26 Jan 2011, Russell King - ARM Linux wrote:
>
> > On Tue, Jan 25, 2011 at 05:06:28PM -0800, David Rientjes wrote:
> > > CONFIG_GENERIC_ISA_DMA and CONFIG_ISA_DMA_API usually have dependencies
> > > on one another depending on the architecture and generic kernel code uses
> > > either to determine whether an ISA-style DMA API is configured.
> >
> > Wrong.
> >
> > GENERIC_ISA_DMA enables support for the standard ISA DMA allocator found
> > in kernel/dma.c
> >
> > ISA_DMA_API says that a platform supports the ISA DMA interfaces.
> >
> > An architecture can provide the ISA DMA interfaces, but not use the
> > standard ISA DMA allocator found in kernel/dma.c. Such as the one in
> > arch/arm/kernel/dma.c.
> >
> > So on ARM, we have platforms where ISA_DMA_API=y but GENERIC_ISA_DMA=n.
> >
>
> Ok, fair enough. Thanks for pointing that out. I'll work to resolve the
> existing dependency chain on x86 that cause build failures when one is
> disabled and another is not and add Kconfig dependencies on drivers that
> require GENERIC_ISA_DMA.
Drivers should depend on ISA_DMA_API as that indicates that the ISA DMA
API is present - in other words, when the following are available from
an architecture/platform:
dma_spin_lock
claim_dma_lock
release_dma_lock
enable_dma
disable_dma
clear_dma_ff
set_dma_mode
set_dma_page
set_dma_addr
set_dma_count
get_dma_residue
request_dma
free_dma
GENERIC_ISA_DMA should be set by an architecture/platform when ISA_DMA_API
has already been set -and- it wants to use kernel/dma.c. No drivers should
depend on GENERIC_ISA_DMA.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists