android_kernel_samsung_sm8650/sound
Takashi Iwai f4c482a4d0 ALSA: hda - Fix yet another race of vga_switcheroo registration
The recent fix for vga switcheroo race in commit 128960a9 opened yet
another race.  At the time the audio driver starts probing, user may
turn off D-GPU off.  But at this moment, the audio driver still
doesn't register the vga switcheroo client, thus the switching isn't
notified.  Then the hardware gets off out of sudden, resulting in
invalid reads and lots of "spurious response" error messages.

For solving this situation, the following changes have been done in
this patch:
- Move again vga switcheroo registration to the very early stage of
  the probing; this also requires to set pci drvdata properly before
  registration
- Introduce the completion to synchronize the driver probe at vga
  switcheroo callbacks; this assures that the whole probing finished
  before executing the callbacks

Reported-by: Daniel J Blueman <daniel@quora.org>
Tested-by: Daniel J Blueman <daniel@quora.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2012-12-04 16:00:40 +01:00
..
aoa sound/aoa: Adapt to new i2c probing scheme 2012-07-11 18:22:48 +10:00
arm ALSA: platform: Check CONFIG_PM_SLEEP instead of CONFIG_PM 2012-08-09 15:47:15 +02:00
atmel ALSA: sound/atmel/ac97c.c: fix error return code 2012-08-20 10:56:01 +02:00
core ALSA: pcm: Fix return code in pcm_native.c 2012-11-21 10:43:35 +01:00
drivers ALSA: vx: hard dependency on the standard fw loader 2012-11-22 17:48:01 +01:00
firewire ALSA: firewire: add Stanton SCS.1d/1m driver 2012-11-12 11:45:35 +01:00
i2c ALSA: Fix typo in drivers sound 2012-11-04 09:20:58 +01:00
isa Merge branch 'for-linus' into for-next 2012-10-30 11:08:25 +01:00
mips ALSA: Convert mips directory to module_platform_driver 2011-11-24 13:03:02 +01:00
oss sound: oss/sb_audio: cap value in sb201_audio_set_speed() 2012-11-18 10:24:49 +01:00
parisc
pci ALSA: hda - Fix yet another race of vga_switcheroo registration 2012-12-04 16:00:40 +01:00
pcmcia ALSA: pdaudiocf: Remove superfluous pm_message_t argument from suspend 2012-07-03 08:23:08 +02:00
ppc ALSA: sound/ppc/snd_ps3.c: fix error return code 2012-08-20 11:01:14 +02:00
sh ALSA: Add missing .owner=THIS_MODULE to platform_driver definitions 2012-07-02 17:50:05 +02:00
soc Merge remote-tracking branch 'asoc/topic/wm9090' into asoc-next 2012-12-02 13:35:31 +09:00
sparc sound: Remove unnecessary semicolon 2012-10-06 16:47:53 +02:00
spi ALSA: Convert at73c213 to module_spi_driver 2012-01-27 15:18:36 +01:00
synth sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed 2011-10-31 19:31:22 -04:00
usb ALSA: usb-audio: sync ep init fix for audioformat mismatch 2012-12-04 08:14:31 +01:00
ac97_bus.c
Kconfig um: switch to use of drivers/Kconfig 2011-11-02 14:15:41 +01:00
last.c ALSA: Remove the last mention of SNDRV_MAIN_OBJECT_FILE 2012-09-03 10:07:23 +02:00
Makefile
sound_core.c sound: allow the unit search until 256 in sound_core.c 2012-05-08 17:27:03 +02:00
sound_firmware.c sound_firmware: don't pass crap to filp_close() 2012-07-29 21:24:22 +04:00