I am working on Chromium and trying to get a machine with AD1983 to function correctly.
I'm on 3.14 kernel. My issue is that I need a way for CRAS (no pulse) to tell HDA driver to switch capture from Front mic to rear Line/Mic. The way alsamixer does it, but I want to add that functionality to Cras. Could you point my to which IOCTL to call or alsa API to look at?
You have to post the outpout of alsa-info.sh
It depend on the pin default of the rear jack is line in or mic
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/tree/Documentat...
- line_in_auto_switch (bool): enable/disable the line-in auto-switch feature; default false
- add_stereo_mix_input (bool): add the stereo mix (analog-loopback mix) to the input mux if available
- add_jack_modes (bool): add "xxx Jack Mode" enum controls to each I/O jack for allowing to change the headphone amp and mic bias VREF capabilities
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/pc...
Stereo mix was already added to those desktop using VIA or ADI codec when auto-mic is not enabled
Stereo mix also has input from DAC, line in and mic
node 0x14 Record Selector can also select input from mono mixer node 0xf (mono mix)
For those HDA codec with one ADC and most AC97 codecs
amixer -c0 cset "Capture Source" "Line"
Any reason to use codec specific ioctl since it won't work on other hda codec