[alsa-devel] [RFC PATCH] Inverted internal mic

David Henningsson david.henningsson at canonical.com
Mon Jun 25 10:04:26 CEST 2012


On 06/23/2012 10:39 AM, Takashi Iwai wrote:
> At Fri, 22 Jun 2012 19:33:06 +0200,
> David Henningsson wrote:
>>
>> [1  <text/plain; ISO-8859-1 (7bit)>]
>> On 06/22/2012 05:37 PM, Takashi Iwai wrote:
>>> At Fri, 22 Jun 2012 17:27:51 +0200,
>>> David Henningsson wrote:
>>>>
>>>> On 06/22/2012 02:46 PM, Takashi Iwai wrote:
>>>>>     /*
>>>>> + * Inverted digital-mic handling
>>>>> + *
>>>>> + * First off, it's a bit tricky.  The "Inverted Internal Mic Capture Switch"
>>>>> + * gives the additional mute only to the right channel of the digital mic
>>>>> + * capture stream.  This is a workaround for avoiding the almost silence
>>>>> + * by summing the stereo stereo stream from some (known to be ForteMedia)
>>>>
>>>> Stereo stereo? It's "stereo" in stereo! :-)
>>>
>>> Yeah, quad channels.  Fixed now.
>>>
>>>>> + * digital mic unit.
>>>>> + *
>>>>> + * The logic is to call alc_inv_dmic_sync() after each action (possibly)
>>>>> + * modifying ADC amp.  When the mute flag is set, it mutes the R-channel
>>>>> + * without caching so that the cache can still keep the original value.
>>>>> + * The cached value is then restored when the flag is set off or any other
>>>>> + * than d-mic is used as the current input source.
>>>>
>>>> Ok, I get it now.
>>>>
>>>> There is a slight drawback with this (IMO a bit hacky) patch, and that
>>>> is that you can get a short signal spike on the right channel when you
>>>> turn "Capture Switch" on while "Inverted Capture" is off. Hopefully it
>>>> is not a practical problem.
>>>
>>> Right, I fully admit it's hacky :)
>>>
>>> A good thing by this is, however, that it doesn't touch other parts
>>> too intrusively but just wraps over it.
>>>
>>>> Thanks for looking at this long-standing problem :-)
>>>
>>> I'm going to commit it once after hearing the test with a real machine
>>> from Eliot.
>>
>> Hi,
>>
>> I'm adding the machines I know of in the patch attached (please commit
>> together with your patch).
>>
>> For users running Ubuntu 12.04 (I think Eliot does), I have also made a
>> dkms package for easy testing of these two patches, and I also asked
>> existing bug reporters to test it.
>>
>> https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1002978/+attachment/3200653/+files/alsa-hda-dkms_0.1_all.deb
>>
>> Happy weekend!
>>
>> --
>> David Henningsson, Canonical Ltd.
>> https://launchpad.net/~diwic
>> [2 0001-ALSA-hda-Add-inverted-mic-quirks-for-Asus-U41SV-Acer.patch <text/x-patch (7bit)>]
>> >From d4e041e6d5077b061eb99954e9d71a5ad5f8f4de Mon Sep 17 00:00:00 2001
>> From: David Henningsson <david.henningsson at canonical.com>
>> Date: Fri, 22 Jun 2012 19:12:10 +0200
>> Subject: [PATCH] ALSA: hda - Add inverted mic quirks for Asus U41SV, Acer
>>   1810TZ and AOD260
>>
>> These machines have inverted phase on right channel for their
>> internal mics.
>
> These are all ALC269, and we have already a workaround using the
> hardware COEF verb.  Could you check whether it works or not?
> There are variants for alc269, alc269vb and alc271.  One of them
> might match.

Do we really have coefs for alc269vb?
The ALC269VB_FIXUP_DMIC fixup looks like it's pins only, and I've 
confirmed that the alc269 verb does not work for alc269vb, so I assume 
that verb is alc269va only.

Am I missing something?


-- 
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic




More information about the Alsa-devel mailing list