Skip to content

Commit

Permalink
ALSA: hda/realtek - Support Dell headset mode for ALC256
Browse files Browse the repository at this point in the history
Dell new platform of ALC256 audio codec.
Support headset mode for Dell ALC256 platform.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Kailang Yang authored and Takashi Iwai committed Apr 4, 2015
1 parent e42391c commit 7081adf
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions sound/pci/hda/patch_realtek.c
Original file line number Diff line number Diff line change
Expand Up @@ -3607,6 +3607,7 @@ static void alc_headset_mode_unplugged(struct hda_codec *codec)

switch (codec->vendor_id) {
case 0x10ec0255:
case 0x10ec0256:
alc_process_coef_fw(codec, coef0255);
break;
case 0x10ec0233:
Expand Down Expand Up @@ -3662,6 +3663,7 @@ static void alc_headset_mode_mic_in(struct hda_codec *codec, hda_nid_t hp_pin,

switch (codec->vendor_id) {
case 0x10ec0255:
case 0x10ec0256:
alc_write_coef_idx(codec, 0x45, 0xc489);
snd_hda_set_pin_ctl_cache(codec, hp_pin, 0);
alc_process_coef_fw(codec, coef0255);
Expand Down Expand Up @@ -3731,6 +3733,7 @@ static void alc_headset_mode_default(struct hda_codec *codec)

switch (codec->vendor_id) {
case 0x10ec0255:
case 0x10ec0256:
alc_process_coef_fw(codec, coef0255);
break;
case 0x10ec0233:
Expand Down Expand Up @@ -3785,6 +3788,7 @@ static void alc_headset_mode_ctia(struct hda_codec *codec)

switch (codec->vendor_id) {
case 0x10ec0255:
case 0x10ec0256:
alc_process_coef_fw(codec, coef0255);
break;
case 0x10ec0233:
Expand Down Expand Up @@ -3839,6 +3843,7 @@ static void alc_headset_mode_omtp(struct hda_codec *codec)

switch (codec->vendor_id) {
case 0x10ec0255:
case 0x10ec0256:
alc_process_coef_fw(codec, coef0255);
break;
case 0x10ec0233:
Expand Down Expand Up @@ -3884,6 +3889,7 @@ static void alc_determine_headset_type(struct hda_codec *codec)

switch (codec->vendor_id) {
case 0x10ec0255:
case 0x10ec0256:
alc_process_coef_fw(codec, coef0255);
msleep(300);
val = alc_read_coef_idx(codec, 0x46);
Expand Down Expand Up @@ -5217,6 +5223,16 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = {
{0x17, 0x40000000},
{0x1d, 0x40700001},
{0x21, 0x02211050}),
SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE,
{0x12, 0x90a60140},
{0x13, 0x40000000},
{0x14, 0x90170110},
{0x19, 0x411111f0},
{0x1a, 0x411111f0},
{0x1b, 0x411111f0},
{0x1d, 0x40700001},
{0x1e, 0x411111f0},
{0x21, 0x02211020}),
SND_HDA_PIN_QUIRK(0x10ec0280, 0x103c, "HP", ALC280_FIXUP_HP_GPIO4,
{0x12, 0x90a60130},
{0x13, 0x40000000},
Expand Down

0 comments on commit 7081adf

Please sign in to comment.