Merge tag 'imx-soc-3.13' of git://git.linaro.org/people/shawnguo/linux-2.6 into next/soc
[linux-2.6.git] / sound / soc / davinci / davinci-pcm.h
blobfbb710c76c083ef90b9c442e1776ec00fcb8aa08
1 /*
2 * ALSA PCM interface for the TI DAVINCI processor
4 * Author: Vladimir Barinov, <vbarinov@embeddedalley.com>
5 * Copyright: (C) 2007 MontaVista Software, Inc., <source@mvista.com>
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
12 #ifndef _DAVINCI_PCM_H
13 #define _DAVINCI_PCM_H
15 #include <linux/genalloc.h>
16 #include <linux/platform_data/davinci_asp.h>
17 #include <linux/platform_data/edma.h>
19 struct davinci_pcm_dma_params {
20 int channel; /* sync dma channel ID */
21 unsigned short acnt;
22 dma_addr_t dma_addr; /* device physical address for DMA */
23 unsigned sram_size;
24 struct gen_pool *sram_pool; /* SRAM gen_pool for ping pong */
25 enum dma_event_q asp_chan_q; /* event queue number for ASP channel */
26 enum dma_event_q ram_chan_q; /* event queue number for RAM channel */
27 unsigned char data_type; /* xfer data type */
28 unsigned char convert_mono_stereo;
29 unsigned int fifo_level;
32 int davinci_soc_platform_register(struct device *dev);
33 void davinci_soc_platform_unregister(struct device *dev);
35 #endif