1
0
Fork 0
alistair23-linux/sound
Wang Xingchao 99a2008d0b ALSA: hda - Add power-welll support for haswell HDA
For Intel Haswell chip, HDA controller and codec have
power well dependency from GPU side. This patch added support
to request/release power well in audio driver. Power save
feature should be enabled to get runtime power saving.

There's deadlock when request_module(i915) in azx_probe.
It looks like:
device_lock(audio pci device) -> azx_probe -> module_request
(or symbol_request) -> modprobe (userspace) -> i915 init ->
drm_pci_init -> pci_register_driver -> bus_add_driver -> driver_attach ->
which in turn tries all locks on pci bus, and when it tries the one on the
audio device, it will deadlock.

This patch introduce a work to store remaining probe stuff, and let
request_module run in safe work context.

Signed-off-by: Wang Xingchao <xingchao.wang@linux.intel.com>
Reviewed-by: Takashi Iwai <tiwai@suse.de>
Reviewed-by: Liam Girdwood <liam.r.girdwood@intel.com>
Reviewed-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-06-06 17:31:56 +02:00
..
aoa ALSA: snd-aoa: Add a layout entry for PowerBook6,5 2013-05-16 07:19:01 +02:00
arm ALSA: pxa27x: rename pxa27x_assert_ac97reset() 2013-01-08 11:30:08 +00:00
atmel ALSA: atmel: Remove redundant platform_set_drvdata() 2013-05-03 11:40:23 +02:00
core aio: don't include aio.h in sched.h 2013-05-07 20:16:25 -07:00
drivers ALSA: pcm_format_to_bits strong-typed conversion 2013-04-29 13:36:15 +02:00
firewire ALSA: firewire-speakers: remove __dev* attributes 2012-12-07 07:29:30 +01:00
i2c [media] v4l2: add const to argument of write-only s_tuner ioctl 2013-03-24 06:31:23 -03:00
isa ALSA: Remove the rest of __devinit* in comments 2012-12-07 07:41:56 +01:00
mips ALSA: mips/sgio2audio: Remove redundant platform_set_drvdata() 2013-05-06 10:45:54 +02:00
oss sound: Fix make allmodconfig on MIPS correctly 2013-05-13 15:54:19 +02:00
parisc ALSA: parisc/harmony: remove __dev* attributes 2012-12-07 07:30:11 +01:00
pci ALSA: hda - Add power-welll support for haswell HDA 2013-06-06 17:31:56 +02:00
pcmcia sound/pcmcia: use module_pcmcia_driver() in pcmcia drivers 2013-03-15 12:26:39 -07:00
ppc ALSA: ppc: remove __dev* attributes 2012-12-07 07:33:30 +01:00
sh ALSA: sh: remove __dev* attributes 2012-12-07 07:33:47 +01:00
soc Merge branch 'devm_no_resource_check' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2013-05-18 10:54:54 -07:00
sparc ALSA: sparc: remove __dev* attributes 2012-12-07 07:34:04 +01:00
spi ALSA: at73c213: Use dev_pm_ops 2013-04-11 11:58:12 +02:00
synth
usb ALSA: usb-audio: proc: use found syncmaxsize to determine feedback format 2013-05-17 08:05:34 +02:00
Kconfig sound: remove reference to feature-removal-schedule.txt 2012-12-17 17:15:12 -08:00
Makefile
ac97_bus.c
last.c ALSA: Remove the last mention of SNDRV_MAIN_OBJECT_FILE 2012-09-03 10:07:23 +02:00
sound_core.c ALSA: add/change some comments describing function return values 2013-03-12 08:32:53 +01:00
sound_firmware.c sound_firmware: don't bother with filp_close() 2013-04-09 15:16:32 -04:00