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

Paul Menzel paulepanter at users.sourceforge.net
Fri Feb 26 23:34:42 CET 2010


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.


Sorry, that I cannot help you further. Thanks,

Paul
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Dies ist ein digital signierter Nachrichtenteil
Url : http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20100226/c2aad7a7/attachment.sig 


More information about the Alsa-devel mailing list