Bug 79561 - some alsa driver on H97/Z97 preventing system from suspending
Summary: some alsa driver on H97/Z97 preventing system from suspending
Status: RESOLVED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA) (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Jaroslav Kysela
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-06 17:30 UTC by Yuri K
Modified: 2014-07-15 13:25 UTC (History)
1 user (show)

See Also:
Kernel Version: 3.16.0-rc3
Subsystem:
Regression: No
Bisected commit-id:


Attachments
lscpi output (21.93 KB, text/plain)
2014-07-06 17:30 UTC, Yuri K
Details
kernel config with modules built-in, that cause the bugreport messages (93.43 KB, application/octet-stream)
2014-07-06 18:00 UTC, Yuri K
Details
Test fix patch (1.49 KB, patch)
2014-07-07 08:12 UTC, Takashi Iwai
Details | Diff

Description Yuri K 2014-07-06 17:30:38 UTC
Created attachment 142181 [details]
lscpi output

Hi.

I've got a mobo on H97 and it doesn't suspend. I disabled Alsa section altogether in kernel config and it beautifully started working again, so I guess I should report here.

Basically, some part of either snd_hda_intel or hda-i915 is preventing kernel from going to sleep.

This works:
echo freezer > /sys/power/pm_test
echo mem > /sys/power/state

This switches off screen ("monitor going to sleep"), but it keeps PC running:

echo devices > /sys/power/pm_test
echo mem > /sys/power/state

Without display, I'm not able to see what's going on ;)
Cold shutdown is the only exit path from this state.

Here's what I see during the boot:
=========================================
Jul  6 19:27:19 yu kernel: hda-i915: get_power symbol get fail
Jul  6 19:27:19 yu kernel: snd_hda_intel 0000:00:03.0: Error request power-well from i915
=========================================

Tell me what else do you need from me, I'm gonna do that. I've also got a cat, if that's relevant.

Thanks.
Comment 1 Yuri K 2014-07-06 18:00:28 UTC
Created attachment 142191 [details]
kernel config with modules built-in, that cause the bugreport messages

You know what guys. I just compiled sound modules as modules and not built into kernel and now full hibernate cycle is working beautifully. Not only that, but those "power-well" symbol and messages are gone now.
Comment 2 Takashi Iwai 2014-07-07 08:12:10 UTC
Yeah, this must be the incomplete dependency.  We didn't put a hard-dependency in Kconfig between i915 and HD-audio because it's specific to Haswell/Broadwell.

Through a quick look at the code, the bug must be the PM callback being called even though the probe failed.  Since the probe is done in a workqueue, the probe failure isn't handled as a fatal error, thus the PM handle may still remain.

Could you check the patch below with the old config (HD-audio built-in and i915 module)?
Comment 3 Takashi Iwai 2014-07-07 08:12:35 UTC
Created attachment 142231 [details]
Test fix patch
Comment 4 Takashi Iwai 2014-07-15 13:25:58 UTC
I could reproduce the problem by myself and confirmed that the patch works.
It's submitted and merged to sound git tree now.

Note You need to log in before you can comment on or make changes to this bug.