import of upstream 2.4.34.4 from kernel.org
[linux-2.4.git] / arch / arm / kernel / dma-footbridge.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/sched.h>
15 #include <linux/init.h>
16
17 #include <asm/dma.h>
18 #include <asm/io.h>
19
20 #include <asm/mach/dma.h>
21 #include <asm/hardware/dec21285.h>
22
23 #if 0
24 static int fb_dma_request(dmach_t channel, dma_t *dma)
25 {
26         return -EINVAL;
27 }
28
29 static void fb_dma_enable(dmach_t channel, dma_t *dma)
30 {
31 }
32
33 static void fb_dma_disable(dmach_t channel, dma_t *dma)
34 {
35 }
36
37 static struct dma_ops fb_dma_ops = {
38         .type           = "fb",
39         .request        = fb_dma_request,
40         .enable         = fb_dma_enable,
41         .disable        = fb_dma_disable,
42 };
43 #endif
44
45 void __init arch_dma_init(dma_t *dma)
46 {
47 #if 0
48         dma[_DC21285_DMA(0)].d_ops = &fb_dma_ops;
49         dma[_DC21285_DMA(1)].d_ops = &fb_dma_ops;
50 #endif
51 #ifdef CONFIG_ISA_DMA
52         if (footbridge_cfn_mode())
53                 isa_init_dma(dma + _ISA_DMA(0));
54 #endif
55 }