ALSA: hda: Keep the controller initialization even if no codecs found
authorTakashi Iwai <tiwai@suse.de>
Mon, 13 Apr 2020 08:20:32 +0000 (10:20 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 13 Apr 2020 16:02:58 +0000 (18:02 +0200)
commit9479e75fca370a5220784f7596bf598c4dad0b9b
tree0d0ffee54e7e5e509715ae2ba6d61806622fbb3a
parent2393e7555b531a534152ffe7bfd1862cacedaacb
ALSA: hda: Keep the controller initialization even if no codecs found

Currently, when the HD-audio controller driver doesn't detect any
codecs, it tries to abort the probe.  But this abort happens at the
delayed probe, i.e. the primary probe call already returned success,
hence the driver is never unbound until user does so explicitly.
As a result, it may leave the HD-audio device in the running state
without the runtime PM.  More badly, if the device is a HD-audio bus
that is tied with a GPU, GPU cannot reach to the full power down and
consumes unnecessarily much power.

This patch changes the logic after no-codec situation; it continues
probing without the further codec initialization but keep the
controller driver running normally.

BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=207043
Tested-by: Roy Spliet <nouveau@spliet.org>
Link: https://lore.kernel.org/r/20200413082034.25166-5-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_intel.c