Bug 112781

Summary: radeon: f95429e "only init fbdev if we have connectors" breaks suspend on Clevo P170EM laptop
Product: Drivers Reporter: Christoph Haag (haagch.christoph)
Component: Video(DRI - non Intel)Assignee: drivers_video-dri
Status: RESOLVED CODE_FIX    
Severity: normal CC: alexdeucher, eugene.shalygin, szg00000
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 4.5-rc2 Tree: Mainline
Regression: No
Attachments: dmesg
fix

Description Christoph Haag 2016-02-21 13:17:01 UTC
Created attachment 204201 [details]
dmesg

On a Clevo P170EM with these GPUs:

00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Wimbledon XT [Radeon HD 7970M] (rev ff)

With rc2 suspend stopped working. It starts to suspend, turns off the display, etc., but then it fails to actually enter the suspend state. The power stays on and after a while the radeon GPU fan starts spinning up. There's nothing in the logs relating to the problem I could find.

I bisected to f95429eccc570dc45d589c327bfcfddcdc3e8228 and confirmed it with latest linux git (4.5-rc5) with this commit reverted - suspend works. Attached is a dmesg with this setup including one successful suspend and wake up.
Comment 1 Christoph Haag 2016-03-12 09:27:01 UTC
Uhm... bump?

With the latest linux git, I tried

+       radeon_fbdev_init(rdev);
        if (!list_empty(&rdev->ddev->mode_config.connector_list)) {
-               radeon_fbdev_init(rdev);
                drm_kms_helper_poll_init(rdev->ddev);
        }

and suspend works.
Comment 2 Alex Deucher 2016-03-14 14:36:28 UTC
Created attachment 209091 [details]
fix

The attached patch should fix it.
Comment 3 Christoph Haag 2016-03-14 16:10:25 UTC
4.5 with the patch seems to suspend without problems, thanks.
Comment 4 Christoph Haag 2016-03-27 08:23:25 UTC
e5f243bd2edd95c6cc1d90c1878f821068e83fba is in 4.6-rc1.

Thanks.