ports/174446: [patch] fix hang on startup in x11-drivers/xf86-video-intel

4721 at hushmail.com 4721 at hushmail.com
Sat Dec 15 02:00:00 UTC 2012


>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 at 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 at 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:


More information about the freebsd-ports-bugs mailing list