Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Dec 2012 01:51:14 GMT
From:      "4721@hushmail.com" <4721@hushmail.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/174446: [patch] fix hang on startup in x11-drivers/xf86-video-intel
Message-ID:  <201212150151.qBF1pEN2005929@red.freebsd.org>
Resent-Message-ID: <201212150200.qBF200bd031577@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         174446
>Category:       ports
>Synopsis:       [patch] fix hang on startup in x11-drivers/xf86-video-intel
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Dec 15 02:00:00 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     4721@hushmail.com
>Release:        
>Organization:
>Environment:
>Description:
this patch solves a hang on startx that has been present since the last major xorg upgrade.

it solves for at least:
vgapci0@pci0:0:2:0:	class=0x030000 card=0x017f1028 chip=0x35828086 rev=0x02 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82852/855GM Integrated Graphics Device'
    class      = display
    subclass   = VGA

and should fix for some other models as well. this pr should resolve ports/146256 and may resolve ports/153358.

tested with: xf86-video-intel-2.7.1_4 xorg-server-1.7.7_6
>How-To-Repeat:

>Fix:


Patch attached with submission follows:

Index: x11-drivers/xf86-video-intel/files/patch-src_i830_display.c
===================================================================
--- x11-drivers/xf86-video-intel/files/patch-src_i830_display.c	(revision 0)
+++ x11-drivers/xf86-video-intel/files/patch-src_i830_display.c	(working copy)
@@ -0,0 +1,25 @@
+--- src/i830_display.c.orig
++++ src/i830_display.c
+@@ -1170,11 +1170,11 @@
+ 	OUTREG(dspbase_reg, INREG(dspbase_reg));
+     }
+ 
+-    i830_crtc_load_lut(crtc);
+-
+     /* Give the overlay scaler a chance to enable if it's on this pipe */
+     i830_crtc_dpms_video(crtc, TRUE);
+ 
++    i830_crtc_load_lut(crtc);
++
+     /* Reenable compression if needed */
+     if (i830_use_fb_compression(crtc))
+ 	i830_enable_fb_compression(crtc);
+@@ -1936,7 +1936,7 @@
+     int i;
+ 
+     /* The clocks have to be on to load the palette. */
+-    if (!crtc->enabled)
++    if (!crtc->enabled || intel_crtc->dpms_mode != DPMSModeOn)
+ 	return;
+ 
+     for (i = 0; i < 256; i++) {


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201212150151.qBF1pEN2005929>