ALSA: hda: fix unregister device twice on ASoC driver
authorBard liao <yung-chuan.liao@linux.intel.com>
Sat, 27 Apr 2019 20:53:39 +0000 (04:53 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 31 May 2019 13:43:20 +0000 (06:43 -0700)
commitc13f2ccff5572b82c64aa2fc77781da9ea219cff
tree84c84c2d5c02401f01a2f4bf4587b701b2b3537b
parentea9e874b707bc511a41506cdf6ea6864b6e46338
ALSA: hda: fix unregister device twice on ASoC driver

[ Upstream commit 4d95c51776b2edb4d4ebcea00b6e5a1fe538ce66 ]

snd_hda_codec_device_new() is used by both legacy HDA and ASoC
driver. However, we will call snd_hdac_device_unregister() in
snd_hdac_ext_bus_device_remove() for ASoC device. This patch uses
the type flag in hdac_device struct to determine is it a ASoC device
or legacy HDA device and call snd_hdac_device_unregister() in
snd_hda_codec_dev_free() only if it is a legacy HDA device.

Signed-off-by: Bard liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/pci/hda/hda_codec.c