[alsa-devel] get rid of controls with snd_ctl_remove
Harald Radke
harryrat at postnuklear.de
Fri Aug 29 14:54:42 CEST 2008
Hi there!
Please be patient with me, I am quite inexperienced with alsa programming, so
this might be a dumb question:
We have a WM8750 working in our PDA, the codec is working so far but I want to
remove some of the control since they aren't needed.
Instead of copying the wm8750.c file and adjusting it, I want to write another
module which basically get rid of those controls, something like:
[...]
static const char* unused_controls[] = {"AAAA", "BBBB,"CCCC"};
struct snd_kcontrol *ctl;
list_for_each_entry(ctl, &card->controls, list)
for(i=0; i < ARRAY_SIZE(unused_controls); i++)
if (!strcmp(unused_controls[i],ctl->id.name)) {
down_write(&card->controls_rwsem);
snd_ctl_remove(card,ctl);
up_write(&card->controls_rwsem);
break;
}
unfortunatly this doesn't work (module segfaults...."of course" you will say
*g*)
My question: is it possible at all and I am just not deep nuff in understanding
the sound system or do I have to adjust the original code?
Thx
Harry
More information about the Alsa-devel
mailing list