Home
last modified time | relevance | path

Searched refs:kctl (Results 1 – 25 of 91) sorted by relevance

1234

/Linux-v5.10/sound/core/
Dcontrol.c197 static int snd_ctl_new(struct snd_kcontrol **kctl, unsigned int count, in snd_ctl_new() argument
205 *kctl = kzalloc(struct_size(*kctl, vd, count), GFP_KERNEL); in snd_ctl_new()
206 if (!*kctl) in snd_ctl_new()
210 (*kctl)->vd[idx].access = access; in snd_ctl_new()
211 (*kctl)->vd[idx].owner = file; in snd_ctl_new()
213 (*kctl)->count = count; in snd_ctl_new()
232 struct snd_kcontrol *kctl; in snd_ctl_new1() local
255 err = snd_ctl_new(&kctl, count, access, NULL); in snd_ctl_new1()
260 kctl->id.iface = ncontrol->iface; in snd_ctl_new1()
261 kctl->id.device = ncontrol->device; in snd_ctl_new1()
[all …]
Dctljack.c65 struct snd_kcontrol *kctl; in snd_kctl_jack_new() local
67 kctl = snd_ctl_new1(&jack_detect_kctl, NULL); in snd_kctl_jack_new()
68 if (!kctl) in snd_kctl_jack_new()
71 jack_kctl_name_gen(kctl->id.name, name, sizeof(kctl->id.name)); in snd_kctl_jack_new()
72 kctl->id.index = get_available_index(card, kctl->id.name); in snd_kctl_jack_new()
73 kctl->private_value = 0; in snd_kctl_jack_new()
74 return kctl; in snd_kctl_jack_new()
78 struct snd_kcontrol *kctl, bool status) in snd_kctl_jack_report() argument
80 if (kctl->private_value == status) in snd_kctl_jack_report()
82 kctl->private_value = status; in snd_kctl_jack_report()
[all …]
Djack.c16 struct snd_kcontrol *kctl; member
59 snd_ctl_remove(card, jack_kctl->kctl); in snd_jack_dev_free()
112 static void snd_jack_kctl_private_free(struct snd_kcontrol *kctl) in snd_jack_kctl_private_free() argument
116 jack_kctl = kctl->private_data; in snd_jack_kctl_private_free()
130 struct snd_kcontrol *kctl; in snd_jack_kctl_new() local
134 kctl = snd_kctl_jack_new(name, card); in snd_jack_kctl_new()
135 if (!kctl) in snd_jack_kctl_new()
138 err = snd_ctl_add(card, kctl); in snd_jack_kctl_new()
147 jack_kctl->kctl = kctl; in snd_jack_kctl_new()
150 kctl->private_data = jack_kctl; in snd_jack_kctl_new()
[all …]
Dvmaster.c53 struct snd_kcontrol *kctl; /* original kcontrol pointer */ member
263 srec->kctl = follower; in _snd_ctl_add_follower()
363 struct snd_kcontrol *sctl = follower->kctl; in master_free()
396 struct snd_kcontrol *kctl; in snd_ctl_make_virtual_master() local
409 kctl = snd_ctl_new1(&knew, master); in snd_ctl_make_virtual_master()
410 if (!kctl) { in snd_ctl_make_virtual_master()
415 kctl->info = master_info; in snd_ctl_make_virtual_master()
416 kctl->get = master_get; in snd_ctl_make_virtual_master()
417 kctl->put = master_put; in snd_ctl_make_virtual_master()
418 kctl->private_free = master_free; in snd_ctl_make_virtual_master()
[all …]
/Linux-v5.10/include/sound/
Dcontrol.h145 static inline unsigned int snd_ctl_get_ioffnum(struct snd_kcontrol *kctl, struct snd_ctl_elem_id *i… in snd_ctl_get_ioffnum() argument
147 unsigned int ioff = id->numid - kctl->id.numid; in snd_ctl_get_ioffnum()
148 return array_index_nospec(ioff, kctl->count); in snd_ctl_get_ioffnum()
151 static inline unsigned int snd_ctl_get_ioffidx(struct snd_kcontrol *kctl, struct snd_ctl_elem_id *i… in snd_ctl_get_ioffidx() argument
153 unsigned int ioff = id->index - kctl->id.index; in snd_ctl_get_ioffidx()
154 return array_index_nospec(ioff, kctl->count); in snd_ctl_get_ioffidx()
157 static inline unsigned int snd_ctl_get_ioff(struct snd_kcontrol *kctl, struct snd_ctl_elem_id *id) in snd_ctl_get_ioff() argument
160 return snd_ctl_get_ioffnum(kctl, id); in snd_ctl_get_ioff()
162 return snd_ctl_get_ioffidx(kctl, id); in snd_ctl_get_ioff()
245 int snd_ctl_add_vmaster_hook(struct snd_kcontrol *kctl,
[all …]
/Linux-v5.10/sound/usb/
Dmixer.c585 struct snd_kcontrol *kctl, in snd_usb_mixer_add_list() argument
591 while (snd_ctl_find_id(mixer->chip->card, &kctl->id)) in snd_usb_mixer_add_list()
592 kctl->id.index++; in snd_usb_mixer_add_list()
593 err = snd_ctl_add(mixer->chip->card, kctl); in snd_usb_mixer_add_list()
599 list->kctl = kctl; in snd_usb_mixer_add_list()
1067 void snd_usb_mixer_elem_free(struct snd_kcontrol *kctl) in snd_usb_mixer_elem_free() argument
1069 usb_mixer_elem_info_free(kctl->private_data); in snd_usb_mixer_elem_free()
1070 kctl->private_data = NULL; in snd_usb_mixer_elem_free()
1079 struct snd_kcontrol *kctl) in volume_control_quirks() argument
1085 if (strcmp(kctl->id.name, "Effect Duration") == 0) { in volume_control_quirks()
[all …]
Dmixer_s1810c.c335 struct snd_kcontrol *kctl, u32 *state) in snd_s1810c_get_switch_state() argument
340 u32 ctl_idx = (u32) (kctl->private_value & 0xFF); in snd_s1810c_get_switch_state()
362 struct snd_kcontrol *kctl) in snd_s1810c_set_switch_state() argument
366 u32 pval = (u32) kctl->private_value; in snd_s1810c_set_switch_state()
380 snd_s1810c_switch_get(struct snd_kcontrol *kctl, in snd_s1810c_switch_get() argument
383 struct usb_mixer_elem_list *list = snd_kcontrol_chip(kctl); in snd_s1810c_switch_get()
386 u32 pval = (u32) kctl->private_value; in snd_s1810c_switch_get()
392 ret = snd_s1810c_get_switch_state(mixer, kctl, &state); in snd_s1810c_switch_get()
411 snd_s1810c_switch_set(struct snd_kcontrol *kctl, in snd_s1810c_switch_set() argument
414 struct usb_mixer_elem_list *list = snd_kcontrol_chip(kctl); in snd_s1810c_switch_set()
[all …]
Dmixer_scarlett.c232 static int scarlett_ctl_switch_info(struct snd_kcontrol *kctl, in scarlett_ctl_switch_info() argument
235 struct usb_mixer_elem_info *elem = kctl->private_data; in scarlett_ctl_switch_info()
244 static int scarlett_ctl_switch_get(struct snd_kcontrol *kctl, in scarlett_ctl_switch_get() argument
247 struct usb_mixer_elem_info *elem = kctl->private_data; in scarlett_ctl_switch_get()
262 static int scarlett_ctl_switch_put(struct snd_kcontrol *kctl, in scarlett_ctl_switch_put() argument
265 struct usb_mixer_elem_info *elem = kctl->private_data; in scarlett_ctl_switch_put()
300 static int scarlett_ctl_info(struct snd_kcontrol *kctl, in scarlett_ctl_info() argument
303 struct usb_mixer_elem_info *elem = kctl->private_data; in scarlett_ctl_info()
308 uinfo->value.integer.max = (int)kctl->private_value + in scarlett_ctl_info()
314 static int scarlett_ctl_get(struct snd_kcontrol *kctl, in scarlett_ctl_get() argument
[all …]
Dmixer_scarlett_gen2.c944 struct snd_kcontrol *kctl; in scarlett2_add_new_ctl() local
957 kctl = snd_ctl_new1(ncontrol, elem); in scarlett2_add_new_ctl()
958 if (!kctl) { in scarlett2_add_new_ctl()
962 kctl->private_free = snd_usb_mixer_elem_free; in scarlett2_add_new_ctl()
964 strlcpy(kctl->id.name, name, sizeof(kctl->id.name)); in scarlett2_add_new_ctl()
966 err = snd_usb_mixer_add_control(&elem->head, kctl); in scarlett2_add_new_ctl()
971 *kctl_return = kctl; in scarlett2_add_new_ctl()
1011 static int scarlett2_volume_ctl_info(struct snd_kcontrol *kctl, in scarlett2_volume_ctl_info() argument
1014 struct usb_mixer_elem_info *elem = kctl->private_data; in scarlett2_volume_ctl_info()
1024 static int scarlett2_master_volume_ctl_get(struct snd_kcontrol *kctl, in scarlett2_master_volume_ctl_get() argument
[all …]
Dmixer_quirks.c64 struct snd_kcontrol *kctl; in snd_create_std_mono_ctl_offset() local
86 kctl = snd_ctl_new1(snd_usb_feature_unit_ctl, cval); in snd_create_std_mono_ctl_offset()
87 if (!kctl) { in snd_create_std_mono_ctl_offset()
93 snprintf(kctl->id.name, sizeof(kctl->id.name), name); in snd_create_std_mono_ctl_offset()
94 kctl->private_free = snd_usb_mixer_elem_free; in snd_create_std_mono_ctl_offset()
98 kctl->tlv.c = tlv_callback; in snd_create_std_mono_ctl_offset()
99 kctl->vd[0].access |= in snd_create_std_mono_ctl_offset()
104 return snd_usb_mixer_add_control(&cval->head, kctl); in snd_create_std_mono_ctl_offset()
145 struct snd_kcontrol *kctl; in add_single_ctl_with_resume() local
155 kctl = snd_ctl_new1(knew, list); in add_single_ctl_with_resume()
[all …]
Dmixer.h67 struct snd_kcontrol *kctl; member
108 struct snd_kcontrol *kctl,
111 #define snd_usb_mixer_add_control(list, kctl) \ argument
112 snd_usb_mixer_add_list(list, kctl, true)
132 extern void snd_usb_mixer_elem_free(struct snd_kcontrol *kctl);
/Linux-v5.10/sound/firewire/bebob/
Dbebob_maudio.c355 static int special_clk_ctl_info(struct snd_kcontrol *kctl, in special_clk_ctl_info() argument
367 static int special_clk_ctl_get(struct snd_kcontrol *kctl, in special_clk_ctl_get() argument
370 struct snd_bebob *bebob = snd_kcontrol_chip(kctl); in special_clk_ctl_get()
375 static int special_clk_ctl_put(struct snd_kcontrol *kctl, in special_clk_ctl_put() argument
378 struct snd_bebob *bebob = snd_kcontrol_chip(kctl); in special_clk_ctl_put()
409 static int special_sync_ctl_info(struct snd_kcontrol *kctl, in special_sync_ctl_info() argument
419 static int special_sync_ctl_get(struct snd_kcontrol *kctl, in special_sync_ctl_get() argument
422 struct snd_bebob *bebob = snd_kcontrol_chip(kctl); in special_sync_ctl_get()
444 static int special_dig_in_iface_ctl_info(struct snd_kcontrol *kctl, in special_dig_in_iface_ctl_info() argument
451 static int special_dig_in_iface_ctl_get(struct snd_kcontrol *kctl, in special_dig_in_iface_ctl_get() argument
[all …]
/Linux-v5.10/sound/pci/cs5535audio/
Dcs5535audio_olpc.c61 static int olpc_dc_info(struct snd_kcontrol *kctl, in olpc_dc_info() argument
71 static int olpc_dc_get(struct snd_kcontrol *kctl, struct snd_ctl_elem_value *v) in olpc_dc_get() argument
77 static int olpc_dc_put(struct snd_kcontrol *kctl, struct snd_ctl_elem_value *v) in olpc_dc_put() argument
79 struct cs5535audio *cs5535au = snd_kcontrol_chip(kctl); in olpc_dc_put()
85 static int olpc_mic_info(struct snd_kcontrol *kctl, in olpc_mic_info() argument
95 static int olpc_mic_get(struct snd_kcontrol *kctl, struct snd_ctl_elem_value *v) in olpc_mic_get() argument
97 struct cs5535audio *cs5535au = snd_kcontrol_chip(kctl); in olpc_mic_get()
106 static int olpc_mic_put(struct snd_kcontrol *kctl, struct snd_ctl_elem_value *v) in olpc_mic_put() argument
108 struct cs5535audio *cs5535au = snd_kcontrol_chip(kctl); in olpc_mic_put()
/Linux-v5.10/sound/core/oss/
Dmixer_oss.c514 struct snd_kcontrol *kctl; in snd_mixer_oss_get_volume1_vol() local
520 if ((kctl = snd_ctl_find_numid(card, numid)) == NULL) { in snd_mixer_oss_get_volume1_vol()
528 if (kctl->info(kctl, uinfo)) in snd_mixer_oss_get_volume1_vol()
530 if (kctl->get(kctl, uctl)) in snd_mixer_oss_get_volume1_vol()
552 struct snd_kcontrol *kctl; in snd_mixer_oss_get_volume1_sw() local
558 if ((kctl = snd_ctl_find_numid(card, numid)) == NULL) { in snd_mixer_oss_get_volume1_sw()
566 if (kctl->info(kctl, uinfo)) in snd_mixer_oss_get_volume1_sw()
568 if (kctl->get(kctl, uctl)) in snd_mixer_oss_get_volume1_sw()
616 struct snd_kcontrol *kctl; in snd_mixer_oss_put_volume1_vol() local
623 if ((kctl = snd_ctl_find_numid(card, numid)) == NULL) { in snd_mixer_oss_put_volume1_vol()
[all …]
/Linux-v5.10/sound/pci/au88x0/
Dau88x0_pcm.c115 struct snd_kcontrol *kctl, int activate) in vortex_notify_pcm_vol_change() argument
118 kctl->vd[0].access &= ~SNDRV_CTL_ELEM_ACCESS_INACTIVE; in vortex_notify_pcm_vol_change()
120 kctl->vd[0].access |= SNDRV_CTL_ELEM_ACCESS_INACTIVE; in vortex_notify_pcm_vol_change()
122 SNDRV_CTL_EVENT_MASK_INFO, &(kctl->id)); in vortex_notify_pcm_vol_change()
246 chip->pcm_vol[substream->number].kctl, 1); in snd_vortex_pcm_hw_params()
281 chip->pcm_vol[substream->number].kctl, in snd_vortex_pcm_hw_free()
598 struct snd_kcontrol *kctl; in snd_vortex_new_pcm() local
658 kctl = snd_ctl_new1(&snd_vortex_mixer_spdif[i], chip); in snd_vortex_new_pcm()
659 if (!kctl) in snd_vortex_new_pcm()
661 if ((err = snd_ctl_add(chip->card, kctl)) < 0) in snd_vortex_new_pcm()
[all …]
/Linux-v5.10/sound/drivers/
Dmts64.c430 static int snd_mts64_ctl_smpte_switch_get(struct snd_kcontrol* kctl, in snd_mts64_ctl_smpte_switch_get() argument
433 struct mts64 *mts = snd_kcontrol_chip(kctl); in snd_mts64_ctl_smpte_switch_get()
444 static int snd_mts64_ctl_smpte_switch_put(struct snd_kcontrol* kctl, in snd_mts64_ctl_smpte_switch_put() argument
447 struct mts64 *mts = snd_kcontrol_chip(kctl); in snd_mts64_ctl_smpte_switch_put()
482 static int snd_mts64_ctl_smpte_time_h_info(struct snd_kcontrol *kctl, in snd_mts64_ctl_smpte_time_h_info() argument
492 static int snd_mts64_ctl_smpte_time_f_info(struct snd_kcontrol *kctl, in snd_mts64_ctl_smpte_time_f_info() argument
502 static int snd_mts64_ctl_smpte_time_info(struct snd_kcontrol *kctl, in snd_mts64_ctl_smpte_time_info() argument
512 static int snd_mts64_ctl_smpte_time_get(struct snd_kcontrol *kctl, in snd_mts64_ctl_smpte_time_get() argument
515 struct mts64 *mts = snd_kcontrol_chip(kctl); in snd_mts64_ctl_smpte_time_get()
516 int idx = kctl->private_value; in snd_mts64_ctl_smpte_time_get()
[all …]
/Linux-v5.10/sound/pci/hda/
Dhda_codec.c1662 struct snd_kcontrol *kctl) in snd_hda_ctl_add() argument
1668 if (kctl->id.subdevice & HDA_SUBDEV_AMP_FLAG) { in snd_hda_ctl_add()
1671 nid = get_amp_nid_(kctl->private_value); in snd_hda_ctl_add()
1673 if ((kctl->id.subdevice & HDA_SUBDEV_NID_FLAG) != 0 && nid == 0) in snd_hda_ctl_add()
1674 nid = kctl->id.subdevice & 0xffff; in snd_hda_ctl_add()
1675 if (kctl->id.subdevice & (HDA_SUBDEV_NID_FLAG|HDA_SUBDEV_AMP_FLAG)) in snd_hda_ctl_add()
1676 kctl->id.subdevice = 0; in snd_hda_ctl_add()
1677 err = snd_ctl_add(codec->card, kctl); in snd_hda_ctl_add()
1683 item->kctl = kctl; in snd_hda_ctl_add()
1701 int snd_hda_add_nid(struct hda_codec *codec, struct snd_kcontrol *kctl, in snd_hda_add_nid() argument
[all …]
/Linux-v5.10/sound/soc/intel/atom/
Dsst-atom-controls.c307 bc = (void *)algo->kctl->private_value; in sst_find_and_send_pipe_algo()
310 algo->kctl->id.name, pipe); in sst_find_and_send_pipe_algo()
608 struct snd_kcontrol *kctl = gain->kctl; in sst_set_pipe_gain() local
610 dev_dbg(&drv->pdev->dev, "control name=%s\n", kctl->id.name); in sst_set_pipe_gain()
611 mc = (void *)kctl->private_value; in sst_set_pipe_gain()
1392 static int sst_fill_module_list(struct snd_kcontrol *kctl, in sst_fill_module_list() argument
1405 struct sst_gain_mixer_control *mc = (void *)kctl->private_value; in sst_fill_module_list()
1408 module->kctl = kctl; in sst_fill_module_list()
1411 struct sst_algo_control *bc = (void *)kctl->private_value; in sst_fill_module_list()
1414 module->kctl = kctl; in sst_fill_module_list()
[all …]
/Linux-v5.10/sound/pci/ac97/
Dac97_codec.c680 static void set_inv_eapd(struct snd_ac97 *ac97, struct snd_kcontrol *kctl) in set_inv_eapd() argument
682 kctl->private_value = AC97_SINGLE_VALUE(AC97_POWERDOWN, 15, 1, 0); in set_inv_eapd()
1171 struct snd_kcontrol *kctl; in snd_ac97_cmute_new_stereo() local
1192 kctl = snd_ctl_new1(&tmp, ac97); in snd_ac97_cmute_new_stereo()
1198 kctl = snd_ctl_new1(&tmp, ac97); in snd_ac97_cmute_new_stereo()
1200 err = snd_ctl_add(card, kctl); in snd_ac97_cmute_new_stereo()
1227 static void set_tlv_db_scale(struct snd_kcontrol *kctl, const unsigned int *tlv) in set_tlv_db_scale() argument
1229 kctl->tlv.p = tlv; in set_tlv_db_scale()
1231 kctl->vd[0].access |= SNDRV_CTL_ELEM_ACCESS_TLV_READ; in set_tlv_db_scale()
1241 struct snd_kcontrol *kctl; in snd_ac97_cvol_new() local
[all …]
/Linux-v5.10/sound/soc/
Dsoc-card.c33 struct snd_kcontrol *kctl; in snd_soc_card_get_kcontrol() local
38 list_for_each_entry(kctl, &card->controls, list) in snd_soc_card_get_kcontrol()
39 if (!strncmp(kctl->id.name, name, sizeof(kctl->id.name))) in snd_soc_card_get_kcontrol()
40 return kctl; in snd_soc_card_get_kcontrol()
/Linux-v5.10/sound/pci/emu10k1/
Demumixer.c1767 struct snd_kcontrol *kctl = ctl_find(card, src); in rename_ctl() local
1768 if (kctl) { in rename_ctl()
1769 strcpy(kctl->id.name, dst); in rename_ctl()
1779 struct snd_kcontrol *kctl; in snd_emu10k1_mixer() local
1994 if ((kctl = emu->ctl_send_routing = snd_ctl_new1(&snd_emu10k1_send_routing_control, emu)) == NULL) in snd_emu10k1_mixer()
1996 kctl->id.device = pcm_device; in snd_emu10k1_mixer()
1997 if ((err = snd_ctl_add(card, kctl))) in snd_emu10k1_mixer()
1999 if ((kctl = emu->ctl_send_volume = snd_ctl_new1(&snd_emu10k1_send_volume_control, emu)) == NULL) in snd_emu10k1_mixer()
2001 kctl->id.device = pcm_device; in snd_emu10k1_mixer()
2002 if ((err = snd_ctl_add(card, kctl))) in snd_emu10k1_mixer()
[all …]
/Linux-v5.10/sound/soc/tegra/
Dtegra210_ahub.c17 static int tegra_ahub_get_value_enum(struct snd_kcontrol *kctl, in tegra_ahub_get_value_enum() argument
20 struct snd_soc_component *cmpnt = snd_soc_dapm_kcontrol_component(kctl); in tegra_ahub_get_value_enum()
22 struct soc_enum *e = (struct soc_enum *)kctl->private_value; in tegra_ahub_get_value_enum()
54 static int tegra_ahub_put_value_enum(struct snd_kcontrol *kctl, in tegra_ahub_put_value_enum() argument
57 struct snd_soc_component *cmpnt = snd_soc_dapm_kcontrol_component(kctl); in tegra_ahub_put_value_enum()
59 struct snd_soc_dapm_context *dapm = snd_soc_dapm_kcontrol_dapm(kctl); in tegra_ahub_put_value_enum()
60 struct soc_enum *e = (struct soc_enum *)kctl->private_value; in tegra_ahub_put_value_enum()
85 update[i].kcontrol = kctl; in tegra_ahub_put_value_enum()
90 snd_soc_dapm_mux_update_power(dapm, kctl, item[0], e, in tegra_ahub_put_value_enum()
/Linux-v5.10/sound/soc/intel/catpt/
Dpcm.c401 struct snd_kcontrol *pos, *kctl = NULL; in catpt_dai_apply_usettings() local
427 kctl = pos; in catpt_dai_apply_usettings()
431 if (!kctl) in catpt_dai_apply_usettings()
435 return catpt_set_dspvol(cdev, id, (long *)kctl->private_value); in catpt_dai_apply_usettings()
436 ret = catpt_ipc_mute_loopback(cdev, id, *(bool *)kctl->private_value); in catpt_dai_apply_usettings()
959 static int catpt_offload1_volume_get(struct snd_kcontrol *kctl, in catpt_offload1_volume_get() argument
962 return catpt_stream_volume_get(kctl, uctl, CATPT_PIN_ID_OFFLOAD1); in catpt_offload1_volume_get()
965 static int catpt_offload1_volume_put(struct snd_kcontrol *kctl, in catpt_offload1_volume_put() argument
968 return catpt_stream_volume_put(kctl, uctl, CATPT_PIN_ID_OFFLOAD1); in catpt_offload1_volume_put()
971 static int catpt_offload2_volume_get(struct snd_kcontrol *kctl, in catpt_offload2_volume_get() argument
[all …]
/Linux-v5.10/drivers/staging/greybus/
Daudio_helper.c162 struct snd_kcontrol *kctl; in gbaudio_remove_controls() local
174 kctl = snd_ctl_find_id(card, &id); in gbaudio_remove_controls()
175 if (!kctl) { in gbaudio_remove_controls()
179 err = snd_ctl_remove(card, kctl); in gbaudio_remove_controls()
/Linux-v5.10/sound/i2c/other/
Dak4114.c461 struct snd_kcontrol *kctl; in snd_ak4114_build() local
470 kctl = snd_ctl_new1(&snd_ak4114_iec958_controls[idx], ak4114); in snd_ak4114_build()
471 if (kctl == NULL) in snd_ak4114_build()
473 if (strstr(kctl->id.name, "Playback")) { in snd_ak4114_build()
475 snd_ctl_free_one(kctl); in snd_ak4114_build()
479 kctl->id.device = ply_substream->pcm->device; in snd_ak4114_build()
480 kctl->id.subdevice = ply_substream->number; in snd_ak4114_build()
482 kctl->id.device = cap_substream->pcm->device; in snd_ak4114_build()
483 kctl->id.subdevice = cap_substream->number; in snd_ak4114_build()
485 err = snd_ctl_add(ak4114->card, kctl); in snd_ak4114_build()
[all …]

1234