[alsa-devel] [Regression] With the new 2.6.33 when I plug in headphones, the speakers don't turn off anymore

giggz giggzounet at gmail.com
Sat Feb 27 14:35:23 CET 2010


Paul Menzel a écrit :
> Am Freitag, den 26.02.2010, 15:00 +0100 schrieb giggzounet:
>> Paul Menzel a écrit :
>>> Am Freitag, den 26.02.2010, 12:15 +0100 schrieb giggzounet:
>>>> [snip]
>>>>
>>>>>> I do not know why enable_msi is set to »-1« and not one since it should
>>>>>> be enabled by default now [1]. Could you try to load the sound module
>>>>>> with `enable_msi` set to `0` and report back your findings, please.
>>>>>>
>>>>>>         $ sudo modinfo snd-hda-intel
>>>>>>         […]
>>>>>>         parm:           enable_msi:Enable Message Signaled Interrupt (MSI) (int)
>>>>>>         […]
>>>>>>
>>>>> I have modified /etc/modprobe.d/sound with :
>>>>> snd-hda-intel index=0 enable_msi=0
>>>>>
>>>>> I attach the log of alsa-info.
>>>>>
>>>> I have forgotten to say that the problem is always here with
>>>> enable_msi=0
>>>>
>>>> [snip]
>>> That’s unfortunate. It would have been nice if this had fixed it.
>> I have take a look to the history of changes of hda_intel.f and found that :
>> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0a27fcfaaf61108d94f0377f91bed81b2dd35f52
>>
>> in the source I'm seeing a blacklist :
>> /*
>>  * white/black-list for enable_msi
>>  */
>> static struct snd_pci_quirk msi_black_list[] __devinitdata = {
>> 	SND_PCI_QUIRK(0x1043, 0x81f2, "ASUS", 0), /* Athlon64 X2 + nvidia */
>> 	SND_PCI_QUIRK(0x1043, 0x81f6, "ASUS", 0), /* nvidia */
>> 	{}
>> };
>>
>> And on my eeepc 1201n there is lot's of nvidia things...How can I know
>> if I'm on this blacklist or not ? ...sorry, I don't have a lot of
>> knowledge in C. But this could be explain why msi is not enabled by
>> default...
> 
> Just to make it clear. I am also stabbing in the dark here and do not
> know what those options actually do. I just saw the difference in the
> outputs of `alsa-info.sh`. Maybe you can try to load `snd-hda-intel`
> with `enable_msi=1` to enable it explicitly and try it? But I emphasize
> again that this MSI issue might not be related to your problem at all.
> 
> Anyway, looking at the output of `alsa-info.sh` which executes I think
> `lspci -vnn` we find your IDs. (I just looked through the file and
> “grepped” it just to include it here.
> 
>         $ grep "PCI Vendor" -A4 alsa-info_2.6.33.log 
>         !!Advanced information - PCI Vendor/Device/Susbsystem ID's
>         !!--------------------------------------------------------
>         
>         00:08.0 0403: 10de:0ac0 (rev b1)
>         	Subsystem: 1043:83ce
> 
> So those quirks you listed do not apply to your system. Searching for
> your device ID’s in the tree reveals the following.
> 
>         sound-2.6/sound/pci/hda$ grep -Ri 83ce *
>         patch_realtek.c:	SND_PCI_QUIRK(0x1043, 0x83ce, "ASUS P1005HA", ALC269_DMIC),
> 
> `ALC269_DMIC` turns up in `patch_realtek.c` in the following places.
> 
>         sound-2.6/sound/pci/hda$ more patch_realtek.c 
>         /*
>          * configuration and preset
>          */
>         static const char *alc269_models[ALC269_MODEL_LAST] = {
>                 [ALC269_BASIC]                  = "basic",
>                 [ALC269_QUANTA_FL1]             = "quanta",
>                 [ALC269_AMIC]                   = "laptop-amic",
>                 [ALC269_DMIC]                   = "laptop-dmic",
>                 [ALC269_FUJITSU]                = "fujitsu",
>                 [ALC269_LIFEBOOK]               = "lifebook",
>                 [ALC269_AUTO]                   = "auto",
>         };
>         […]
>                 [ALC269_DMIC] = {
>                         .mixers = { alc269_laptop_mixer },
>                         .cap_mixer =
>         alc269_laptop_digital_capture_mixer,
>                         .init_verbs = { alc269_init_verbs,
>                                         alc269_laptop_dmic_init_verbs },
>                         .num_dacs = ARRAY_SIZE(alc269_dac_nids),
>                         .dac_nids = alc269_dac_nids,
>                         .hp_nid = 0x03,
>                         .num_channel_mode = ARRAY_SIZE(alc269_modes),
>                         .channel_mode = alc269_modes,
>                         .unsol_event = alc269_laptop_unsol_event,
>                         .setup = alc269_laptop_dmic_setup,
>                         .init_hook = alc269_laptop_inithook,
>                 },
> 
> But I have not clue what that all does. I do not know if and when
> Takashi or some other dev will have time to answer, but until then you
> could ask on IRC or try to figure out if something changed there or in
> the function it calls. I think `git annotate` comes to your rescue here.
> 

THx for all these infos. that helps me to start!

> 
> Sorry, that I cannot help you further. Thanks,
> 

no problem! You already have helped me a lot! I will wait for the
developper. And take a look to the source.

Bye bye
Guillaume



More information about the Alsa-devel mailing list