Bug 65811

Summary: AMD 7970M (PowerXpress) power management not functioning properly when using Xrandr to offload rendering
Product: Drivers Reporter: Jack (jack)
Component: Video(DRI - non Intel)Assignee: drivers_video-dri
Status: NEW ---    
Severity: normal CC: alexdeucher
Priority: P1    
Hardware: x86-64   
OS: Linux   
Kernel Version: 3.13-rc1 Subsystem:
Regression: No Bisected commit-id:

Description Jack 2013-11-25 20:36:05 UTC
rc1 appears to have solved my issues of X not starting or crashing when starting, which I ran into when using the DRM patches on 3.12. However I've run into another issue:

When I start my laptop, if I do not immediately offload rendering to the discrete Radeon card (xrandr --setprovideroffloadsink radeon Intel) the state in vgaswitcheroo will change to 'DynOff', and xrandr --listproviders will no longer report the radeon as a potentially offload source

Conversely, if I *do* --setprovideroffloadsink to the radeon within a few seconds after X starts, the state in vgaswitcheroo changes to DynPwr and never actually turns off (laptop behaves as if runpm was not enabled at all).
Comment 1 Jack 2013-11-25 20:38:48 UTC
Only kernel option I have set is `radeon.runpm=1`, not sure if this is needed in 3.13 or if it even matters that I have it.
Comment 2 Jack 2013-11-25 20:46:06 UTC
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]

Linux localhost 3.13.0-1-00085-g7e3528c-dirty #1 SMP PREEMPT Sun Nov 24 17:38:54 CST 2013 x86_64 GNU/Linux

xf86-video-ati-git 3103.d571d6a-1
xf86-video-intel-git 7529.b14228f-1
Comment 3 Alex Deucher 2013-11-26 13:43:21 UTC
Please attach your xorg log and dmesg output.
Comment 4 Alex Deucher 2013-11-26 13:44:53 UTC
If you boot with radeon.runpm=0, are you still able to manually enable/disable the radeon card with vgaswitcheroo?  If not, can you bisect what broke that?
Comment 5 Alex Deucher 2013-11-26 19:56:30 UTC
This looks like a duplicate of bug 65761.
Comment 6 Jack 2013-11-26 20:46:53 UTC
I'll try with runpm=0 in a moment, will also try reverting commit bbd34fcdd1b201e996235731a7c98fd5197d9e51 as mentioned in 65761 and see if that does anything shiny.

I noticed that in bug 65671 his system crashes, however using linux-git (specifically the AUR package) my system runs fine, it just seems to ignore runpm entirely.
Comment 7 Jack 2013-11-26 21:15:02 UTC
running the kernel with radeon.runpm=0 allows me to successfully disable the discrete card with `echo OFF > /sys/kernel/debug/vgaswitcheroo/switch`

[root@localhost linux-git]# cat /sys/kernel/debug/vgaswitcheroo/switch 
0:DIS: :Off:0000:01:00.0
1:IGD:+:Pwr:0000:00:02.0
[root@localhost linux-git]# 

I should have more tests (and some logs) later this evening -- didn't have a clone of the kernel repo and 5mbps internet at the relatives makes for a lengthy download ;P