On Jan 16, 2008 12:54 PM, Takashi Iwai tiwai@suse.de wrote:
I put the versoin 0.0.10b now. It includes the patches to the latest ALSA tree but no other changes. ftp://ftp.suse.com/pub/people/tiwai/hda-tools/hda-tools-0.0.10b.tar.bz2
(it might take some time to be exported to the outside.)
I see that, while in userspace, this is very similar in overall structure to the current kernelspace driver (the file layout being much more organized, however). Have you considered the option to have codec_config_preset for each model specified in a description file that is parsed and sent to the actual driver at runtime, instead of hard-wired inside the library? The parser itself doesn't seem hard to implement, especially if we use the C preprocessor to handle includes and macros. Handling of unsol events would be less flexible, but I don't know if there are many uses for it except muting/unmuting other channels when using external microphones and headphones (and these cases could be well covered by specifying what to mute/unmute in the description file).
The description file could also be very similar to the format currently used in the C source, just making it easier to parse and having one model per file (with common definitions included via preprocessor). I'm not sure how well this would fit for Sigmatel codecs, but seems to be apropriate for Realtek.