Matthew R. Hurne wrote:
Greetings,
I am running Linux on an MSI Crystal 945, which has a highly-integrated MS-7290 mainboard. This board includes an Intel ICH7 southbridge and a Realtek ALC262 codec. The board has integrated microphone, line-in and line-out jacks (labeled AUDIO-JK1 on the board). In addition, the unit has internal speakers. The speakers are connected to an MSI MS-4088; a small board which also hosts the unit's power button. The MS-4088 is connected to the MS-7290 mainboard with some bundled wires.
ALSA appears to accurately determine that the unit has an ICH7 and ALC262, and I am able to use alsamixer to adjust levels. I am also able to use aplay without any reported errors. However, no audio is heard from the units internal speakers. I have passed every possible model (as listed in ALSA-Configuration.txt) to the ALSA driver (snd-hda-intel), to no avail. For some of the models (or perhaps all; I unfortunately did not pay close attention to this detail), audio IS heard through headphones plugged in to the unit's line-out jack. However, the audio heard is at an extremely low volume, even if all the mixer levels are unmuted and set to 100%. Note that if the driver is loaded without specifying a model, or when specifying "model=auto", I see the following from dmesg:
hda_codec: Unknown model for ALC262, trying auto-probe from BIOS...
I have tried the following versions of ALSA: 1.0.14, 1.0.15, 1.0.16rc1. The unit is running Linux kernel version 2.6.15.7-kiosk-1; it is vanilla 2.6.15.7 patched for unionfs, squashfs and bootsplash.
I am attaching the contents of /proc/asound/card0/codec#0 and lspci -vv. I also have a graph generated by codecgraph, but won't attach it now since it will cause my message to be large enough to await moderator approval.
The version of GCC used to compile ALSA is 3.3.5:
root@kiosk:~# gcc -v Reading specs from /usr/lib/gcc-lib/i486-slackware-linux/3.3.5/specs Configured with: ../gcc-3.3.5/configure --prefix=/usr --enable-shared --enable-threads=posix --enable-__cxa_atexit --disable-checking --with-gnu-ld --verbose --target=i486-slackware-linux --host=i486-slackware-linux Thread model: posix gcc version 3.3.5
I would not be surprised if this is a board configuration the ALSA team has not yet dealt with. As far as I can tell, the MS-7290 was designed specifically for the Crystal 945 barebones unit, so its probably not in widespread use. Is there someone who would be willing to work with me to get this working? Just let me know what you need, and I'll do my best to provide it.
BTW, I did have to "hack" the alsa-driver 1.0.16rc1 source to get the various ALSA kernel modules to load (removed unresolved references to do_posix_clock_monotonic_gettime; I think tiwai's fix in include/adriver.h could be applied elsewhere, but I just removed the references altogether).
Bug reported: https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3725