Bug 27272
Summary: | After resume of S4 overlay stays active on Pineview | ||
---|---|---|---|
Product: | Drivers | Reporter: | Matthias Hopf (mat) |
Component: | Video(DRI - Intel) | Assignee: | drivers_video-dri-intel (drivers_video-dri-intel) |
Status: | CLOSED CODE_FIX | ||
Severity: | high | CC: | chris, eric, florian, rjw, sndirsch, tiwai |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.38-rc1 | Subsystem: | |
Regression: | Yes | Bisected commit-id: | |
Attachments: |
Patch fixing this regression
Revised patch for 2.6.37 |
Note that the patch above doesn't apply / work alone with 2.6.37. But similar fixes (checking crtc->active as well) in intel_display.c makes working on 2.6.37, too. The problem is obviously that DPMS isn't set up properly at S3 resume. A saner fix would be to clear up intel_crtc->dpms and active flags somehow so that the next dpms call takes real action. (In reply to comment #1) > The problem is obviously that DPMS isn't set up properly at S3 resume. Grr, of course, I meant S4 resume. (In reply to comment #1) > The problem is obviously that DPMS isn't set up properly at S3 resume. A > saner > fix would be to clear up intel_crtc->dpms and active flags somehow so that > the > next dpms call takes real action. Right, that sounds like the underlying problem. Thanks! Below is a revised patch for 2.6.37. Now it has resume_count field to check whether the forced update is required after resume. Note that this change is used in another patch for yet-another-S3-regression (bug 26952). Created attachment 44982 [details]
Revised patch for 2.6.37
In drm-intel-fixes [pull requests en route]: http://git.kernel.org/?p=linux/kernel/git/ickle/drm-intel.git;a=commit;h=5d1d0cc87fc0887921993ea0742932e0c8adeda0 merged in .38-rc5 |
Created attachment 44602 [details] Patch fixing this regression Git commit 032d2a0 "drm/i915: Prevent double dpms on" results in a weird regression on intel Pineview (8086:a011) - after resume from S4 the previous framebuffer contents (in resolution 800x600) are displayed in a sort-of overlay in the upper left part of the screen, only vanishing after an S3 cycle. Interestingly, the regular XV overlay seems to be a different overlay, because using the XV overlay (the second XVideo adapter) doesn't change the display. Patch from Takashi attached.