Lines Matching refs:kctl
1704 struct snd_kcontrol *kctl) in snd_hda_ctl_add() argument
1710 if (kctl->id.subdevice & HDA_SUBDEV_AMP_FLAG) { in snd_hda_ctl_add()
1713 nid = get_amp_nid_(kctl->private_value); in snd_hda_ctl_add()
1715 if ((kctl->id.subdevice & HDA_SUBDEV_NID_FLAG) != 0 && nid == 0) in snd_hda_ctl_add()
1716 nid = kctl->id.subdevice & 0xffff; in snd_hda_ctl_add()
1717 if (kctl->id.subdevice & (HDA_SUBDEV_NID_FLAG|HDA_SUBDEV_AMP_FLAG)) in snd_hda_ctl_add()
1718 kctl->id.subdevice = 0; in snd_hda_ctl_add()
1719 err = snd_ctl_add(codec->card, kctl); in snd_hda_ctl_add()
1725 item->kctl = kctl; in snd_hda_ctl_add()
1743 int snd_hda_add_nid(struct hda_codec *codec, struct snd_kcontrol *kctl, in snd_hda_add_nid() argument
1752 item->kctl = kctl; in snd_hda_add_nid()
1758 kctl->id.name, kctl->id.index, index); in snd_hda_add_nid()
1774 snd_ctl_remove(codec->card, items[i].kctl); in snd_hda_ctls_clear()
1870 struct snd_kcontrol *sctl = items[i].kctl; in map_followers()
1899 static int put_kctl_with_value(struct snd_kcontrol *kctl, int val) in put_kctl_with_value() argument
1907 kctl->put(kctl, ucontrol); in put_kctl_with_value()
1919 struct snd_kcontrol *kctl, in init_follower_0dB() argument
1928 if (kctl->vd[0].access & SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK) { in init_follower_0dB()
1929 if (kctl->tlv.c != snd_hda_mixer_amp_tlv) { in init_follower_0dB()
1932 kctl->id.name, kctl->id.index); in init_follower_0dB()
1935 get_ctl_amp_tlv(kctl, _tlv); in init_follower_0dB()
1937 } else if (kctl->vd[0].access & SNDRV_CTL_ELEM_ACCESS_TLV_READ) in init_follower_0dB()
1938 tlv = kctl->tlv.p; in init_follower_0dB()
1966 struct snd_kcontrol *kctl, in init_follower_unmute() argument
2003 struct snd_kcontrol *kctl; in __snd_hda_add_vmaster() local
2014 kctl = snd_ctl_make_virtual_master(name, tlv); in __snd_hda_add_vmaster()
2015 if (!kctl) in __snd_hda_add_vmaster()
2017 kctl->vd[0].access |= access; in __snd_hda_add_vmaster()
2018 err = snd_hda_ctl_add(codec, 0, kctl); in __snd_hda_add_vmaster()
2022 err = map_followers(codec, followers, suffix, add_follower, kctl); in __snd_hda_add_vmaster()
2027 put_kctl_with_value(kctl, 0); in __snd_hda_add_vmaster()
2033 snd_ctl_apply_vmaster_followers(kctl, in __snd_hda_add_vmaster()
2039 *ctl_ret = kctl; in __snd_hda_add_vmaster()
2446 struct snd_kcontrol *kctl; in snd_hda_create_dig_out_ctls() local
2461 kctl = find_mixer_ctl(codec, dig_mix->name, 0, 0); in snd_hda_create_dig_out_ctls()
2462 if (!kctl) in snd_hda_create_dig_out_ctls()
2464 kctl->id.index = spdif_index; in snd_hda_create_dig_out_ctls()
2480 kctl = snd_ctl_new1(dig_mix, codec); in snd_hda_create_dig_out_ctls()
2481 if (!kctl) in snd_hda_create_dig_out_ctls()
2483 kctl->id.index = idx; in snd_hda_create_dig_out_ctls()
2484 kctl->private_value = codec->spdif_out.used - 1; in snd_hda_create_dig_out_ctls()
2485 err = snd_hda_ctl_add(codec, associated_nid, kctl); in snd_hda_create_dig_out_ctls()
2600 struct snd_kcontrol *kctl; in snd_hda_create_spdif_share_sw() local
2605 kctl = snd_ctl_new1(&spdif_share_sw, mout); in snd_hda_create_spdif_share_sw()
2606 if (!kctl) in snd_hda_create_spdif_share_sw()
2609 return snd_hda_ctl_add(codec, mout->dig_out_nid, kctl); in snd_hda_create_spdif_share_sw()
2696 struct snd_kcontrol *kctl; in snd_hda_create_spdif_in_ctls() local
2706 kctl = snd_ctl_new1(dig_mix, codec); in snd_hda_create_spdif_in_ctls()
2707 if (!kctl) in snd_hda_create_spdif_in_ctls()
2709 kctl->private_value = nid; in snd_hda_create_spdif_in_ctls()
2710 err = snd_hda_ctl_add(codec, nid, kctl); in snd_hda_create_spdif_in_ctls()
3384 struct snd_kcontrol *kctl; in snd_hda_add_new_ctls() local
3389 kctl = snd_ctl_new1(knew, codec); in snd_hda_add_new_ctls()
3390 if (!kctl) in snd_hda_add_new_ctls()
3398 kctl->id.device = addr; in snd_hda_add_new_ctls()
3400 kctl->id.index = idx; in snd_hda_add_new_ctls()
3401 err = snd_hda_ctl_add(codec, 0, kctl); in snd_hda_add_new_ctls()