[precise][SRU][PATCH] [Lenovo IdeaPad U300s, Conexant CX20590, Mic, Internal] Background noise or low volume (phase inversion)

Chris J Arges chris.j.arges at canonical.com
Thu Oct 18 19:09:10 UTC 2012


On 10/18/2012 01:39 PM, Herton Ronaldo Krzesinski wrote:
> On Wed, Jul 11, 2012 at 10:03:18AM -0500, Chris J Arges wrote:
>> BugLink: http://launchpad.net/bugs/903853
>>
>> Precise SRU Justification:
>>
>> Impact:
>> IdeaPad U300s's microphone is quiet/noisy.
>>
>> Fix:
>> These patches by David Henningsson in Quantal were backported to Precise.
>>
>> Testcase:
>> Using the IdeaPad U300s, try capturing audio using the microphone and
>> ensure it works properly.
>>
>> 2 Patches Attached.
>>
>> Thanks,
>> --chris j arges
> 
>>  static const struct snd_pci_quirk cxt5051_fixups[] = {
>>  	SND_PCI_QUIRK(0x17aa, 0x20f2, "Lenovo X200", CXT_PINCFG_LENOVO_X200),
>> +	SND_PCI_QUIRK(0x17aa, 0x3975, "Lenovo U300s", CXT_FIXUP_STEREO_DMIC),
>>  	{}
>>  };
> 
> FYI, I noticed a problem in this hunk when applying 3.2.32 stable
> update to Precise. The quirk should have gone to cxt5066_fixups array.
> Checking against the original report and seeing the first posted
> alsa-info, indeed that codec should fall in the 'default:' in case below on
> patch_conexant_auto, so the patch we applied had a problem.
> 
>>  
>> @@ -4441,10 +4503,10 @@ static int patch_conexant_auto(struct hda_codec *codec)
>>  		break;
>>  	case 0x14f15051:
>>  		add_cx5051_fake_mutes(codec);
>> -		apply_pin_fixup(codec, cxt5051_fixups, cxt_pincfg_tbl);
>> +		apply_fixup(codec, cxt5051_fixups, cxt_pincfg_tbl);
>>  		break;
>>  	default:
>> -		apply_pin_fixup(codec, cxt5066_fixups, cxt_pincfg_tbl);
>> +		apply_fixup(codec, cxt5066_fixups, cxt_pincfg_tbl);
>>  		break;
>>  	}
>>  
>>
> 
> Looking at bug 903853, it seems no one in the end tested, and I'm not
> sure how it was verified, but it shouldn't have worked at least for the
> original U300 reported there. So when applying 3.2.32 stable, I just
> fixed the code to match the correct 3.2.32 stable patch and upstream
> code. Fix commited in master-next.
> 

This was tested and verified by jpds in the public bug. And this is what
I went by when submitting this since he had the hardware. Thanks for
fixing this mistake.

--chris








More information about the kernel-team mailing list