2005-04-17 06:20:36 +08:00
|
|
|
#ifndef __ASM_ARCH_AUDIO_H__
|
|
|
|
#define __ASM_ARCH_AUDIO_H__
|
|
|
|
|
|
|
|
#include <sound/core.h>
|
|
|
|
#include <sound/pcm.h>
|
2009-07-30 08:55:01 +08:00
|
|
|
#include <sound/ac97_codec.h>
|
2005-04-17 06:20:36 +08:00
|
|
|
|
2009-04-13 18:48:03 +08:00
|
|
|
/*
|
|
|
|
* @reset_gpio: AC97 reset gpio (normally gpio113 or gpio95)
|
|
|
|
* a -1 value means no gpio will be used for reset
|
2009-07-30 08:55:01 +08:00
|
|
|
* @codec_pdata: AC97 codec platform_data
|
2009-04-13 18:48:03 +08:00
|
|
|
|
|
|
|
* reset_gpio should only be specified for pxa27x CPUs where a silicon
|
|
|
|
* bug prevents correct operation of the reset line. If not specified,
|
|
|
|
* the default behaviour on these CPUs is to consider gpio 113 as the
|
|
|
|
* AC97 reset line, which is the default on most boards.
|
|
|
|
*/
|
2005-04-17 06:20:36 +08:00
|
|
|
typedef struct {
|
2006-01-14 01:48:06 +08:00
|
|
|
int (*startup)(struct snd_pcm_substream *, void *);
|
|
|
|
void (*shutdown)(struct snd_pcm_substream *, void *);
|
2005-04-17 06:20:36 +08:00
|
|
|
void (*suspend)(void *);
|
|
|
|
void (*resume)(void *);
|
|
|
|
void *priv;
|
2009-04-13 18:48:03 +08:00
|
|
|
int reset_gpio;
|
2009-07-30 08:55:01 +08:00
|
|
|
void *codec_pdata[AC97_BUS_MAX_DEVICES];
|
2005-04-17 06:20:36 +08:00
|
|
|
} pxa2xx_audio_ops_t;
|
|
|
|
|
2008-06-10 19:30:05 +08:00
|
|
|
extern void pxa_set_ac97_info(pxa2xx_audio_ops_t *ops);
|
|
|
|
|
2005-04-17 06:20:36 +08:00
|
|
|
#endif
|