Rebased ref, commits from common ancestor: commit 187dc4ac97cdf70dbf5e9050c871e149f673a4e0 Author: Robert Ancell <robert.anc...@canonical.com> Date: Tue Oct 6 14:25:21 2015 +1300
* debian/patches/revert-dpms-fix.patch: - Revert a DPMS change that causes the screen to turn off when returning from a greeter (LP: #1501941) diff --git a/debian/changelog b/debian/changelog index 516562e..004324a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +xserver-xorg-video-intel (2:2.99.917+git20150808-0ubuntu3) wily; urgency=medium + + * debian/patches/revert-dpms-fix.patch: + - Revert a DPMS change that causes the screen to turn off when returning + from a greeter (LP: #1501941) + + -- Robert Ancell <robert.anc...@canonical.com> Tue, 06 Oct 2015 14:25:00 +1300 + xserver-xorg-video-intel (2:2.99.917+git20150808-0ubuntu2) wily; urgency=medium * Rebuild for libxcb-util. diff --git a/debian/patches/revert-dpms-fix.patch b/debian/patches/revert-dpms-fix.patch new file mode 100644 index 0000000..b08933b --- /dev/null +++ b/debian/patches/revert-dpms-fix.patch @@ -0,0 +1,128 @@ +From 9a8b44dd6fc63f2562a17395c54f5f439cad9008 Mon Sep 17 00:00:00 2001 +From: Robert Ancell <robert.anc...@canonical.com> +Date: Fri, 2 Oct 2015 14:22:42 +1300 +Subject: [PATCH xf86-video-intel 2/2] Revert "sna: Be robust in handling DPMS + failures" + +This reverts commit 7d9a74622e5a936e4860fcef8358619bf59adae8. +--- + src/sna/sna_display.c | 41 ++++++++++++++--------------------------- + 1 file changed, 14 insertions(+), 27 deletions(-) + +Index: xserver-xorg-video-intel-2.99.917+git20150808/src/sna/sna_display.c +=================================================================== +--- xserver-xorg-video-intel-2.99.917+git20150808.orig/src/sna/sna_display.c ++++ xserver-xorg-video-intel-2.99.917+git20150808/src/sna/sna_display.c +@@ -222,7 +222,7 @@ struct sna_output { + int panel_vdisplay; + + uint32_t dpms_id; +- uint8_t dpms_mode; ++ int dpms_mode; + struct backlight backlight; + int backlight_active_level; + +@@ -260,7 +260,6 @@ enum { /* XXX copied from hw/xfree86/mod + OPTION_DEFAULT_MODES, + }; + +-static void __sna_output_dpms(xf86OutputPtr output, int dpms, int fixup); + static void sna_crtc_disable_cursor(struct sna *sna, struct sna_crtc *crtc); + + static bool is_zaphod(ScrnInfoPtr scrn) +@@ -969,7 +968,7 @@ sna_crtc_force_outputs_on(xf86CrtcPtr cr + if (output->crtc != crtc) + continue; + +- __sna_output_dpms(output, DPMSModeOn, false); ++ output->funcs->dpms(output, DPMSModeOn); + } + + #if XF86_CRTC_VERSION >= 3 +@@ -999,7 +998,7 @@ sna_crtc_force_outputs_off(xf86CrtcPtr c + if (output->crtc != crtc) + continue; + +- __sna_output_dpms(output, DPMSModeOff, false); ++ output->funcs->dpms(output, DPMSModeOff); + } + } + +@@ -1135,7 +1134,7 @@ sna_crtc_apply(xf86CrtcPtr crtc) + * and we lose track of the user settings. + */ + if (output->crtc == NULL) +- __sna_output_dpms(output, DPMSModeOff, false); ++ output->funcs->dpms(output, DPMSModeOff); + + if (output->crtc != crtc) + continue; +@@ -3650,7 +3649,7 @@ sna_output_destroy(xf86OutputPtr output) + } + + static void +-__sna_output_dpms(xf86OutputPtr output, int dpms, int fixup) ++sna_output_dpms(xf86OutputPtr output, int dpms) + { + struct sna *sna = to_sna(output->scrn); + struct sna_output *sna_output = output->driver_private; +@@ -3677,9 +3676,8 @@ __sna_output_dpms(xf86OutputPtr output, + if (sna_output->backlight.iface && dpms != DPMSModeOn) { + if (old_dpms == DPMSModeOn) { + sna_output->backlight_active_level = sna_output_backlight_get(output); +- DBG(("%s(%s:%d): saving current backlight %d\n", +- __FUNCTION__, output->name, sna_output->id, +- sna_output->backlight_active_level)); ++ DBG(("%s: saving current backlight %d\n", ++ __FUNCTION__, sna_output->backlight_active_level)); + } + sna_output->dpms_mode = dpms; + sna_output_backlight_off(sna_output); +@@ -3689,31 +3687,18 @@ __sna_output_dpms(xf86OutputPtr output, + drmModeConnectorSetProperty(sna->kgem.fd, + sna_output->id, + sna_output->dpms_id, +- dpms)) { +- DBG(("%s(%s:%d): failed to set DPMS to %d (fixup? %d)\n", +- __FUNCTION__, output->name, sna_output->id, dpms, fixup)); +- if (fixup) { +- sna_crtc_disable(output->crtc, false); +- return; +- } +- } ++ dpms)) ++ dpms = old_dpms; + + if (sna_output->backlight.iface && dpms == DPMSModeOn) { +- DBG(("%s(%d:%d: restoring previous backlight %d\n", +- __FUNCTION__, output->name, sna_output->id, +- sna_output->backlight_active_level)); ++ DBG(("%s: restoring previous backlight %d\n", ++ __FUNCTION__, sna_output->backlight_active_level)); + sna_output_backlight_on(sna_output); + } + + sna_output->dpms_mode = dpms; + } + +-static void +-sna_output_dpms(xf86OutputPtr output, int dpms) +-{ +- __sna_output_dpms(output, dpms, true); +-} +- + static bool + sna_property_ignore(drmModePropertyPtr prop) + { +@@ -4638,8 +4623,10 @@ reset: + sna_output->dpms_mode = sna_output->prop_values[i]; + DBG(("%s: found 'DPMS' (idx=%d, id=%d), initial value=%d\n", + __FUNCTION__, i, sna_output->dpms_id, sna_output->dpms_mode)); +- } else ++ } else { ++ sna_output->dpms_id = -1; + sna_output->dpms_mode = DPMSModeOff; ++ } + + sna_output->possible_encoders = possible_encoders; + sna_output->attached_encoders = attached_encoders; diff --git a/debian/patches/series b/debian/patches/series index bddf279..e4d479f 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1,2 @@ sna-check-for-system-memory-contents.diff +revert-dpms-fix.patch