1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __SOC_PXA_AUDIO_H__ 3 #define __SOC_PXA_AUDIO_H__ 4 5 #include <sound/core.h> 6 #include <sound/pcm.h> 7 #include <sound/ac97_codec.h> 8 9 /* 10 * @reset_gpio: AC97 reset gpio (normally gpio113 or gpio95) 11 * a -1 value means no gpio will be used for reset 12 * @codec_pdata: AC97 codec platform_data 13 14 * reset_gpio should only be specified for pxa27x CPUs where a silicon 15 * bug prevents correct operation of the reset line. If not specified, 16 * the default behaviour on these CPUs is to consider gpio 113 as the 17 * AC97 reset line, which is the default on most boards. 18 */ 19 typedef struct { 20 int (*startup)(struct snd_pcm_substream *, void *); 21 void (*shutdown)(struct snd_pcm_substream *, void *); 22 void (*suspend)(void *); 23 void (*resume)(void *); 24 void *priv; 25 int reset_gpio; 26 void *codec_pdata[AC97_BUS_MAX_DEVICES]; 27 } pxa2xx_audio_ops_t; 28 29 extern void pxa_set_ac97_info(pxa2xx_audio_ops_t *ops); 30 extern void pxa27x_configure_ac97reset(int reset_gpio, bool to_gpio); 31 32 #endif 33