svyatko, oldcpu, deano (in order of appearance)
thank you for your interest in my microphone/sound “opportunity”. I’ve been doing some reading, apart from following your published words and links, the following are my primary references so far:
https://www.kernel.org/doc/html/latest/sound/index.html
a little too low level for me, my C skills are many years behind me, but this reference does have some titbits I can use.
From the above documentation:
*/proc/asound/
the next are from the kernel source (after searching for “dual-codecs”):
*/usr/src/linux/Documentation/sound/hd-audio/models.rst
/usr/src/linux/Documentation/sound/hd-audio/notes.rst
/usr/*src/linux/sound/pci/hda/patch_realtek.c
(I note that the kernel documentation, the hd-audio notes and the patch reference from svyatko, are all by Takashi Iwai.)
The notes explain the use of the modprobe.d/50-sound.conf: options: model:
“The most common problem regarding the HD-audio driver is the
unsupported codec features or the mismatched device configuration.
Most of codec-specific code has several preset models, either to
override the BIOS setup or to provide more comprehensive features.”
“What model
option values are available depends on the codec chip.
Check your codec chip from the codec proc file (see “Codec Proc-File”
section below). It will show the vendor/product name of your codec
chip. Then, see Documentation/sound/hd-audio/models.rst file,
the section of HD-audio driver. You can find a list of codecs
and model
options belonging to each codec.”
Inspection of the patch_realtek.c code shows that “dual-codecs” does little more than rename a couple of pins/sound-channels – what else the patch may do has not yet been investigated.
From a pragmatic point of view, sound output is fine (my core priority), but sound input is also important and might be fixed by resolving some curiosities:
inability to make the PCH card index=0 when second card added
actual function of each of the alsamixer sound-channel labels
To that end, I intend to do a number of tests and review results from each subtest:
Test: no cards, single card, two cards
Sub-test: init 3, gnome, YaST
assumptions:
start point for all tests: either to (init) multi-user or graphical
all changes via reboot and runlevel: multi-user ie CLI
YaST → Hardware → Sound – changes created with no → Volume?
YaST → Hardware → Sound → Volume – changes created with no edit
use amixer commands before reboot to ensure sane control settings
outputs:
*/etc/modprobe/50-sound.conf
*/*proc/asound/ - various directories & files
various asound commands
any comments, observations, or other advice?
regards
stevetom