Eu corro o Ubuntu 10.10 no meu Intel DG965RY. Minhas portas de áudio frontais não funcionam no Ubuntu, a traseira faz. Eu nunca consegui trabalhar antes quando eu tinha o Ubuntu 10.04, mas desta vez vou tentar novamente.
Meu codec é SigmaTel STAC9227
Minhas informações da ALSA são aqui .
Detalhes úteis:
!!ALSA Version
!!------------
Driver version: 1.0.23
Library version: 1.0.23
Utilities version: 1.0.23
!!Loaded ALSA modules
!!-------------------
snd_hda_intel
snd_hda_intel
Eu sei de algo que terei que alterar o modelo do meu módulo para fazer o conector de áudio frontal funcionar, mas não consegui encontrar uma linha relacionada ao modelo no meu arquivo de configuração do ALSA - /etc/modprobe.d/alsa-base .conf (eu consegui chegar a esse ponto no Ubuntu 10.04, pode ser que algo tenha mudado).
Como posso proceder daqui?
Editar:
Detalhes do módulo:
Module snd-hda-intel
--------------------
Module for Intel HD Audio (ICH6, ICH6M, ESB2, ICH7, ICH8, ICH9, ICH10,
PCH, SCH),
ATI SB450, SB600, R600, RS600, RS690, RS780, RV610, RV620,
RV630, RV635, RV670, RV770,
VIA VT8251/VT8237A,
SIS966, ULI M5461
[Multiple options for each card instance]
model - force the model name
position_fix - Fix DMA pointer (0 = auto, 1 = use LPIB, 2 = POSBUF)
probe_mask - Bitmask to probe codecs (default = -1, meaning all slots)
When the bit 8 (0x100) is set, the lower 8 bits are used
as the "fixed" codec slots; i.e. the driver probes the
slots regardless what hardware reports back
probe_only - Only probing and no codec initialization (default=off);
Useful to check the initial codec status for debugging
bdl_pos_adj - Specifies the DMA IRQ timing delay in samples.
Passing -1 will make the driver to choose the appropriate
value based on the controller chip.
patch - Specifies the early "patch" files to modify the HD-audio
setup before initializing the codecs. This option is
available only when CONFIG_SND_HDA_PATCH_LOADER=y is set.
See HD-Audio.txt for details.
beep_mode - Selects the beep registration mode (0=off, 1=on, 2=
dynamic registration via mute switch on/off); the default
value is set via CONFIG_SND_HDA_INPUT_BEEP_MODE kconfig.
[Single (global) options]
single_cmd - Use single immediate commands to communicate with
codecs (for debugging only)
enable_msi - Enable Message Signaled Interrupt (MSI) (default = off)
power_save - Automatic power-saving timeout (in second, 0 =
disable)
power_save_controller - Reset HD-audio controller in power-saving mode
(default = on)
This module supports multiple cards and autoprobe.
See Documentation/sound/alsa/HD-Audio.txt for more details about
HD-audio driver.
Each codec may have a model table for different configurations.
If your machine isn't listed there, the default (usually minimal)
configuration is set up. You can pass "model=<name>" option to
specify a certain model in such a case. There are different
models depending on the codec chip. The list of available models
is found in HD-Audio-Models.txt
The model name "genric" is treated as a special case. When this
model is given, the driver uses the generic codec parser without
"codec-patch". It's sometimes good for testing and debugging.
If the default configuration doesn't work and one of the above
matches with your device, report it together with alsa-info.sh
output (with --no-upload option) to kernel bugzilla or alsa-devel
ML (see the section "Links and Addresses").
power_save and power_save_controller options are for power-saving
mode. See powersave.txt for details.
Note 2: If you get click noises on output, try the module option
position_fix=1 or 2. position_fix=1 will use the SD_LPIB
register value without FIFO size correction as the current
DMA pointer. position_fix=2 will make the driver to use
the position buffer instead of reading SD_LPIB register.
(Usually SD_LPIB register is more accurate than the
position buffer.)
NB: If you get many "azx_get_response timeout" messages at
loading, it's likely a problem of interrupts (e.g. ACPI irq
routing). Try to boot with options like "pci=noacpi". Also, you
can try "single_cmd=1" module option. This will switch the
communication method between HDA controller and codecs to the
single immediate commands instead of CORB/RIRB. Basically, the
single command mode is provided only for BIOS, and you won't get
unsolicited events, too. But, at least, this works independently
from the irq. Remember this is a last resort, and should be
avoided as much as possible...
MORE NOTES ON "azx_get_response timeout" PROBLEMS:
On some hardwares, you may need to add a proper probe_mask option
to avoid the "azx_get_response timeout" problem above, instead.
This occurs when the access to non-existing or non-working codec slot
(likely a modem one) causes a stall of the communication via HD-audio
bus. You can see which codec slots are probed by enabling
CONFIG_SND_DEBUG_VERBOSE, or simply from the file name of the codec
proc files. Then limit the slots to probe by probe_mask option.
For example, probe_mask=1 means to probe only the first slot, and
probe_mask=4 means only the third slot.
The power-management is supported.
Modelos possíveis para o meu codec:
STAC9227/9228/9229/927x
=======================
ref Reference board
ref-no-jd Reference board without HP/Mic jack detection
3stack D965 3stack
5stack D965 5stack + SPDIF
5stack-no-fp D965 5stack without front panel
dell-3stack Dell Dimension E520
dell-bios Fixes with Dell BIOS setup
volknob Fixes with volume-knob widget 0x24
auto BIOS setup (default)
Infelizmente, não tenho muita ideia de usá-los.
Atualização:
Eu tentei todos os modelos listados para o meu codec, mas ainda não consegui fazê-lo funcionar.
options snd-hda-intel model=ref
options snd-hda-intel model=ref-no-jd
options snd-hda-intel model=3stack
options snd-hda-intel model=5stack
options snd-hda-intel model=5stack-no-fp
options snd-hda-intel model=dell-3stack
options snd-hda-intel model=dell-bios
options snd-hda-intel model=volknob
options snd-hda-intel model=auto
Eu tentei um por um colocando-o no final do arquivo de configuração
sudo gedit /etc/modprobe.d/alsa-base.conf
Após cada alteração, forço-recarregar alsa
sudo alsa force-reload