]> err.no Git - linux-2.6/commit
[ARM] 4451/1: pxa: make dma.c generic and remove cpu specific dma code
authorEric Miao <eric.y.miao@gmail.com>
Fri, 22 Jun 2007 04:40:17 +0000 (05:40 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 12 Jul 2007 13:28:16 +0000 (14:28 +0100)
commitf53f066c25036210036730d64c876ea586114425
treee680deb53ff12ec09f5c64421a3f13eecb7aed41
parentcd49104d99b56383a3b1fdce2f31018197093c31
[ARM] 4451/1: pxa: make dma.c generic and remove cpu specific dma code

Since the number of dma channels varies between pxa25x and pxa27x, it
introduces some specific code in dma.c. This patch moves the specific
code to pxa25x.c and pxa27x.c and makes dma.c more generic.

1. add pxa_init_dma() for dma initialization, the number of channels
   are passed in by the argument

2. add a "prio" field to the "struct pxa_dma_channel" for the channel
   priority, and is initialized in pxa_init_dma()

3. use a general priority comparison with the channels "prio" field so
   to remove the processor specific pxa_for_each_dma_prio macro,  this
   is not lightning fast as the original one,  but it is acceptable as
   it happens when requesting dma, which is usually not so performance
   critical

Signed-off-by: eric miao <eric.miao@marvell.com>
Acked-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-pxa/dma.c
arch/arm/mach-pxa/pxa25x.c
arch/arm/mach-pxa/pxa27x.c
include/asm-arm/arch-pxa/dma.h