Commit c8b6bf9b authored by Takashi Iwai's avatar Takashi Iwai Committed by Jaroslav Kysela

[ALSA] Remove xxx_t typedefs: HD-Audio codec

Modules: HDA Codec driver,HDA generic driver

Remove xxx_t typedefs from the HD-Audio codec support codes.
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 66f8df6b
This diff is collapsed.
...@@ -420,7 +420,7 @@ struct hda_bus_template { ...@@ -420,7 +420,7 @@ struct hda_bus_template {
* A hda_bus contains several codecs in the list codec_list. * A hda_bus contains several codecs in the list codec_list.
*/ */
struct hda_bus { struct hda_bus {
snd_card_t *card; struct snd_card *card;
/* copied from template */ /* copied from template */
void *private_data; void *private_data;
...@@ -437,7 +437,7 @@ struct hda_bus { ...@@ -437,7 +437,7 @@ struct hda_bus {
/* unsolicited event queue */ /* unsolicited event queue */
struct hda_bus_unsolicited *unsol; struct hda_bus_unsolicited *unsol;
snd_info_entry_t *proc; struct snd_info_entry *proc;
}; };
/* /*
...@@ -481,14 +481,14 @@ struct hda_amp_info { ...@@ -481,14 +481,14 @@ struct hda_amp_info {
/* PCM callbacks */ /* PCM callbacks */
struct hda_pcm_ops { struct hda_pcm_ops {
int (*open)(struct hda_pcm_stream *info, struct hda_codec *codec, int (*open)(struct hda_pcm_stream *info, struct hda_codec *codec,
snd_pcm_substream_t *substream); struct snd_pcm_substream *substream);
int (*close)(struct hda_pcm_stream *info, struct hda_codec *codec, int (*close)(struct hda_pcm_stream *info, struct hda_codec *codec,
snd_pcm_substream_t *substream); struct snd_pcm_substream *substream);
int (*prepare)(struct hda_pcm_stream *info, struct hda_codec *codec, int (*prepare)(struct hda_pcm_stream *info, struct hda_codec *codec,
unsigned int stream_tag, unsigned int format, unsigned int stream_tag, unsigned int format,
snd_pcm_substream_t *substream); struct snd_pcm_substream *substream);
int (*cleanup)(struct hda_pcm_stream *info, struct hda_codec *codec, int (*cleanup)(struct hda_pcm_stream *info, struct hda_codec *codec,
snd_pcm_substream_t *substream); struct snd_pcm_substream *substream);
}; };
/* PCM information for each substream */ /* PCM information for each substream */
...@@ -563,7 +563,7 @@ enum { ...@@ -563,7 +563,7 @@ enum {
/* /*
* constructors * constructors
*/ */
int snd_hda_bus_new(snd_card_t *card, const struct hda_bus_template *temp, int snd_hda_bus_new(struct snd_card *card, const struct hda_bus_template *temp,
struct hda_bus **busp); struct hda_bus **busp);
int snd_hda_codec_new(struct hda_bus *bus, unsigned int codec_addr, int snd_hda_codec_new(struct hda_bus *bus, unsigned int codec_addr,
struct hda_codec **codecp); struct hda_codec **codecp);
......
...@@ -389,14 +389,14 @@ static int parse_output(struct hda_codec *codec) ...@@ -389,14 +389,14 @@ static int parse_output(struct hda_codec *codec)
*/ */
/* control callbacks */ /* control callbacks */
static int capture_source_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo) static int capture_source_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct hda_gspec *spec = codec->spec; struct hda_gspec *spec = codec->spec;
return snd_hda_input_mux_info(&spec->input_mux, uinfo); return snd_hda_input_mux_info(&spec->input_mux, uinfo);
} }
static int capture_source_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int capture_source_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct hda_gspec *spec = codec->spec; struct hda_gspec *spec = codec->spec;
...@@ -405,7 +405,7 @@ static int capture_source_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *uc ...@@ -405,7 +405,7 @@ static int capture_source_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *uc
return 0; return 0;
} }
static int capture_source_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int capture_source_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct hda_gspec *spec = codec->spec; struct hda_gspec *spec = codec->spec;
...@@ -617,7 +617,7 @@ static int create_mixer(struct hda_codec *codec, struct hda_gnode *node, ...@@ -617,7 +617,7 @@ static int create_mixer(struct hda_codec *codec, struct hda_gnode *node,
char name[32]; char name[32];
int err; int err;
int created = 0; int created = 0;
snd_kcontrol_new_t knew; struct snd_kcontrol_new knew;
if (type) if (type)
sprintf(name, "%s %s Switch", type, dir_sfx); sprintf(name, "%s %s Switch", type, dir_sfx);
...@@ -625,14 +625,14 @@ static int create_mixer(struct hda_codec *codec, struct hda_gnode *node, ...@@ -625,14 +625,14 @@ static int create_mixer(struct hda_codec *codec, struct hda_gnode *node,
sprintf(name, "%s Switch", dir_sfx); sprintf(name, "%s Switch", dir_sfx);
if ((node->wid_caps & AC_WCAP_IN_AMP) && if ((node->wid_caps & AC_WCAP_IN_AMP) &&
(node->amp_in_caps & AC_AMPCAP_MUTE)) { (node->amp_in_caps & AC_AMPCAP_MUTE)) {
knew = (snd_kcontrol_new_t)HDA_CODEC_MUTE(name, node->nid, index, HDA_INPUT); knew = (struct snd_kcontrol_new)HDA_CODEC_MUTE(name, node->nid, index, HDA_INPUT);
snd_printdd("[%s] NID=0x%x, DIR=IN, IDX=0x%x\n", name, node->nid, index); snd_printdd("[%s] NID=0x%x, DIR=IN, IDX=0x%x\n", name, node->nid, index);
if ((err = snd_ctl_add(codec->bus->card, snd_ctl_new1(&knew, codec))) < 0) if ((err = snd_ctl_add(codec->bus->card, snd_ctl_new1(&knew, codec))) < 0)
return err; return err;
created = 1; created = 1;
} else if ((node->wid_caps & AC_WCAP_OUT_AMP) && } else if ((node->wid_caps & AC_WCAP_OUT_AMP) &&
(node->amp_out_caps & AC_AMPCAP_MUTE)) { (node->amp_out_caps & AC_AMPCAP_MUTE)) {
knew = (snd_kcontrol_new_t)HDA_CODEC_MUTE(name, node->nid, 0, HDA_OUTPUT); knew = (struct snd_kcontrol_new)HDA_CODEC_MUTE(name, node->nid, 0, HDA_OUTPUT);
snd_printdd("[%s] NID=0x%x, DIR=OUT\n", name, node->nid); snd_printdd("[%s] NID=0x%x, DIR=OUT\n", name, node->nid);
if ((err = snd_ctl_add(codec->bus->card, snd_ctl_new1(&knew, codec))) < 0) if ((err = snd_ctl_add(codec->bus->card, snd_ctl_new1(&knew, codec))) < 0)
return err; return err;
...@@ -645,14 +645,14 @@ static int create_mixer(struct hda_codec *codec, struct hda_gnode *node, ...@@ -645,14 +645,14 @@ static int create_mixer(struct hda_codec *codec, struct hda_gnode *node,
sprintf(name, "%s Volume", dir_sfx); sprintf(name, "%s Volume", dir_sfx);
if ((node->wid_caps & AC_WCAP_IN_AMP) && if ((node->wid_caps & AC_WCAP_IN_AMP) &&
(node->amp_in_caps & AC_AMPCAP_NUM_STEPS)) { (node->amp_in_caps & AC_AMPCAP_NUM_STEPS)) {
knew = (snd_kcontrol_new_t)HDA_CODEC_VOLUME(name, node->nid, index, HDA_INPUT); knew = (struct snd_kcontrol_new)HDA_CODEC_VOLUME(name, node->nid, index, HDA_INPUT);
snd_printdd("[%s] NID=0x%x, DIR=IN, IDX=0x%x\n", name, node->nid, index); snd_printdd("[%s] NID=0x%x, DIR=IN, IDX=0x%x\n", name, node->nid, index);
if ((err = snd_ctl_add(codec->bus->card, snd_ctl_new1(&knew, codec))) < 0) if ((err = snd_ctl_add(codec->bus->card, snd_ctl_new1(&knew, codec))) < 0)
return err; return err;
created = 1; created = 1;
} else if ((node->wid_caps & AC_WCAP_OUT_AMP) && } else if ((node->wid_caps & AC_WCAP_OUT_AMP) &&
(node->amp_out_caps & AC_AMPCAP_NUM_STEPS)) { (node->amp_out_caps & AC_AMPCAP_NUM_STEPS)) {
knew = (snd_kcontrol_new_t)HDA_CODEC_VOLUME(name, node->nid, 0, HDA_OUTPUT); knew = (struct snd_kcontrol_new)HDA_CODEC_VOLUME(name, node->nid, 0, HDA_OUTPUT);
snd_printdd("[%s] NID=0x%x, DIR=OUT\n", name, node->nid); snd_printdd("[%s] NID=0x%x, DIR=OUT\n", name, node->nid);
if ((err = snd_ctl_add(codec->bus->card, snd_ctl_new1(&knew, codec))) < 0) if ((err = snd_ctl_add(codec->bus->card, snd_ctl_new1(&knew, codec))) < 0)
return err; return err;
...@@ -667,7 +667,7 @@ static int create_mixer(struct hda_codec *codec, struct hda_gnode *node, ...@@ -667,7 +667,7 @@ static int create_mixer(struct hda_codec *codec, struct hda_gnode *node,
*/ */
static int check_existing_control(struct hda_codec *codec, const char *type, const char *dir) static int check_existing_control(struct hda_codec *codec, const char *type, const char *dir)
{ {
snd_ctl_elem_id_t id; struct snd_ctl_elem_id id;
memset(&id, 0, sizeof(id)); memset(&id, 0, sizeof(id));
sprintf(id.name, "%s %s Volume", type, dir); sprintf(id.name, "%s %s Volume", type, dir);
id.iface = SNDRV_CTL_ELEM_IFACE_MIXER; id.iface = SNDRV_CTL_ELEM_IFACE_MIXER;
...@@ -710,7 +710,7 @@ static int build_input_controls(struct hda_codec *codec) ...@@ -710,7 +710,7 @@ static int build_input_controls(struct hda_codec *codec)
/* create input MUX if multiple sources are available */ /* create input MUX if multiple sources are available */
if (spec->input_mux.num_items > 1) { if (spec->input_mux.num_items > 1) {
static snd_kcontrol_new_t cap_sel = { static struct snd_kcontrol_new cap_sel = {
.iface = SNDRV_CTL_ELEM_IFACE_MIXER, .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
.name = "Capture Source", .name = "Capture Source",
.info = capture_source_info, .info = capture_source_info,
......
...@@ -60,12 +60,12 @@ ...@@ -60,12 +60,12 @@
#define HDA_CODEC_MUTE(xname, nid, xindex, direction) \ #define HDA_CODEC_MUTE(xname, nid, xindex, direction) \
HDA_CODEC_MUTE_MONO(xname, nid, 3, xindex, direction) HDA_CODEC_MUTE_MONO(xname, nid, 3, xindex, direction)
int snd_hda_mixer_amp_volume_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo); int snd_hda_mixer_amp_volume_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo);
int snd_hda_mixer_amp_volume_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol); int snd_hda_mixer_amp_volume_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
int snd_hda_mixer_amp_volume_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol); int snd_hda_mixer_amp_volume_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
int snd_hda_mixer_amp_switch_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo); int snd_hda_mixer_amp_switch_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo);
int snd_hda_mixer_amp_switch_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol); int snd_hda_mixer_amp_switch_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
int snd_hda_mixer_amp_switch_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol); int snd_hda_mixer_amp_switch_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
/* mono switch binding multiple inputs */ /* mono switch binding multiple inputs */
#define HDA_BIND_MUTE_MONO(xname, nid, channel, indices, direction) \ #define HDA_BIND_MUTE_MONO(xname, nid, channel, indices, direction) \
...@@ -78,8 +78,8 @@ int snd_hda_mixer_amp_switch_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t ...@@ -78,8 +78,8 @@ int snd_hda_mixer_amp_switch_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t
/* stereo switch binding multiple inputs */ /* stereo switch binding multiple inputs */
#define HDA_BIND_MUTE(xname,nid,indices,dir) HDA_BIND_MUTE_MONO(xname,nid,3,indices,dir) #define HDA_BIND_MUTE(xname,nid,indices,dir) HDA_BIND_MUTE_MONO(xname,nid,3,indices,dir)
int snd_hda_mixer_bind_switch_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol); int snd_hda_mixer_bind_switch_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
int snd_hda_mixer_bind_switch_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol); int snd_hda_mixer_bind_switch_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol);
int snd_hda_create_spdif_out_ctls(struct hda_codec *codec, hda_nid_t nid); int snd_hda_create_spdif_out_ctls(struct hda_codec *codec, hda_nid_t nid);
int snd_hda_create_spdif_in_ctls(struct hda_codec *codec, hda_nid_t nid); int snd_hda_create_spdif_in_ctls(struct hda_codec *codec, hda_nid_t nid);
...@@ -97,12 +97,12 @@ struct hda_input_mux { ...@@ -97,12 +97,12 @@ struct hda_input_mux {
struct hda_input_mux_item items[HDA_MAX_NUM_INPUTS]; struct hda_input_mux_item items[HDA_MAX_NUM_INPUTS];
}; };
int snd_hda_input_mux_info(const struct hda_input_mux *imux, snd_ctl_elem_info_t *uinfo); int snd_hda_input_mux_info(const struct hda_input_mux *imux, struct snd_ctl_elem_info *uinfo);
int snd_hda_input_mux_put(struct hda_codec *codec, const struct hda_input_mux *imux, int snd_hda_input_mux_put(struct hda_codec *codec, const struct hda_input_mux *imux,
snd_ctl_elem_value_t *ucontrol, hda_nid_t nid, struct snd_ctl_elem_value *ucontrol, hda_nid_t nid,
unsigned int *cur_val); unsigned int *cur_val);
/* /*
* Channel mode helper * Channel mode helper
*/ */
struct hda_channel_mode { struct hda_channel_mode {
...@@ -110,12 +110,12 @@ struct hda_channel_mode { ...@@ -110,12 +110,12 @@ struct hda_channel_mode {
const struct hda_verb *sequence; const struct hda_verb *sequence;
}; };
int snd_hda_ch_mode_info(struct hda_codec *codec, snd_ctl_elem_info_t *uinfo, int snd_hda_ch_mode_info(struct hda_codec *codec, struct snd_ctl_elem_info *uinfo,
const struct hda_channel_mode *chmode, int num_chmodes); const struct hda_channel_mode *chmode, int num_chmodes);
int snd_hda_ch_mode_get(struct hda_codec *codec, snd_ctl_elem_value_t *ucontrol, int snd_hda_ch_mode_get(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol,
const struct hda_channel_mode *chmode, int num_chmodes, const struct hda_channel_mode *chmode, int num_chmodes,
int max_channels); int max_channels);
int snd_hda_ch_mode_put(struct hda_codec *codec, snd_ctl_elem_value_t *ucontrol, int snd_hda_ch_mode_put(struct hda_codec *codec, struct snd_ctl_elem_value *ucontrol,
const struct hda_channel_mode *chmode, int num_chmodes, const struct hda_channel_mode *chmode, int num_chmodes,
int *max_channelsp); int *max_channelsp);
...@@ -138,11 +138,11 @@ struct hda_multi_out { ...@@ -138,11 +138,11 @@ struct hda_multi_out {
int snd_hda_multi_out_dig_open(struct hda_codec *codec, struct hda_multi_out *mout); int snd_hda_multi_out_dig_open(struct hda_codec *codec, struct hda_multi_out *mout);
int snd_hda_multi_out_dig_close(struct hda_codec *codec, struct hda_multi_out *mout); int snd_hda_multi_out_dig_close(struct hda_codec *codec, struct hda_multi_out *mout);
int snd_hda_multi_out_analog_open(struct hda_codec *codec, struct hda_multi_out *mout, int snd_hda_multi_out_analog_open(struct hda_codec *codec, struct hda_multi_out *mout,
snd_pcm_substream_t *substream); struct snd_pcm_substream *substream);
int snd_hda_multi_out_analog_prepare(struct hda_codec *codec, struct hda_multi_out *mout, int snd_hda_multi_out_analog_prepare(struct hda_codec *codec, struct hda_multi_out *mout,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream); struct snd_pcm_substream *substream);
int snd_hda_multi_out_analog_cleanup(struct hda_codec *codec, struct hda_multi_out *mout); int snd_hda_multi_out_analog_cleanup(struct hda_codec *codec, struct hda_multi_out *mout);
/* /*
...@@ -170,13 +170,13 @@ struct hda_board_config { ...@@ -170,13 +170,13 @@ struct hda_board_config {
}; };
int snd_hda_check_board_config(struct hda_codec *codec, const struct hda_board_config *tbl); int snd_hda_check_board_config(struct hda_codec *codec, const struct hda_board_config *tbl);
int snd_hda_add_new_ctls(struct hda_codec *codec, snd_kcontrol_new_t *knew); int snd_hda_add_new_ctls(struct hda_codec *codec, struct snd_kcontrol_new *knew);
/* /*
* power management * power management
*/ */
#ifdef CONFIG_PM #ifdef CONFIG_PM
int snd_hda_resume_ctls(struct hda_codec *codec, snd_kcontrol_new_t *knew); int snd_hda_resume_ctls(struct hda_codec *codec, struct snd_kcontrol_new *knew);
int snd_hda_resume_spdif_out(struct hda_codec *codec); int snd_hda_resume_spdif_out(struct hda_codec *codec);
int snd_hda_resume_spdif_in(struct hda_codec *codec); int snd_hda_resume_spdif_in(struct hda_codec *codec);
#endif #endif
......
...@@ -47,7 +47,7 @@ static const char *get_wid_type_name(unsigned int wid_value) ...@@ -47,7 +47,7 @@ static const char *get_wid_type_name(unsigned int wid_value)
return "UNKOWN Widget"; return "UNKOWN Widget";
} }
static void print_amp_caps(snd_info_buffer_t *buffer, static void print_amp_caps(struct snd_info_buffer *buffer,
struct hda_codec *codec, hda_nid_t nid, int dir) struct hda_codec *codec, hda_nid_t nid, int dir)
{ {
unsigned int caps; unsigned int caps;
...@@ -66,7 +66,7 @@ static void print_amp_caps(snd_info_buffer_t *buffer, ...@@ -66,7 +66,7 @@ static void print_amp_caps(snd_info_buffer_t *buffer,
(caps & AC_AMPCAP_MUTE) >> AC_AMPCAP_MUTE_SHIFT); (caps & AC_AMPCAP_MUTE) >> AC_AMPCAP_MUTE_SHIFT);
} }
static void print_amp_vals(snd_info_buffer_t *buffer, static void print_amp_vals(struct snd_info_buffer *buffer,
struct hda_codec *codec, hda_nid_t nid, struct hda_codec *codec, hda_nid_t nid,
int dir, int stereo, int indices) int dir, int stereo, int indices)
{ {
...@@ -91,7 +91,7 @@ static void print_amp_vals(snd_info_buffer_t *buffer, ...@@ -91,7 +91,7 @@ static void print_amp_vals(snd_info_buffer_t *buffer,
snd_iprintf(buffer, "\n"); snd_iprintf(buffer, "\n");
} }
static void print_pcm_caps(snd_info_buffer_t *buffer, static void print_pcm_caps(struct snd_info_buffer *buffer,
struct hda_codec *codec, hda_nid_t nid) struct hda_codec *codec, hda_nid_t nid)
{ {
unsigned int pcm = snd_hda_param_read(codec, nid, AC_PAR_PCM); unsigned int pcm = snd_hda_param_read(codec, nid, AC_PAR_PCM);
...@@ -160,7 +160,7 @@ static const char *get_jack_color(u32 cfg) ...@@ -160,7 +160,7 @@ static const char *get_jack_color(u32 cfg)
return "UNKNOWN"; return "UNKNOWN";
} }
static void print_pin_caps(snd_info_buffer_t *buffer, static void print_pin_caps(struct snd_info_buffer *buffer,
struct hda_codec *codec, hda_nid_t nid) struct hda_codec *codec, hda_nid_t nid)
{ {
static char *jack_conns[4] = { "Jack", "N/A", "Fixed", "Both" }; static char *jack_conns[4] = { "Jack", "N/A", "Fixed", "Both" };
...@@ -194,7 +194,7 @@ static void print_pin_caps(snd_info_buffer_t *buffer, ...@@ -194,7 +194,7 @@ static void print_pin_caps(snd_info_buffer_t *buffer,
} }
static void print_codec_info(snd_info_entry_t *entry, snd_info_buffer_t *buffer) static void print_codec_info(struct snd_info_entry *entry, struct snd_info_buffer *buffer)
{ {
struct hda_codec *codec = entry->private_data; struct hda_codec *codec = entry->private_data;
char buf[32]; char buf[32];
...@@ -309,7 +309,7 @@ static void print_codec_info(snd_info_entry_t *entry, snd_info_buffer_t *buffer) ...@@ -309,7 +309,7 @@ static void print_codec_info(snd_info_entry_t *entry, snd_info_buffer_t *buffer)
int snd_hda_codec_proc_new(struct hda_codec *codec) int snd_hda_codec_proc_new(struct hda_codec *codec)
{ {
char name[32]; char name[32];
snd_info_entry_t *entry; struct snd_info_entry *entry;
int err; int err;
snprintf(name, sizeof(name), "codec#%d", codec->addr); snprintf(name, sizeof(name), "codec#%d", codec->addr);
......
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
#include "hda_local.h" #include "hda_local.h"
struct ad198x_spec { struct ad198x_spec {
snd_kcontrol_new_t *mixers[5]; struct snd_kcontrol_new *mixers[5];
int num_mixers; int num_mixers;
const struct hda_verb *init_verbs[3]; /* initialization verbs const struct hda_verb *init_verbs[3]; /* initialization verbs
...@@ -65,7 +65,7 @@ struct ad198x_spec { ...@@ -65,7 +65,7 @@ struct ad198x_spec {
/* /*
* input MUX handling (common part) * input MUX handling (common part)
*/ */
static int ad198x_mux_enum_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo) static int ad198x_mux_enum_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
...@@ -73,7 +73,7 @@ static int ad198x_mux_enum_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *u ...@@ -73,7 +73,7 @@ static int ad198x_mux_enum_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *u
return snd_hda_input_mux_info(spec->input_mux, uinfo); return snd_hda_input_mux_info(spec->input_mux, uinfo);
} }
static int ad198x_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int ad198x_mux_enum_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
...@@ -83,7 +83,7 @@ static int ad198x_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u ...@@ -83,7 +83,7 @@ static int ad198x_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u
return 0; return 0;
} }
static int ad198x_mux_enum_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int ad198x_mux_enum_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
...@@ -135,7 +135,7 @@ static int ad198x_build_controls(struct hda_codec *codec) ...@@ -135,7 +135,7 @@ static int ad198x_build_controls(struct hda_codec *codec)
*/ */
static int ad198x_playback_pcm_open(struct hda_pcm_stream *hinfo, static int ad198x_playback_pcm_open(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
return snd_hda_multi_out_analog_open(codec, &spec->multiout, substream); return snd_hda_multi_out_analog_open(codec, &spec->multiout, substream);
...@@ -145,7 +145,7 @@ static int ad198x_playback_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -145,7 +145,7 @@ static int ad198x_playback_pcm_prepare(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
return snd_hda_multi_out_analog_prepare(codec, &spec->multiout, stream_tag, return snd_hda_multi_out_analog_prepare(codec, &spec->multiout, stream_tag,
...@@ -154,7 +154,7 @@ static int ad198x_playback_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -154,7 +154,7 @@ static int ad198x_playback_pcm_prepare(struct hda_pcm_stream *hinfo,
static int ad198x_playback_pcm_cleanup(struct hda_pcm_stream *hinfo, static int ad198x_playback_pcm_cleanup(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
return snd_hda_multi_out_analog_cleanup(codec, &spec->multiout); return snd_hda_multi_out_analog_cleanup(codec, &spec->multiout);
...@@ -165,7 +165,7 @@ static int ad198x_playback_pcm_cleanup(struct hda_pcm_stream *hinfo, ...@@ -165,7 +165,7 @@ static int ad198x_playback_pcm_cleanup(struct hda_pcm_stream *hinfo,
*/ */
static int ad198x_dig_playback_pcm_open(struct hda_pcm_stream *hinfo, static int ad198x_dig_playback_pcm_open(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
return snd_hda_multi_out_dig_open(codec, &spec->multiout); return snd_hda_multi_out_dig_open(codec, &spec->multiout);
...@@ -173,7 +173,7 @@ static int ad198x_dig_playback_pcm_open(struct hda_pcm_stream *hinfo, ...@@ -173,7 +173,7 @@ static int ad198x_dig_playback_pcm_open(struct hda_pcm_stream *hinfo,
static int ad198x_dig_playback_pcm_close(struct hda_pcm_stream *hinfo, static int ad198x_dig_playback_pcm_close(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
return snd_hda_multi_out_dig_close(codec, &spec->multiout); return snd_hda_multi_out_dig_close(codec, &spec->multiout);
...@@ -186,7 +186,7 @@ static int ad198x_capture_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -186,7 +186,7 @@ static int ad198x_capture_pcm_prepare(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
snd_hda_codec_setup_stream(codec, spec->adc_nids[substream->number], snd_hda_codec_setup_stream(codec, spec->adc_nids[substream->number],
...@@ -196,7 +196,7 @@ static int ad198x_capture_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -196,7 +196,7 @@ static int ad198x_capture_pcm_prepare(struct hda_pcm_stream *hinfo,
static int ad198x_capture_pcm_cleanup(struct hda_pcm_stream *hinfo, static int ad198x_capture_pcm_cleanup(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
snd_hda_codec_setup_stream(codec, spec->adc_nids[substream->number], snd_hda_codec_setup_stream(codec, spec->adc_nids[substream->number],
...@@ -348,7 +348,7 @@ static struct hda_input_mux ad1986a_capture_source = { ...@@ -348,7 +348,7 @@ static struct hda_input_mux ad1986a_capture_source = {
#define ad1986a_pcm_amp_vol_info snd_hda_mixer_amp_volume_info #define ad1986a_pcm_amp_vol_info snd_hda_mixer_amp_volume_info
static int ad1986a_pcm_amp_vol_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int ad1986a_pcm_amp_vol_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *ad = codec->spec; struct ad198x_spec *ad = codec->spec;
...@@ -359,7 +359,7 @@ static int ad1986a_pcm_amp_vol_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_ ...@@ -359,7 +359,7 @@ static int ad1986a_pcm_amp_vol_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_
return 0; return 0;
} }
static int ad1986a_pcm_amp_vol_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int ad1986a_pcm_amp_vol_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *ad = codec->spec; struct ad198x_spec *ad = codec->spec;
...@@ -377,7 +377,7 @@ static int ad1986a_pcm_amp_vol_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_ ...@@ -377,7 +377,7 @@ static int ad1986a_pcm_amp_vol_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_
#define ad1986a_pcm_amp_sw_info snd_hda_mixer_amp_switch_info #define ad1986a_pcm_amp_sw_info snd_hda_mixer_amp_switch_info
static int ad1986a_pcm_amp_sw_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int ad1986a_pcm_amp_sw_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *ad = codec->spec; struct ad198x_spec *ad = codec->spec;
...@@ -388,7 +388,7 @@ static int ad1986a_pcm_amp_sw_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t ...@@ -388,7 +388,7 @@ static int ad1986a_pcm_amp_sw_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t
return 0; return 0;
} }
static int ad1986a_pcm_amp_sw_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int ad1986a_pcm_amp_sw_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *ad = codec->spec; struct ad198x_spec *ad = codec->spec;
...@@ -407,7 +407,7 @@ static int ad1986a_pcm_amp_sw_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t ...@@ -407,7 +407,7 @@ static int ad1986a_pcm_amp_sw_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t
/* /*
* mixers * mixers
*/ */
static snd_kcontrol_new_t ad1986a_mixers[] = { static struct snd_kcontrol_new ad1986a_mixers[] = {
{ {
.iface = SNDRV_CTL_ELEM_IFACE_MIXER, .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
.name = "PCM Playback Volume", .name = "PCM Playback Volume",
...@@ -570,7 +570,7 @@ static struct hda_input_mux ad1983_capture_source = { ...@@ -570,7 +570,7 @@ static struct hda_input_mux ad1983_capture_source = {
/* /*
* SPDIF playback route * SPDIF playback route
*/ */
static int ad1983_spdif_route_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo) static int ad1983_spdif_route_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
static char *texts[] = { "PCM", "ADC" }; static char *texts[] = { "PCM", "ADC" };
...@@ -583,7 +583,7 @@ static int ad1983_spdif_route_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t ...@@ -583,7 +583,7 @@ static int ad1983_spdif_route_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t
return 0; return 0;
} }
static int ad1983_spdif_route_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int ad1983_spdif_route_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
...@@ -592,7 +592,7 @@ static int ad1983_spdif_route_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t ...@@ -592,7 +592,7 @@ static int ad1983_spdif_route_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t
return 0; return 0;
} }
static int ad1983_spdif_route_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int ad1983_spdif_route_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct ad198x_spec *spec = codec->spec; struct ad198x_spec *spec = codec->spec;
...@@ -606,7 +606,7 @@ static int ad1983_spdif_route_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t ...@@ -606,7 +606,7 @@ static int ad1983_spdif_route_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t
return 0; return 0;
} }
static snd_kcontrol_new_t ad1983_mixers[] = { static struct snd_kcontrol_new ad1983_mixers[] = {
HDA_CODEC_VOLUME("Front Playback Volume", 0x05, 0x0, HDA_OUTPUT), HDA_CODEC_VOLUME("Front Playback Volume", 0x05, 0x0, HDA_OUTPUT),
HDA_CODEC_MUTE("Front Playback Switch", 0x05, 0x0, HDA_OUTPUT), HDA_CODEC_MUTE("Front Playback Switch", 0x05, 0x0, HDA_OUTPUT),
HDA_CODEC_VOLUME("Headphone Playback Volume", 0x06, 0x0, HDA_OUTPUT), HDA_CODEC_VOLUME("Headphone Playback Volume", 0x06, 0x0, HDA_OUTPUT),
...@@ -736,7 +736,7 @@ static struct hda_input_mux ad1981_capture_source = { ...@@ -736,7 +736,7 @@ static struct hda_input_mux ad1981_capture_source = {
}, },
}; };
static snd_kcontrol_new_t ad1981_mixers[] = { static struct snd_kcontrol_new ad1981_mixers[] = {
HDA_CODEC_VOLUME("Front Playback Volume", 0x05, 0x0, HDA_OUTPUT), HDA_CODEC_VOLUME("Front Playback Volume", 0x05, 0x0, HDA_OUTPUT),
HDA_CODEC_MUTE("Front Playback Switch", 0x05, 0x0, HDA_OUTPUT), HDA_CODEC_MUTE("Front Playback Switch", 0x05, 0x0, HDA_OUTPUT),
HDA_CODEC_VOLUME("Headphone Playback Volume", 0x06, 0x0, HDA_OUTPUT), HDA_CODEC_VOLUME("Headphone Playback Volume", 0x06, 0x0, HDA_OUTPUT),
......
...@@ -79,14 +79,14 @@ struct cmi_spec { ...@@ -79,14 +79,14 @@ struct cmi_spec {
/* /*
* input MUX * input MUX
*/ */
static int cmi_mux_enum_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo) static int cmi_mux_enum_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
return snd_hda_input_mux_info(spec->input_mux, uinfo); return snd_hda_input_mux_info(spec->input_mux, uinfo);
} }
static int cmi_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int cmi_mux_enum_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
...@@ -96,7 +96,7 @@ static int cmi_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucon ...@@ -96,7 +96,7 @@ static int cmi_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucon
return 0; return 0;
} }
static int cmi_mux_enum_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int cmi_mux_enum_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
...@@ -149,7 +149,7 @@ static struct hda_channel_mode cmi9880_channel_modes[3] = { ...@@ -149,7 +149,7 @@ static struct hda_channel_mode cmi9880_channel_modes[3] = {
{ 8, cmi9880_ch8_init }, { 8, cmi9880_ch8_init },
}; };
static int cmi_ch_mode_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo) static int cmi_ch_mode_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
...@@ -157,7 +157,7 @@ static int cmi_ch_mode_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo ...@@ -157,7 +157,7 @@ static int cmi_ch_mode_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo
spec->num_channel_modes); spec->num_channel_modes);
} }
static int cmi_ch_mode_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int cmi_ch_mode_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
...@@ -165,7 +165,7 @@ static int cmi_ch_mode_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucont ...@@ -165,7 +165,7 @@ static int cmi_ch_mode_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucont
spec->num_channel_modes, spec->multiout.max_channels); spec->num_channel_modes, spec->multiout.max_channels);
} }
static int cmi_ch_mode_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int cmi_ch_mode_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
...@@ -175,7 +175,7 @@ static int cmi_ch_mode_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucont ...@@ -175,7 +175,7 @@ static int cmi_ch_mode_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucont
/* /*
*/ */
static snd_kcontrol_new_t cmi9880_basic_mixer[] = { static struct snd_kcontrol_new cmi9880_basic_mixer[] = {
/* CMI9880 has no playback volumes! */ /* CMI9880 has no playback volumes! */
HDA_CODEC_MUTE("PCM Playback Switch", 0x03, 0x0, HDA_OUTPUT), /* front */ HDA_CODEC_MUTE("PCM Playback Switch", 0x03, 0x0, HDA_OUTPUT), /* front */
HDA_CODEC_MUTE("Surround Playback Switch", 0x04, 0x0, HDA_OUTPUT), HDA_CODEC_MUTE("Surround Playback Switch", 0x04, 0x0, HDA_OUTPUT),
...@@ -207,7 +207,7 @@ static snd_kcontrol_new_t cmi9880_basic_mixer[] = { ...@@ -207,7 +207,7 @@ static snd_kcontrol_new_t cmi9880_basic_mixer[] = {
/* /*
* shared I/O pins * shared I/O pins
*/ */
static snd_kcontrol_new_t cmi9880_ch_mode_mixer[] = { static struct snd_kcontrol_new cmi9880_ch_mode_mixer[] = {
{ {
.iface = SNDRV_CTL_ELEM_IFACE_MIXER, .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
.name = "Channel Mode", .name = "Channel Mode",
...@@ -452,7 +452,7 @@ static int cmi9880_resume(struct hda_codec *codec) ...@@ -452,7 +452,7 @@ static int cmi9880_resume(struct hda_codec *codec)
*/ */
static int cmi9880_playback_pcm_open(struct hda_pcm_stream *hinfo, static int cmi9880_playback_pcm_open(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
return snd_hda_multi_out_analog_open(codec, &spec->multiout, substream); return snd_hda_multi_out_analog_open(codec, &spec->multiout, substream);
...@@ -462,7 +462,7 @@ static int cmi9880_playback_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -462,7 +462,7 @@ static int cmi9880_playback_pcm_prepare(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
return snd_hda_multi_out_analog_prepare(codec, &spec->multiout, stream_tag, return snd_hda_multi_out_analog_prepare(codec, &spec->multiout, stream_tag,
...@@ -471,7 +471,7 @@ static int cmi9880_playback_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -471,7 +471,7 @@ static int cmi9880_playback_pcm_prepare(struct hda_pcm_stream *hinfo,
static int cmi9880_playback_pcm_cleanup(struct hda_pcm_stream *hinfo, static int cmi9880_playback_pcm_cleanup(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
return snd_hda_multi_out_analog_cleanup(codec, &spec->multiout); return snd_hda_multi_out_analog_cleanup(codec, &spec->multiout);
...@@ -482,7 +482,7 @@ static int cmi9880_playback_pcm_cleanup(struct hda_pcm_stream *hinfo, ...@@ -482,7 +482,7 @@ static int cmi9880_playback_pcm_cleanup(struct hda_pcm_stream *hinfo,
*/ */
static int cmi9880_dig_playback_pcm_open(struct hda_pcm_stream *hinfo, static int cmi9880_dig_playback_pcm_open(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
return snd_hda_multi_out_dig_open(codec, &spec->multiout); return snd_hda_multi_out_dig_open(codec, &spec->multiout);
...@@ -490,7 +490,7 @@ static int cmi9880_dig_playback_pcm_open(struct hda_pcm_stream *hinfo, ...@@ -490,7 +490,7 @@ static int cmi9880_dig_playback_pcm_open(struct hda_pcm_stream *hinfo,
static int cmi9880_dig_playback_pcm_close(struct hda_pcm_stream *hinfo, static int cmi9880_dig_playback_pcm_close(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
return snd_hda_multi_out_dig_close(codec, &spec->multiout); return snd_hda_multi_out_dig_close(codec, &spec->multiout);
...@@ -503,7 +503,7 @@ static int cmi9880_capture_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -503,7 +503,7 @@ static int cmi9880_capture_pcm_prepare(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
...@@ -514,7 +514,7 @@ static int cmi9880_capture_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -514,7 +514,7 @@ static int cmi9880_capture_pcm_prepare(struct hda_pcm_stream *hinfo,
static int cmi9880_capture_pcm_cleanup(struct hda_pcm_stream *hinfo, static int cmi9880_capture_pcm_cleanup(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct cmi_spec *spec = codec->spec; struct cmi_spec *spec = codec->spec;
......
This diff is collapsed.
...@@ -95,8 +95,8 @@ struct si3054_spec { ...@@ -95,8 +95,8 @@ struct si3054_spec {
#define PRIVATE_REG(val) ((val>>16)&0xffff) #define PRIVATE_REG(val) ((val>>16)&0xffff)
#define PRIVATE_MASK(val) (val&0xffff) #define PRIVATE_MASK(val) (val&0xffff)
static int si3054_switch_info(snd_kcontrol_t *kcontrol, static int si3054_switch_info(struct snd_kcontrol *kcontrol,
snd_ctl_elem_info_t *uinfo) struct snd_ctl_elem_info *uinfo)
{ {
uinfo->type = SNDRV_CTL_ELEM_TYPE_BOOLEAN; uinfo->type = SNDRV_CTL_ELEM_TYPE_BOOLEAN;
uinfo->count = 1; uinfo->count = 1;
...@@ -105,8 +105,8 @@ static int si3054_switch_info(snd_kcontrol_t *kcontrol, ...@@ -105,8 +105,8 @@ static int si3054_switch_info(snd_kcontrol_t *kcontrol,
return 0; return 0;
} }
static int si3054_switch_get(snd_kcontrol_t *kcontrol, static int si3054_switch_get(struct snd_kcontrol *kcontrol,
snd_ctl_elem_value_t *uvalue) struct snd_ctl_elem_value *uvalue)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
u16 reg = PRIVATE_REG(kcontrol->private_value); u16 reg = PRIVATE_REG(kcontrol->private_value);
...@@ -115,8 +115,8 @@ static int si3054_switch_get(snd_kcontrol_t *kcontrol, ...@@ -115,8 +115,8 @@ static int si3054_switch_get(snd_kcontrol_t *kcontrol,
return 0; return 0;
} }
static int si3054_switch_put(snd_kcontrol_t *kcontrol, static int si3054_switch_put(struct snd_kcontrol *kcontrol,
snd_ctl_elem_value_t *uvalue) struct snd_ctl_elem_value *uvalue)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
u16 reg = PRIVATE_REG(kcontrol->private_value); u16 reg = PRIVATE_REG(kcontrol->private_value);
...@@ -138,7 +138,7 @@ static int si3054_switch_put(snd_kcontrol_t *kcontrol, ...@@ -138,7 +138,7 @@ static int si3054_switch_put(snd_kcontrol_t *kcontrol,
} }
static snd_kcontrol_new_t si3054_modem_mixer[] = { static struct snd_kcontrol_new si3054_modem_mixer[] = {
SI3054_KCONTROL("Off-hook Switch", SI3054_GPIO_CONTROL, SI3054_GPIO_OH), SI3054_KCONTROL("Off-hook Switch", SI3054_GPIO_CONTROL, SI3054_GPIO_OH),
SI3054_KCONTROL("Caller ID Switch", SI3054_GPIO_CONTROL, SI3054_GPIO_CID), SI3054_KCONTROL("Caller ID Switch", SI3054_GPIO_CONTROL, SI3054_GPIO_CID),
{} {}
...@@ -158,7 +158,7 @@ static int si3054_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -158,7 +158,7 @@ static int si3054_pcm_prepare(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
u16 val; u16 val;
...@@ -175,10 +175,10 @@ static int si3054_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -175,10 +175,10 @@ static int si3054_pcm_prepare(struct hda_pcm_stream *hinfo,
static int si3054_pcm_open(struct hda_pcm_stream *hinfo, static int si3054_pcm_open(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
static unsigned int rates[] = { 8000, 9600, 16000 }; static unsigned int rates[] = { 8000, 9600, 16000 };
static snd_pcm_hw_constraint_list_t hw_constraints_rates = { static struct snd_pcm_hw_constraint_list hw_constraints_rates = {
.count = ARRAY_SIZE(rates), .count = ARRAY_SIZE(rates),
.list = rates, .list = rates,
.mask = 0, .mask = 0,
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
#define STAC_UNSOL_ENABLE (AC_USRSP_EN | STAC_HP_EVENT) #define STAC_UNSOL_ENABLE (AC_USRSP_EN | STAC_HP_EVENT)
struct sigmatel_spec { struct sigmatel_spec {
snd_kcontrol_new_t *mixers[4]; struct snd_kcontrol_new *mixers[4];
unsigned int num_mixers; unsigned int num_mixers;
unsigned int surr_switch: 1; unsigned int surr_switch: 1;
...@@ -66,7 +66,7 @@ struct sigmatel_spec { ...@@ -66,7 +66,7 @@ struct sigmatel_spec {
/* codec specific stuff */ /* codec specific stuff */
struct hda_verb *init; struct hda_verb *init;
snd_kcontrol_new_t *mixer; struct snd_kcontrol_new *mixer;
/* capture source */ /* capture source */
struct hda_input_mux *input_mux; struct hda_input_mux *input_mux;
...@@ -81,7 +81,7 @@ struct sigmatel_spec { ...@@ -81,7 +81,7 @@ struct sigmatel_spec {
/* dynamic controls and input_mux */ /* dynamic controls and input_mux */
struct auto_pin_cfg autocfg; struct auto_pin_cfg autocfg;
unsigned int num_kctl_alloc, num_kctl_used; unsigned int num_kctl_alloc, num_kctl_used;
snd_kcontrol_new_t *kctl_alloc; struct snd_kcontrol_new *kctl_alloc;
struct hda_input_mux private_imux; struct hda_input_mux private_imux;
}; };
...@@ -116,14 +116,14 @@ static hda_nid_t stac922x_pin_nids[10] = { ...@@ -116,14 +116,14 @@ static hda_nid_t stac922x_pin_nids[10] = {
}; };
#endif #endif
static int stac92xx_mux_enum_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo) static int stac92xx_mux_enum_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
return snd_hda_input_mux_info(spec->input_mux, uinfo); return snd_hda_input_mux_info(spec->input_mux, uinfo);
} }
static int stac92xx_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int stac92xx_mux_enum_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
...@@ -133,7 +133,7 @@ static int stac92xx_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t ...@@ -133,7 +133,7 @@ static int stac92xx_mux_enum_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t
return 0; return 0;
} }
static int stac92xx_mux_enum_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int stac92xx_mux_enum_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
...@@ -157,7 +157,7 @@ static struct hda_verb stac922x_core_init[] = { ...@@ -157,7 +157,7 @@ static struct hda_verb stac922x_core_init[] = {
static int stac922x_channel_modes[3] = {2, 6, 8}; static int stac922x_channel_modes[3] = {2, 6, 8};
static int stac922x_ch_mode_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *uinfo) static int stac922x_ch_mode_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
...@@ -172,7 +172,7 @@ static int stac922x_ch_mode_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * ...@@ -172,7 +172,7 @@ static int stac922x_ch_mode_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t *
return 0; return 0;
} }
static int stac922x_ch_mode_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int stac922x_ch_mode_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
...@@ -181,7 +181,7 @@ static int stac922x_ch_mode_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t * ...@@ -181,7 +181,7 @@ static int stac922x_ch_mode_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *
return 0; return 0;
} }
static int stac922x_ch_mode_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *ucontrol) static int stac922x_ch_mode_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{ {
struct hda_codec *codec = snd_kcontrol_chip(kcontrol); struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
...@@ -198,7 +198,7 @@ static int stac922x_ch_mode_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t * ...@@ -198,7 +198,7 @@ static int stac922x_ch_mode_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *
return 1; return 1;
} }
static snd_kcontrol_new_t stac9200_mixer[] = { static struct snd_kcontrol_new stac9200_mixer[] = {
HDA_CODEC_VOLUME("Master Playback Volume", 0xb, 0, HDA_OUTPUT), HDA_CODEC_VOLUME("Master Playback Volume", 0xb, 0, HDA_OUTPUT),
HDA_CODEC_MUTE("Master Playback Switch", 0xb, 0, HDA_OUTPUT), HDA_CODEC_MUTE("Master Playback Switch", 0xb, 0, HDA_OUTPUT),
{ {
...@@ -216,7 +216,7 @@ static snd_kcontrol_new_t stac9200_mixer[] = { ...@@ -216,7 +216,7 @@ static snd_kcontrol_new_t stac9200_mixer[] = {
}; };
/* This needs to be generated dynamically based on sequence */ /* This needs to be generated dynamically based on sequence */
static snd_kcontrol_new_t stac922x_mixer[] = { static struct snd_kcontrol_new stac922x_mixer[] = {
{ {
.iface = SNDRV_CTL_ELEM_IFACE_MIXER, .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
.name = "Input Source", .name = "Input Source",
...@@ -231,7 +231,7 @@ static snd_kcontrol_new_t stac922x_mixer[] = { ...@@ -231,7 +231,7 @@ static snd_kcontrol_new_t stac922x_mixer[] = {
{ } /* end */ { } /* end */
}; };
static snd_kcontrol_new_t stac922x_ch_mode_mixer[] = { static struct snd_kcontrol_new stac922x_ch_mode_mixer[] = {
{ {
.iface = SNDRV_CTL_ELEM_IFACE_MIXER, .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
.name = "Channel Mode", .name = "Channel Mode",
...@@ -320,7 +320,7 @@ static void stac92xx_set_config_regs(struct hda_codec *codec) ...@@ -320,7 +320,7 @@ static void stac92xx_set_config_regs(struct hda_codec *codec)
*/ */
static int stac92xx_playback_pcm_open(struct hda_pcm_stream *hinfo, static int stac92xx_playback_pcm_open(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
return snd_hda_multi_out_analog_open(codec, &spec->multiout, substream); return snd_hda_multi_out_analog_open(codec, &spec->multiout, substream);
...@@ -333,7 +333,7 @@ static int stac92xx_playback_pcm_open(struct hda_pcm_stream *hinfo, ...@@ -333,7 +333,7 @@ static int stac92xx_playback_pcm_open(struct hda_pcm_stream *hinfo,
static int stac92xx_multi_out_analog_prepare(struct hda_codec *codec, struct hda_multi_out *mout, static int stac92xx_multi_out_analog_prepare(struct hda_codec *codec, struct hda_multi_out *mout,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
hda_nid_t *nids = mout->dac_nids; hda_nid_t *nids = mout->dac_nids;
int chs = substream->runtime->channels; int chs = substream->runtime->channels;
...@@ -380,7 +380,7 @@ static int stac92xx_playback_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -380,7 +380,7 @@ static int stac92xx_playback_pcm_prepare(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
return stac92xx_multi_out_analog_prepare(codec, &spec->multiout, stream_tag, return stac92xx_multi_out_analog_prepare(codec, &spec->multiout, stream_tag,
...@@ -389,7 +389,7 @@ static int stac92xx_playback_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -389,7 +389,7 @@ static int stac92xx_playback_pcm_prepare(struct hda_pcm_stream *hinfo,
static int stac92xx_playback_pcm_cleanup(struct hda_pcm_stream *hinfo, static int stac92xx_playback_pcm_cleanup(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
return snd_hda_multi_out_analog_cleanup(codec, &spec->multiout); return snd_hda_multi_out_analog_cleanup(codec, &spec->multiout);
...@@ -400,7 +400,7 @@ static int stac92xx_playback_pcm_cleanup(struct hda_pcm_stream *hinfo, ...@@ -400,7 +400,7 @@ static int stac92xx_playback_pcm_cleanup(struct hda_pcm_stream *hinfo,
*/ */
static int stac92xx_dig_playback_pcm_open(struct hda_pcm_stream *hinfo, static int stac92xx_dig_playback_pcm_open(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
return snd_hda_multi_out_dig_open(codec, &spec->multiout); return snd_hda_multi_out_dig_open(codec, &spec->multiout);
...@@ -408,7 +408,7 @@ static int stac92xx_dig_playback_pcm_open(struct hda_pcm_stream *hinfo, ...@@ -408,7 +408,7 @@ static int stac92xx_dig_playback_pcm_open(struct hda_pcm_stream *hinfo,
static int stac92xx_dig_playback_pcm_close(struct hda_pcm_stream *hinfo, static int stac92xx_dig_playback_pcm_close(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
return snd_hda_multi_out_dig_close(codec, &spec->multiout); return snd_hda_multi_out_dig_close(codec, &spec->multiout);
...@@ -422,7 +422,7 @@ static int stac92xx_capture_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -422,7 +422,7 @@ static int stac92xx_capture_pcm_prepare(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
unsigned int stream_tag, unsigned int stream_tag,
unsigned int format, unsigned int format,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
...@@ -433,7 +433,7 @@ static int stac92xx_capture_pcm_prepare(struct hda_pcm_stream *hinfo, ...@@ -433,7 +433,7 @@ static int stac92xx_capture_pcm_prepare(struct hda_pcm_stream *hinfo,
static int stac92xx_capture_pcm_cleanup(struct hda_pcm_stream *hinfo, static int stac92xx_capture_pcm_cleanup(struct hda_pcm_stream *hinfo,
struct hda_codec *codec, struct hda_codec *codec,
snd_pcm_substream_t *substream) struct snd_pcm_substream *substream)
{ {
struct sigmatel_spec *spec = codec->spec; struct sigmatel_spec *spec = codec->spec;
...@@ -516,7 +516,7 @@ enum { ...@@ -516,7 +516,7 @@ enum {
STAC_CTL_WIDGET_MUTE, STAC_CTL_WIDGET_MUTE,
}; };
static snd_kcontrol_new_t stac92xx_control_templates[] = { static struct snd_kcontrol_new stac92xx_control_templates[] = {
HDA_CODEC_VOLUME(NULL, 0, 0, 0), HDA_CODEC_VOLUME(NULL, 0, 0, 0),
HDA_CODEC_MUTE(NULL, 0, 0, 0), HDA_CODEC_MUTE(NULL, 0, 0, 0),
}; };
...@@ -524,7 +524,7 @@ static snd_kcontrol_new_t stac92xx_control_templates[] = { ...@@ -524,7 +524,7 @@ static snd_kcontrol_new_t stac92xx_control_templates[] = {
/* add dynamic controls */ /* add dynamic controls */
static int stac92xx_add_control(struct sigmatel_spec *spec, int type, const char *name, unsigned long val) static int stac92xx_add_control(struct sigmatel_spec *spec, int type, const char *name, unsigned long val)
{ {
snd_kcontrol_new_t *knew; struct snd_kcontrol_new *knew;
if (spec->num_kctl_used >= spec->num_kctl_alloc) { if (spec->num_kctl_used >= spec->num_kctl_alloc) {
int num = spec->num_kctl_alloc + NUM_CONTROL_ALLOC; int num = spec->num_kctl_alloc + NUM_CONTROL_ALLOC;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment