ALSA: hda - Fix initialization for HP 2011 notebooks

Fixes for HP 2011 notebooks: enable dock ports and disable BTL
initialization in the driver.

Signed-off-by: Vitaliy Kulikov <Vitaliy.Kulikov@idt.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

authored by Vitaliy Kulikov and committed by Takashi Iwai cbbf50b2 0f0714c5

+10 -43
+10 -43
sound/pci/hda/patch_sigmatel.c
··· 5333 5333 return 0; 5334 5334 } 5335 5335 5336 - static int stac92hd83xxx_set_system_btl_amp(struct hda_codec *codec) 5336 + static int hp_bnb2011_with_dock(struct hda_codec *codec) 5337 5337 { 5338 5338 if (codec->vendor_id != 0x111d7605 && 5339 5339 codec->vendor_id != 0x111d76d1) ··· 5348 5348 case 0x103c161d: 5349 5349 case 0x103c161e: 5350 5350 case 0x103c161f: 5351 - case 0x103c1620: 5352 - case 0x103c1621: 5353 - case 0x103c1622: 5354 - case 0x103c1623: 5355 5351 5356 5352 case 0x103c162a: 5357 5353 case 0x103c162b: ··· 5356 5360 case 0x103c1631: 5357 5361 5358 5362 case 0x103c1633: 5359 - 5363 + case 0x103c1634: 5360 5364 case 0x103c1635: 5361 - 5362 - case 0x103c164f: 5363 - 5364 - case 0x103c1676: 5365 - case 0x103c1677: 5366 - case 0x103c1678: 5367 - case 0x103c1679: 5368 - case 0x103c167a: 5369 - case 0x103c167b: 5370 - case 0x103c167c: 5371 - case 0x103c167d: 5372 - case 0x103c167e: 5373 - case 0x103c167f: 5374 - case 0x103c1680: 5375 - case 0x103c1681: 5376 - case 0x103c1682: 5377 - case 0x103c1683: 5378 - case 0x103c1684: 5379 - case 0x103c1685: 5380 - case 0x103c1686: 5381 - case 0x103c1687: 5382 - case 0x103c1688: 5383 - case 0x103c1689: 5384 - case 0x103c168a: 5385 - case 0x103c168b: 5386 - case 0x103c168c: 5387 - case 0x103c168d: 5388 - case 0x103c168e: 5389 - case 0x103c168f: 5390 - case 0x103c1690: 5391 - case 0x103c1691: 5392 - case 0x103c1692: 5393 5365 5394 5366 case 0x103c3587: 5395 5367 case 0x103c3588: ··· 5366 5402 5367 5403 case 0x103c3667: 5368 5404 case 0x103c3668: 5369 - /* set BTL amp level to 13.43dB for louder speaker output */ 5370 - return snd_hda_codec_write_cache(codec, codec->afg, 0, 5371 - 0x7F4, 0x14); 5405 + case 0x103c3669: 5406 + 5407 + return 1; 5372 5408 } 5373 5409 return 0; 5374 5410 } ··· 5383 5419 spec = kzalloc(sizeof(*spec), GFP_KERNEL); 5384 5420 if (spec == NULL) 5385 5421 return -ENOMEM; 5422 + 5423 + if (hp_bnb2011_with_dock(codec)) { 5424 + snd_hda_codec_set_pincfg(codec, 0xa, 0x2101201f); 5425 + snd_hda_codec_set_pincfg(codec, 0xf, 0x2181205e); 5426 + } 5386 5427 5387 5428 /* reset pin power-down; Windows may leave these bits after reboot */ 5388 5429 snd_hda_codec_write_cache(codec, codec->afg, 0, 0x7EC, 0); ··· 5514 5545 snd_hda_codec_write_cache(codec, 0xF, 0, 5515 5546 AC_VERB_SET_CONNECT_SEL, num_dacs); 5516 5547 } 5517 - 5518 - stac92hd83xxx_set_system_btl_amp(codec); 5519 5548 5520 5549 codec->proc_widget_hook = stac92hd_proc_hook; 5521 5550