| Takashi Iwai | 2c484df | 2005-06-30 18:54:04 +0200 | [diff] [blame] | 1 | /* | 
|  | 2 | * linux/sound/arm/pxa2xx-pcm.h -- ALSA PCM interface for the Intel PXA2xx chip | 
|  | 3 | * | 
|  | 4 | * Author:	Nicolas Pitre | 
|  | 5 | * Created:	Nov 30, 2004 | 
|  | 6 | * Copyright:	MontaVista Software, Inc. | 
|  | 7 | * | 
|  | 8 | * This program is free software; you can redistribute it and/or modify | 
|  | 9 | * it under the terms of the GNU General Public License version 2 as | 
|  | 10 | * published by the Free Software Foundation. | 
|  | 11 | */ | 
| Eric Miao | afb5b5c | 2008-12-01 11:43:08 +0800 | [diff] [blame] | 12 | #include <mach/dma.h> | 
| Takashi Iwai | 2c484df | 2005-06-30 18:54:04 +0200 | [diff] [blame] | 13 |  | 
| Dmitry Baryshkov | a6d7731 | 2008-09-10 05:01:20 +0400 | [diff] [blame] | 14 | struct pxa2xx_runtime_data { | 
|  | 15 | int dma_ch; | 
|  | 16 | struct pxa2xx_pcm_dma_params *params; | 
|  | 17 | pxa_dma_desc *dma_desc_array; | 
|  | 18 | dma_addr_t dma_desc_array_phys; | 
| Takashi Iwai | d18f837 | 2005-11-17 15:10:38 +0100 | [diff] [blame] | 19 | }; | 
| Dmitry Baryshkov | a6d7731 | 2008-09-10 05:01:20 +0400 | [diff] [blame] | 20 |  | 
| Takashi Iwai | d18f837 | 2005-11-17 15:10:38 +0100 | [diff] [blame] | 21 | struct pxa2xx_pcm_client { | 
|  | 22 | struct pxa2xx_pcm_dma_params *playback_params; | 
|  | 23 | struct pxa2xx_pcm_dma_params *capture_params; | 
|  | 24 | int (*startup)(struct snd_pcm_substream *); | 
|  | 25 | void (*shutdown)(struct snd_pcm_substream *); | 
|  | 26 | int (*prepare)(struct snd_pcm_substream *); | 
|  | 27 | }; | 
| Takashi Iwai | 2c484df | 2005-06-30 18:54:04 +0200 | [diff] [blame] | 28 |  | 
| Takashi Iwai | d18f837 | 2005-11-17 15:10:38 +0100 | [diff] [blame] | 29 | extern int pxa2xx_pcm_new(struct snd_card *, struct pxa2xx_pcm_client *, struct snd_pcm **); | 
| Takashi Iwai | 2c484df | 2005-06-30 18:54:04 +0200 | [diff] [blame] | 30 |  |