diff options
Diffstat (limited to 'sound/pci/hda/patch_via.c')
-rw-r--r-- | sound/pci/hda/patch_via.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_via.c b/sound/pci/hda/patch_via.c index 3467d0c23fe9..852939658ddb 100644 --- a/sound/pci/hda/patch_via.c +++ b/sound/pci/hda/patch_via.c | |||
@@ -1500,6 +1500,11 @@ static int via_build_controls(struct hda_codec *codec) | |||
1500 | analog_low_current_mode(codec); | 1500 | analog_low_current_mode(codec); |
1501 | 1501 | ||
1502 | via_free_kctls(codec); /* no longer needed */ | 1502 | via_free_kctls(codec); /* no longer needed */ |
1503 | |||
1504 | err = snd_hda_jack_add_kctls(codec, &spec->autocfg); | ||
1505 | if (err < 0) | ||
1506 | return err; | ||
1507 | |||
1503 | return 0; | 1508 | return 0; |
1504 | } | 1509 | } |
1505 | 1510 | ||
@@ -1722,6 +1727,7 @@ static void via_unsol_event(struct hda_codec *codec, | |||
1722 | via_hp_automute(codec); | 1727 | via_hp_automute(codec); |
1723 | else if (res == VIA_GPIO_EVENT) | 1728 | else if (res == VIA_GPIO_EVENT) |
1724 | via_gpio_control(codec); | 1729 | via_gpio_control(codec); |
1730 | snd_hda_jack_report_sync(codec); | ||
1725 | } | 1731 | } |
1726 | 1732 | ||
1727 | #ifdef CONFIG_PM | 1733 | #ifdef CONFIG_PM |
@@ -2771,6 +2777,7 @@ static int via_init(struct hda_codec *codec) | |||
2771 | via_auto_init_unsol_event(codec); | 2777 | via_auto_init_unsol_event(codec); |
2772 | 2778 | ||
2773 | via_hp_automute(codec); | 2779 | via_hp_automute(codec); |
2780 | snd_hda_jack_report_sync(codec); | ||
2774 | 2781 | ||
2775 | return 0; | 2782 | return 0; |
2776 | } | 2783 | } |