Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | #ifndef __ASM_ARCH_AUDIO_H__ |
| 2 | #define __ASM_ARCH_AUDIO_H__ |
| 3 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 4 | #include <sound/core.h> |
| 5 | #include <sound/pcm.h> |
Marek Vasut | 4ac0478 | 2009-07-30 02:55:01 +0200 | [diff] [blame] | 6 | #include <sound/ac97_codec.h> |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 7 | |
Mark Brown | eae1775 | 2009-04-13 11:48:03 +0100 | [diff] [blame] | 8 | /* |
| 9 | * @reset_gpio: AC97 reset gpio (normally gpio113 or gpio95) |
| 10 | * a -1 value means no gpio will be used for reset |
Marek Vasut | 4ac0478 | 2009-07-30 02:55:01 +0200 | [diff] [blame] | 11 | * @codec_pdata: AC97 codec platform_data |
Mark Brown | eae1775 | 2009-04-13 11:48:03 +0100 | [diff] [blame] | 12 | |
| 13 | * reset_gpio should only be specified for pxa27x CPUs where a silicon |
| 14 | * bug prevents correct operation of the reset line. If not specified, |
| 15 | * the default behaviour on these CPUs is to consider gpio 113 as the |
| 16 | * AC97 reset line, which is the default on most boards. |
| 17 | */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 18 | typedef struct { |
Takashi Iwai | f7cbb7f | 2006-01-13 18:48:06 +0100 | [diff] [blame] | 19 | int (*startup)(struct snd_pcm_substream *, void *); |
| 20 | void (*shutdown)(struct snd_pcm_substream *, void *); |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 21 | void (*suspend)(void *); |
| 22 | void (*resume)(void *); |
| 23 | void *priv; |
Mark Brown | eae1775 | 2009-04-13 11:48:03 +0100 | [diff] [blame] | 24 | int reset_gpio; |
Marek Vasut | 4ac0478 | 2009-07-30 02:55:01 +0200 | [diff] [blame] | 25 | void *codec_pdata[AC97_BUS_MAX_DEVICES]; |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 26 | } pxa2xx_audio_ops_t; |
| 27 | |
Mark Brown | 9f19d63 | 2008-06-10 12:30:05 +0100 | [diff] [blame] | 28 | extern void pxa_set_ac97_info(pxa2xx_audio_ops_t *ops); |
| 29 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 30 | #endif |