Lines Matching refs:lctl

104 static int snd_ctl_led_get(struct snd_ctl_led_ctl *lctl)
108 struct snd_kcontrol *kctl = lctl->kctl;
114 info.id.index += lctl->index_offset;
115 info.id.numid += lctl->index_offset;
141 struct snd_ctl_led_ctl *lctl;
154 list_for_each_entry(lctl, &led->controls, list) {
155 if (lctl->kctl == kctl && lctl->index_offset == ioff)
157 UPDATE_ROUTE(route, snd_ctl_led_get(lctl));
160 lctl = kzalloc(sizeof(*lctl), GFP_KERNEL);
161 if (lctl) {
162 lctl->card = card;
163 lctl->access = access;
164 lctl->kctl = kctl;
165 lctl->index_offset = ioff;
166 list_add(&lctl->list, &led->controls);
167 UPDATE_ROUTE(route, snd_ctl_led_get(lctl));
184 struct snd_ctl_led_ctl *lctl;
189 list_for_each_entry(lctl, controls, list)
190 if (lctl->kctl == kctl && lctl->index_offset == ioff)
191 return lctl;
199 struct snd_ctl_led_ctl *lctl;
203 lctl = snd_ctl_led_find(kctl, ioff);
204 if (lctl && (access == 0 || access != lctl->access)) {
205 ret = lctl->access;
206 list_del(&lctl->list);
207 kfree(lctl);
279 static void snd_ctl_led_ctl_destroy(struct snd_ctl_led_ctl *lctl)
281 list_del(&lctl->list);
282 kfree(lctl);
289 struct snd_ctl_led_ctl *lctl;
294 list_for_each_entry(lctl, &led->controls, list)
295 if (!card || lctl->card == card) {
296 snd_ctl_led_ctl_destroy(lctl);
306 struct snd_ctl_led_ctl *lctl;
319 list_for_each_entry(lctl, &led->controls, list)
320 if (lctl->card == card) {
321 vd = &lctl->kctl->vd[lctl->index_offset];
323 snd_ctl_led_ctl_destroy(lctl);
602 struct snd_ctl_led_ctl *lctl;
611 list_for_each_entry(lctl, &led_card->led->controls, list) {
612 if (lctl->card != card)
617 lctl->kctl->id.numid + lctl->index_offset);