summaryrefslogtreecommitdiff
path: root/sound/pci/hda/hda_generic.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2012-12-19 14:38:33 +0100
committerTakashi Iwai <tiwai@suse.de>2013-01-12 08:30:56 +0100
commit12c93df60ccf926f8798723f97f9f45175fce85b (patch)
tree2a03a0b5ed24b2466e075dffd9e4cf88fa5306db /sound/pci/hda/hda_generic.c
parent731dc3019c7b9fa7a787f9b0a74e94638eee3fe1 (diff)
downloadlwn-12c93df60ccf926f8798723f97f9f45175fce85b.tar.gz
lwn-12c93df60ccf926f8798723f97f9f45175fce85b.zip
ALSA: hda - Export snd_hda_gen_add_kctl()
It may be used in other codec drivers, so let it free. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_generic.c')
-rw-r--r--sound/pci/hda/hda_generic.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/sound/pci/hda/hda_generic.c b/sound/pci/hda/hda_generic.c
index 31c5677e6210..49e968c8140b 100644
--- a/sound/pci/hda/hda_generic.c
+++ b/sound/pci/hda/hda_generic.c
@@ -43,9 +43,9 @@ int snd_hda_gen_spec_init(struct hda_gen_spec *spec)
}
EXPORT_SYMBOL_HDA(snd_hda_gen_spec_init);
-static struct snd_kcontrol_new *
-add_kctl(struct hda_gen_spec *spec, const char *name,
- const struct snd_kcontrol_new *temp)
+struct snd_kcontrol_new *
+snd_hda_gen_add_kctl(struct hda_gen_spec *spec, const char *name,
+ const struct snd_kcontrol_new *temp)
{
struct snd_kcontrol_new *knew = snd_array_new(&spec->kctls);
if (!knew)
@@ -59,6 +59,7 @@ add_kctl(struct hda_gen_spec *spec, const char *name,
return NULL;
return knew;
}
+EXPORT_SYMBOL_HDA(snd_hda_gen_add_kctl);
static void free_kctls(struct hda_gen_spec *spec)
{
@@ -548,7 +549,7 @@ static int add_control(struct hda_gen_spec *spec, int type, const char *name,
{
struct snd_kcontrol_new *knew;
- knew = add_kctl(spec, name, &control_templates[type]);
+ knew = snd_hda_gen_add_kctl(spec, name, &control_templates[type]);
if (!knew)
return -ENOMEM;
knew->index = cidx;
@@ -1527,7 +1528,7 @@ static int create_multi_channel_mode(struct hda_codec *codec)
struct hda_gen_spec *spec = codec->spec;
if (spec->multi_ios > 0) {
- if (!add_kctl(spec, NULL, &channel_mode_enum))
+ if (!snd_hda_gen_add_kctl(spec, NULL, &channel_mode_enum))
return -ENOMEM;
}
return 0;
@@ -2086,7 +2087,7 @@ static int create_bind_cap_vol_ctl(struct hda_codec *codec, int idx,
struct snd_kcontrol_new *knew;
if (vol_ctl) {
- knew = add_kctl(spec, NULL, &cap_vol_temp);
+ knew = snd_hda_gen_add_kctl(spec, NULL, &cap_vol_temp);
if (!knew)
return -ENOMEM;
knew->index = idx;
@@ -2094,7 +2095,7 @@ static int create_bind_cap_vol_ctl(struct hda_codec *codec, int idx,
knew->subdevice = HDA_SUBDEV_AMP_FLAG;
}
if (sw_ctl) {
- knew = add_kctl(spec, NULL, &cap_sw_temp);
+ knew = snd_hda_gen_add_kctl(spec, NULL, &cap_sw_temp);
if (!knew)
return -ENOMEM;
knew->index = idx;
@@ -2171,7 +2172,7 @@ static int create_capture_mixers(struct hda_codec *codec)
if (!spec->auto_mic && imux->num_items > 1) {
struct snd_kcontrol_new *knew;
- knew = add_kctl(spec, NULL, &cap_src_temp);
+ knew = snd_hda_gen_add_kctl(spec, NULL, &cap_src_temp);
if (!knew)
return -ENOMEM;
knew->count = nums;
@@ -2592,7 +2593,7 @@ static int add_automute_mode_enum(struct hda_codec *codec)
{
struct hda_gen_spec *spec = codec->spec;
- if (!add_kctl(spec, NULL, &automute_mode_enum))
+ if (!snd_hda_gen_add_kctl(spec, NULL, &automute_mode_enum))
return -ENOMEM;
return 0;
}