diff options
author | Liam Girdwood <liam.girdwood@wolfsonmicro.com> | 2006-10-12 08:26:55 -0400 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2007-02-09 03:00:43 -0500 |
commit | f11a96d5cd94202479e603f9dfaff6e92f342135 (patch) | |
tree | 67693eaeef5cee6baa078d4e23ace73fab84d0b4 /sound/soc/pxa/pxa2xx-pcm.h | |
parent | 102fa9060e114a53628a6594034b6ecf624dffc6 (diff) |
[ALSA] ASoC pxa2xx DMA support
This patch adds pxa2xx ASoC DMA audio support. It's based on
sound/arm/pxa-pcm.c by Nicolas Pitre with the following differences.
o Modified driver structure to use ASoC core PCM callbacks and data
structures.
o Registration with ASoC core.
From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/soc/pxa/pxa2xx-pcm.h')
-rw-r--r-- | sound/soc/pxa/pxa2xx-pcm.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/sound/soc/pxa/pxa2xx-pcm.h b/sound/soc/pxa/pxa2xx-pcm.h new file mode 100644 index 000000000000..0b55f070da27 --- /dev/null +++ b/sound/soc/pxa/pxa2xx-pcm.h | |||
@@ -0,0 +1,48 @@ | |||
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 | */ | ||
12 | |||
13 | #ifndef _PXA2XX_PCM_H | ||
14 | #define _PXA2XX_PCM_H | ||
15 | |||
16 | struct pxa2xx_pcm_dma_params { | ||
17 | char *name; /* stream identifier */ | ||
18 | u32 dcmd; /* DMA descriptor dcmd field */ | ||
19 | volatile u32 *drcmr; /* the DMA request channel to use */ | ||
20 | u32 dev_addr; /* device physical address for DMA */ | ||
21 | }; | ||
22 | |||
23 | struct pxa2xx_gpio { | ||
24 | u32 sys; | ||
25 | u32 rx; | ||
26 | u32 tx; | ||
27 | u32 clk; | ||
28 | u32 frm; | ||
29 | }; | ||
30 | |||
31 | /* pxa2xx DAI ID's */ | ||
32 | #define PXA2XX_DAI_AC97_HIFI 0 | ||
33 | #define PXA2XX_DAI_AC97_AUX 1 | ||
34 | #define PXA2XX_DAI_AC97_MIC 2 | ||
35 | #define PXA2XX_DAI_I2S 0 | ||
36 | #define PXA2XX_DAI_SSP1 0 | ||
37 | #define PXA2XX_DAI_SSP2 1 | ||
38 | #define PXA2XX_DAI_SSP3 2 | ||
39 | |||
40 | extern struct snd_soc_cpu_dai pxa_ac97_dai[3]; | ||
41 | extern struct snd_soc_cpu_dai pxa_i2s_dai; | ||
42 | extern struct snd_soc_cpu_dai pxa_ssp_dai[3]; | ||
43 | |||
44 | /* platform data */ | ||
45 | extern struct snd_soc_platform pxa2xx_soc_platform; | ||
46 | extern struct snd_ac97_bus_ops pxa2xx_ac97_ops; | ||
47 | |||
48 | #endif | ||