#include <linux/delay.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <sound/core.h>
#include "ice1712.h"
#include "envy24ht.h"
#include "psc724.h"
#include "wm8766.h"
#include "wm8776.h"
struct psc724_spec { … };
#define GPIO_HP_JACK …
#define GPIO_MUTE_SUR …
#define GPIO_MUTE_ALL …
#define JACK_INTERVAL …
#define PSC724_SPI_DELAY …
#define PSC724_SPI_DATA …
#define PSC724_SPI_CLK …
#define PSC724_SPI_LOAD …
#define PSC724_SPI_MASK …
static void psc724_wm8766_write(struct snd_wm8766 *wm, u16 addr, u16 data)
{ … }
static void psc724_wm8776_write(struct snd_wm8776 *wm, u8 addr, u8 data)
{ … }
static void psc724_set_master_switch(struct snd_ice1712 *ice, bool on)
{ … }
static bool psc724_get_master_switch(struct snd_ice1712 *ice)
{ … }
static void psc724_set_jack_state(struct snd_ice1712 *ice, bool hp_connected)
{ … }
static void psc724_update_hp_jack_state(struct work_struct *work)
{ … }
static void psc724_set_jack_detection(struct snd_ice1712 *ice, bool on)
{ … }
static bool psc724_get_jack_detection(struct snd_ice1712 *ice)
{ … }
struct psc724_control { … };
static const struct psc724_control psc724_cont[] = …;
static int psc724_ctl_get(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{ … }
static int psc724_ctl_put(struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{ … }
static const char *front_volume = …;
static const char *front_switch = …;
static const char *front_zc = …;
static const char *front_izd = …;
static const char *front_phase = …;
static const char *front_deemph = …;
static const char *ain1_switch = …;
static const char *ain2_switch = …;
static const char *ain3_switch = …;
static const char *ain4_switch = …;
static const char *ain5_switch = …;
static const char *rear_volume = …;
static const char *clfe_volume = …;
static const char *rear_switch = …;
static const char *clfe_switch = …;
static const char *rear_phase = …;
static const char *clfe_phase = …;
static const char *rear_deemph = …;
static const char *clfe_deemph = …;
static const char *rear_clfe_izd = …;
static const char *rear_clfe_zc = …;
static int psc724_add_controls(struct snd_ice1712 *ice)
{ … }
static void psc724_set_pro_rate(struct snd_ice1712 *ice, unsigned int rate)
{ … }
#ifdef CONFIG_PM_SLEEP
static int psc724_resume(struct snd_ice1712 *ice)
{ … }
#endif
static int psc724_init(struct snd_ice1712 *ice)
{ … }
static void psc724_exit(struct snd_ice1712 *ice)
{ … }
static const unsigned char psc724_eeprom[] = …;
struct snd_ice1712_card_info snd_vt1724_psc724_cards[] = …;