Linux-2.6.12-rc2
[linux-2.6.git] / arch / arm / mach-footbridge / dma.c
1 /*
2  *  linux/arch/arm/kernel/dma-ebsa285.c
3  *
4  *  Copyright (C) 1998 Phil Blundell
5  *
6  * DMA functions specific to EBSA-285/CATS architectures
7  *
8  *  Changelog:
9  *   09-Nov-1998 RMK    Split out ISA DMA functions to dma-isa.c
10  *   17-Mar-1999 RMK    Allow any EBSA285-like architecture to have
11  *                      ISA DMA controllers.
12  */
13 #include <linux/config.h>
14 #include <linux/init.h>
15
16 #include <asm/dma.h>
17 #include <asm/io.h>
18
19 #include <asm/mach/dma.h>
20 #include <asm/hardware/dec21285.h>
21
22 #if 0
23 static int fb_dma_request(dmach_t channel, dma_t *dma)
24 {
25         return -EINVAL;
26 }
27
28 static void fb_dma_enable(dmach_t channel, dma_t *dma)
29 {
30 }
31
32 static void fb_dma_disable(dmach_t channel, dma_t *dma)
33 {
34 }
35
36 static struct dma_ops fb_dma_ops = {
37         .type           = "fb",
38         .request        = fb_dma_request,
39         .enable         = fb_dma_enable,
40         .disable        = fb_dma_disable,
41 };
42 #endif
43
44 void __init arch_dma_init(dma_t *dma)
45 {
46 #if 0
47         dma[_DC21285_DMA(0)].d_ops = &fb_dma_ops;
48         dma[_DC21285_DMA(1)].d_ops = &fb_dma_ops;
49 #endif
50 #ifdef CONFIG_ISA_DMA
51         if (footbridge_cfn_mode())
52                 isa_init_dma(dma + _ISA_DMA(0));
53 #endif
54 }