| * linux/arch/unicore32/include/mach/dma.h |
| * Code specific to PKUnity SoC and UniCore ISA |
| * Copyright (C) 2001-2010 GUAN Xue-tao |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License version 2 as |
| * published by the Free Software Foundation. |
| #ifndef __MACH_PUV3_DMA_H__ |
| #define __MACH_PUV3_DMA_H__ |
| * The PKUnity has six internal DMA channels. |
| #define MAX_DMA_CHANNELS 6 |
| extern int puv3_request_dma(char *name, |
| void (*irq_handler)(int, void *), |
| void (*err_handler)(int, void *), |
| extern void puv3_free_dma(int dma_ch); |
| static inline void puv3_stop_dma(int ch) |
| writel(readl(DMAC_CONFIG(ch)) & ~DMAC_CONFIG_EN, DMAC_CONFIG(ch)); |
| static inline void puv3_resume_dma(int ch) |
| writel(readl(DMAC_CONFIG(ch)) | DMAC_CONFIG_EN, DMAC_CONFIG(ch)); |
| #endif /* __MACH_PUV3_DMA_H__ */ |