1 /* linux/arch/arm/plat-s3c64xx/dma.c
3 * Copyright 2009 Simtec Electronics
4 * Ben Dooks <ben@simtec.co.uk>
6 * S3C64XX DMA core - fake
8 * http://armlinux.simtec.co.uk/
10 * This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License version 2 as
12 * published by the Free Software Foundation.
15 #include <linux/module.h>
16 #include <linux/init.h>
17 #include <linux/sched.h>
18 #include <linux/spinlock.h>
19 #include <linux/interrupt.h>
20 #include <linux/sysdev.h>
21 #include <linux/slab.h>
22 #include <linux/errno.h>
25 #include <asm/system.h>
27 #include <mach/hardware.h>
31 int s3c2410_dma_ctrl(unsigned int channel
, enum s3c2410_chan_op op
)
36 EXPORT_SYMBOL(s3c2410_dma_ctrl
);
38 int s3c2410_dma_enqueue(unsigned int channel
, void *id
,
39 dma_addr_t data
, int size
)
44 EXPORT_SYMBOL(s3c2410_dma_enqueue
);
46 int s3c2410_dma_devconfig(int channel
,
47 enum s3c2410_dmasrc source
,
48 unsigned long devaddr
)
53 EXPORT_SYMBOL(s3c2410_dma_devconfig
);
56 int s3c2410_dma_getposition(unsigned int channel
, dma_addr_t
*src
, dma_addr_t
*dst
)
67 EXPORT_SYMBOL(s3c2410_dma_getposition
);
69 int s3c2410_dma_config(unsigned int channel
, int xferunit
)
74 EXPORT_SYMBOL(s3c2410_dma_config
);
76 int s3c2410_dma_free(unsigned int channel
, struct s3c2410_dma_client
*client
)
81 EXPORT_SYMBOL(s3c2410_dma_free
);
83 int s3c2410_dma_request(unsigned int channel
,
84 struct s3c2410_dma_client
*client
,
90 EXPORT_SYMBOL(s3c2410_dma_request
);
92 int s3c2410_dma_set_buffdone_fn(unsigned int channel
, s3c2410_dma_cbfn_t rtn
)
97 EXPORT_SYMBOL(s3c2410_dma_set_buffdone_fn
);