kernel-fxtec-pro1x/sound/hda
Rander Wang 3e1600cc10 ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled
[ Upstream commit 13774d81f38538c5fa2924bdcdfa509155480fa6 ]

In snd_hdac_device_init pm_runtime_set_active is called to
increase child_count in parent device. But when it is failed
to build connection with GPU for one case that integrated
graphic gpu is disabled, snd_hdac_ext_bus_device_exit will be
invoked to clean up a HD-audio extended codec base device. At
this time the child_count of parent is not decreased, which
makes parent device can't get suspended.

This patch calls pm_runtime_set_suspended to decrease child_count
in parent device in snd_hdac_device_exit to match with
snd_hdac_device_init. pm_runtime_set_suspended can make sure that
it will not decrease child_count if the device is already suspended.

Signed-off-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20200902154218.1440441-1-kai.vehmanen@linux.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-09-17 13:45:26 +02:00
..
ext ALSA: hda: do not override bus codec_mask in link_get() 2020-03-11 14:14:47 +01:00
array.c ALSA: hda: Fix krealloc() with __GFP_ZERO usage 2016-08-03 15:17:22 +02:00
hda_bus_type.c ALSA: hda - Advertise MODALIAS in uevent 2015-10-20 10:15:53 +02:00
hdac_bus.c ALSA: hda: Fix potential race at unregistration and unsol events 2017-06-20 07:53:57 +02:00
hdac_component.c ALSA: hda: Make audio component support more generic 2018-07-17 22:25:48 +02:00
hdac_controller.c Revert "ALSA: hda: Flush interrupts on disabling" 2019-11-06 13:06:31 +01:00
hdac_device.c ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled 2020-09-17 13:45:26 +02:00
hdac_i915.c ALSA: hda: Fix 1-minute detection delay when i915 module is not available 2019-08-06 19:06:54 +02:00
hdac_regmap.c ALSA: hda - Use a macro for snd_array iteration loops 2018-04-24 13:41:53 +02:00
hdac_stream.c ALSA: hda: Proper endian notations for BDL pointers 2018-07-27 09:06:01 +02:00
hdac_sysfs.c ASoC: Updates for v4.15 2017-11-13 15:45:57 +01:00
hdmi_chmap.c ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs 2020-02-28 16:38:43 +01:00
Kconfig ALSA: hda: Make audio component support more generic 2018-07-17 22:25:48 +02:00
local.h ASoC: Updates for v4.15 2017-11-13 15:45:57 +01:00
Makefile ALSA: hda: Make audio component support more generic 2018-07-17 22:25:48 +02:00
trace.c ALSA: hda - Re-add tracepoints to HD-audio core driver 2015-03-23 13:17:58 +01:00
trace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00