aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorSteven Newbury <steve@snewbury.org.uk>2012-06-08 07:06:29 -0400
committerTakashi Iwai <tiwai@suse.de>2012-06-08 07:07:41 -0400
commit8393ec4a13889339bacfb8b038fb13716eef7a2b (patch)
tree6d19fa6f0dcea3661b10eb401c6760c5885a87e9 /sound
parent505cff00de9c303b95c204eb4544066e3e707911 (diff)
ALSA: hda - HDMI Audio init all connectors when VGA-switcheroo is off
When VGA_SWITCHEROO support is enabled hda_intel initialises the HDMI audio device on the current VGA device. When it's not enabled it only initialises the HDMI device on the default VGA adaptor, this means secondary cards get no audio support which is very unhelpful for multi-seat! With this patch, when SUPPORT_VGA_SWITCHEROO is disabled hda_intel initialises all HDMI audio devices, not just the default VGA. [minor optimizations by tiwai] Signed-off-by: Steven Newbury <steve@snewbury.org.uk> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/hda_intel.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index 5f0375fefc89..e172c5d6855a 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -2484,9 +2484,9 @@ static void azx_notifier_unregister(struct azx *chip)
2484static int DELAYED_INIT_MARK azx_first_init(struct azx *chip); 2484static int DELAYED_INIT_MARK azx_first_init(struct azx *chip);
2485static int DELAYED_INIT_MARK azx_probe_continue(struct azx *chip); 2485static int DELAYED_INIT_MARK azx_probe_continue(struct azx *chip);
2486 2486
2487#ifdef SUPPORT_VGA_SWITCHEROO
2487static struct pci_dev __devinit *get_bound_vga(struct pci_dev *pci); 2488static struct pci_dev __devinit *get_bound_vga(struct pci_dev *pci);
2488 2489
2489#ifdef SUPPORT_VGA_SWITCHEROO
2490static void azx_vs_set_state(struct pci_dev *pci, 2490static void azx_vs_set_state(struct pci_dev *pci,
2491 enum vga_switcheroo_state state) 2491 enum vga_switcheroo_state state)
2492{ 2492{
@@ -2578,6 +2578,7 @@ static int __devinit register_vga_switcheroo(struct azx *chip)
2578#else 2578#else
2579#define init_vga_switcheroo(chip) /* NOP */ 2579#define init_vga_switcheroo(chip) /* NOP */
2580#define register_vga_switcheroo(chip) 0 2580#define register_vga_switcheroo(chip) 0
2581#define check_hdmi_disabled(pci) false
2581#endif /* SUPPORT_VGA_SWITCHER */ 2582#endif /* SUPPORT_VGA_SWITCHER */
2582 2583
2583/* 2584/*
@@ -2638,6 +2639,7 @@ static int azx_dev_free(struct snd_device *device)
2638 return azx_free(device->device_data); 2639 return azx_free(device->device_data);
2639} 2640}
2640 2641
2642#ifdef SUPPORT_VGA_SWITCHEROO
2641/* 2643/*
2642 * Check of disabled HDMI controller by vga-switcheroo 2644 * Check of disabled HDMI controller by vga-switcheroo
2643 */ 2645 */
@@ -2676,6 +2678,7 @@ static bool __devinit check_hdmi_disabled(struct pci_dev *pci)
2676 } 2678 }
2677 return vga_inactive; 2679 return vga_inactive;
2678} 2680}
2681#endif /* SUPPORT_VGA_SWITCHEROO */
2679 2682
2680/* 2683/*
2681 * white/black-listing for position_fix 2684 * white/black-listing for position_fix