* Wed Sep 26 2007 Dave Airlie <airlied@redhat.com> 1.3.0.0-25
- xserver-1.3.0-randr-updates.patch: Backport randr from server git This contains a lot of fixes since 1.3.0 went out, and saves us backporting each fix individually - xserver-1.3.0-less-randr-fakerama.patch - dropped - xorg-x11-server-1.2.0-maxpixclock-option.patch - dropped - xserver-1.3.0-edid-quirk-backports.patch - dropped - xserver-1.2.0-honor-displaysize.patch - dropped - xserver-1.3.0-honor-displaysize.patch - reapply to new code layout - xserver-1.3.0-randr12-config-hack.patch - rebased
This commit is contained in:
		
							parent
							
								
									2b187d056f
								
							
						
					
					
						commit
						1d8f821ba4
					
				| @ -1,76 +0,0 @@ | ||||
| --- xorg-server-1.2.0/hw/xfree86/ddc/ddcProperty.c.maxpixclock	2007-01-22 22:13:15.000000000 -0500
 | ||||
| +++ xorg-server-1.2.0/hw/xfree86/ddc/ddcProperty.c	2007-01-23 12:35:00.000000000 -0500
 | ||||
| @@ -303,7 +303,7 @@
 | ||||
|  { | ||||
|      DisplayModePtr Modes = NULL, Mode; | ||||
|      int i, clock; | ||||
| -    Bool have_hsync = FALSE, have_vrefresh = FALSE;
 | ||||
| +    Bool have_hsync = FALSE, have_vrefresh = FALSE, have_maxpixclock = FALSE;
 | ||||
|      int preferred; | ||||
|       | ||||
|      if (!Monitor || !DDC) | ||||
| @@ -332,6 +332,7 @@
 | ||||
|      /* Skip EDID ranges if they were specified in the config file */ | ||||
|      have_hsync = (Monitor->nHsync != 0); | ||||
|      have_vrefresh = (Monitor->nVrefresh != 0); | ||||
| +    have_maxpixclock = (Monitor->maxPixClock != 0);
 | ||||
|   | ||||
|      /* Go through the detailed monitor sections */ | ||||
|      for (i = 0; i < DET_TIMINGS; i++) | ||||
| @@ -366,7 +367,7 @@
 | ||||
|  	    } | ||||
|   | ||||
|  	    clock = DDC->det_mon[i].section.ranges.max_clock * 1000; | ||||
| -	    if (clock > Monitor->maxPixClock)
 | ||||
| +	    if (!have_maxpixclock && clock > Monitor->maxPixClock)
 | ||||
|  		Monitor->maxPixClock = clock; | ||||
|   | ||||
|              break; | ||||
| --- xorg-server-1.2.0/hw/xfree86/common/xf86Mode.c.maxpixclock	2007-01-22 22:13:15.000000000 -0500
 | ||||
| +++ xorg-server-1.2.0/hw/xfree86/common/xf86Mode.c	2007-01-23 12:33:41.000000000 -0500
 | ||||
| @@ -1408,6 +1408,12 @@
 | ||||
|  			 scrp->monitor->vrefresh[i].lo, | ||||
|  			 scrp->monitor->vrefresh[i].hi); | ||||
|  	} | ||||
| +	if (scrp->monitor->maxPixClock) {
 | ||||
| +	    xf86DrvMsg(scrp->scrnIndex, X_INFO,
 | ||||
| +		       "%s: Using maximum pixel clock of %.2f MHz\n",
 | ||||
| +		       scrp->monitor->id,
 | ||||
| +		       (float)scrp->monitor->maxPixClock / 1000.0);
 | ||||
| +	}
 | ||||
|      } | ||||
|   | ||||
|      /* | ||||
| --- xorg-server-1.2.0/hw/xfree86/common/xf86Config.c.maxpixclock	2007-01-22 22:13:15.000000000 -0500
 | ||||
| +++ xorg-server-1.2.0/hw/xfree86/common/xf86Config.c	2007-01-23 12:33:41.000000000 -0500
 | ||||
| @@ -2211,12 +2211,15 @@
 | ||||
|  } | ||||
|   | ||||
|  typedef enum { | ||||
| -    MON_REDUCEDBLANKING
 | ||||
| +    MON_REDUCEDBLANKING,
 | ||||
| +    MON_MAX_PIX_CLOCK,
 | ||||
|  } MonitorValues; | ||||
|   | ||||
|  static OptionInfoRec MonitorOptions[] = { | ||||
|    { MON_REDUCEDBLANKING,      "ReducedBlanking",        OPTV_BOOLEAN, | ||||
|         {0}, FALSE }, | ||||
| +  { MON_MAX_PIX_CLOCK,	      "MaxPixClock",		OPTV_FREQ,
 | ||||
| +       {0}, FALSE },
 | ||||
|    { -1,                                NULL,                   OPTV_NONE, | ||||
|         {0}, FALSE }, | ||||
|  }; | ||||
| @@ -2363,11 +2366,11 @@
 | ||||
|  	    return FALSE; | ||||
|      } | ||||
|   | ||||
| -    /* Check wether this Monitor accepts Reduced Blanking modelines */
 | ||||
|      xf86ProcessOptions(-1, monitorp->options, MonitorOptions); | ||||
| -
 | ||||
|      xf86GetOptValBool(MonitorOptions, MON_REDUCEDBLANKING, | ||||
|                        &monitorp->reducedblanking); | ||||
| +    xf86GetOptValFreq(MonitorOptions, MON_MAX_PIX_CLOCK, OPTUNITS_KHZ,
 | ||||
| +		       &monitorp->maxPixClock);
 | ||||
|      return TRUE; | ||||
|  } | ||||
|   | ||||
| @ -9,7 +9,7 @@ | ||||
| Summary:   X.Org X11 X server | ||||
| Name:      xorg-x11-server | ||||
| Version:   1.3.0.0 | ||||
| Release:   24%{?dist} | ||||
| Release:   25%{?dist} | ||||
| URL:       http://www.x.org | ||||
| License:   MIT/X11 | ||||
| Group:     User Interface/X | ||||
| @ -52,24 +52,22 @@ Patch1005:  xorg-x11-server-1.1.1-builtin-fonts.patch | ||||
| Patch1006:  xorg-x11-server-1.1.1-no-scanpci.patch | ||||
| Patch1007:  xorg-x11-server-1.1.1-spurious-libxf1bpp-link.patch | ||||
| Patch1008:  xorg-x11-server-1.2.0-xf86config-comment-less.patch | ||||
| Patch1009:  xorg-x11-server-1.2.0-maxpixclock-option.patch | ||||
| Patch1010:  xserver-1.3.0-no-prerelease-warning.patch | ||||
| Patch1011:  xserver-1.3.0-composite-version.patch | ||||
| Patch1012:  xserver-1.3.0-mesa7.patch | ||||
| Patch1013:  xserver-1.3.0-exaupgrade.patch | ||||
| Patch1014:  xserver-1.3.0-newglx-offscreen-pixmaps.patch | ||||
| Patch1015:  xserver-1.3.0-randr-updates.patch | ||||
| Patch1022:  xserver-1.3.0-default-dpi.patch | ||||
| 
 | ||||
| Patch2001:  xserver-1.2.0-geode-mmx.patch | ||||
| Patch2002:  xserver-1.2.0-xephyr-keysym-madness.patch | ||||
| Patch2003:  xserver-1.2.0-vfprintf.patch | ||||
| Patch2004:  xserver-1.2.0-honor-displaysize.patch | ||||
| Patch2006:  xserver-1.3.0-less-randr-fakerama.patch | ||||
| Patch2004:  xserver-1.3.0-honor-displaysize.patch | ||||
| Patch2007:  xserver-1.3.0-randr12-config-hack.patch | ||||
| Patch2008:  xserver-1.3.0-randrama-no-zero-screens.patch | ||||
| Patch2009:  xserver-1.3.0-arm-iopl.patch | ||||
| Patch2010:  xserver-1.3.0-idletime.patch | ||||
| Patch2011:  xserver-1.3.0-edid-quirk-backports.patch | ||||
| Patch2012:  xserver-1.3.0-add-really-slow-bcopy.patch | ||||
| Patch2013:  xserver-1.3.0-document-fontpath-correctly.patch | ||||
| 
 | ||||
| @ -313,24 +311,22 @@ Xserver source code needed to build VNC server (Xvnc) | ||||
| %patch1006 -p1 -b .no-scanpci | ||||
| %patch1007 -p1 -b .xf1bpp | ||||
| %patch1008 -p1 -b .comment-less | ||||
| %patch1009 -p1 -b .maxpixclock | ||||
| %patch1010 -p1 -b .prerelease-warning | ||||
| %patch1011 -p1 -b .composite-version | ||||
| %patch1012 -p1 -b .newmesa | ||||
| %patch1013 -p1 -b .newexa | ||||
| %patch1014 -p1 -b .offscreen-pixmaps | ||||
| %patch1015 -p1 -b .randr-update | ||||
| %patch1022 -p1 -b .dpi | ||||
| 
 | ||||
| %patch2001 -p1 -b .geode-mmx | ||||
| %patch2002 -p1 -b .xephyr-keysym | ||||
| %patch2003 -p1 -b .vfprintf | ||||
| %patch2004 -p1 -b .displaysize | ||||
| %patch2006 -p1 -b .fakerama | ||||
| %patch2007 -p1 -b .randrconfig | ||||
| %patch2008 -p1 -b .randrama-zero-screens | ||||
| %patch2009 -p1 -b .arm | ||||
| %patch2010 -p1 -b .idletime | ||||
| %patch2011 -p1 -b .edid-quirks | ||||
| %patch2012 -p1 -b .slow-bcopy | ||||
| %patch2013 -p1 -b .fontpath-doc | ||||
| 
 | ||||
| @ -608,6 +604,17 @@ rm -rf $RPM_BUILD_ROOT | ||||
| 
 | ||||
| 
 | ||||
| %changelog | ||||
| * Wed Sep 26 2007 Dave Airlie <airlied@redhat.com> 1.3.0.0-25 | ||||
| - xserver-1.3.0-randr-updates.patch: Backport randr from server git | ||||
|   This contains a lot of fixes since 1.3.0 went out, and saves | ||||
|   us backporting each fix individually | ||||
| - xserver-1.3.0-less-randr-fakerama.patch - dropped | ||||
| - xorg-x11-server-1.2.0-maxpixclock-option.patch - dropped | ||||
| - xserver-1.3.0-edid-quirk-backports.patch - dropped | ||||
| - xserver-1.2.0-honor-displaysize.patch - dropped | ||||
| - xserver-1.3.0-honor-displaysize.patch - reapply to new code layout | ||||
| - xserver-1.3.0-randr12-config-hack.patch - rebased | ||||
| 
 | ||||
| * Mon Sep 17 2007 Adam Jackson <ajax@redhat.com> 1.3.0.0-24 | ||||
| - xserver-1.3.0-edid-quirk-backports.patch: Update the EDID quirks code | ||||
|   to match current git. | ||||
|  | ||||
| @ -1,15 +0,0 @@ | ||||
| --- xorg-server-1.2.0/hw/xfree86/ddc/ddcProperty.c.jx	2007-02-26 13:39:00.000000000 -0500
 | ||||
| +++ xorg-server-1.2.0/hw/xfree86/ddc/ddcProperty.c	2007-02-26 14:37:33.000000000 -0500
 | ||||
| @@ -313,8 +313,10 @@
 | ||||
|   | ||||
|      preferred = PREFERRED_TIMING_MODE(DDC->features.msc); | ||||
|   | ||||
| -    Monitor->widthmm = 10 * DDC->features.hsize;
 | ||||
| -    Monitor->heightmm = 10 * DDC->features.vsize;
 | ||||
| +    if (Monitor->widthmm <= 0 && Monitor->heightmm <= 0) {
 | ||||
| +	Monitor->widthmm = 10 * DDC->features.hsize;
 | ||||
| +	Monitor->heightmm = 10 * DDC->features.vsize;
 | ||||
| +    }
 | ||||
|       | ||||
|      /* If this is a digital display, then we can use reduced blanking */ | ||||
|      if (DDC->features.input_type)  | ||||
| @ -1,90 +0,0 @@ | ||||
| diff -up xorg-server-1.3.0.0/hw/xfree86/modes/xf86EdidModes.c.edid-quirks xorg-server-1.3.0.0/hw/xfree86/modes/xf86EdidModes.c
 | ||||
| --- xorg-server-1.3.0.0/hw/xfree86/modes/xf86EdidModes.c.edid-quirks	2007-04-18 00:33:14.000000000 -0400
 | ||||
| +++ xorg-server-1.3.0.0/hw/xfree86/modes/xf86EdidModes.c	2007-09-17 14:37:36.000000000 -0400
 | ||||
| @@ -49,32 +49,12 @@
 | ||||
|   | ||||
|  typedef enum { | ||||
|      DDC_QUIRK_NONE = 0, | ||||
| -    /* Force detailed sync polarity to -h +v */
 | ||||
| -    DDC_QUIRK_DT_SYNC_HM_VP = 1 << 0,
 | ||||
|      /* First detailed mode is bogus, prefer largest mode at 60hz */ | ||||
| -    DDC_QUIRK_PREFER_LARGE_60 = 1 << 1,
 | ||||
| +    DDC_QUIRK_PREFER_LARGE_60 = 1 << 0,
 | ||||
|      /* 135MHz clock is too high, drop a bit */ | ||||
| -    DDC_QUIRK_135_CLOCK_TOO_HIGH = 1 << 2
 | ||||
| +    DDC_QUIRK_135_CLOCK_TOO_HIGH = 1 << 1
 | ||||
|  } ddc_quirk_t; | ||||
|   | ||||
| -static Bool quirk_dt_sync_hm_vp (int scrnIndex, xf86MonPtr DDC)
 | ||||
| -{
 | ||||
| -    /* Belinea 1924S1W */
 | ||||
| -    if (memcmp (DDC->vendor.name, "MAX", 4) == 0 &&
 | ||||
| -	DDC->vendor.prod_id == 1932)
 | ||||
| -	return TRUE;
 | ||||
| -    /* Belinea 10 20 30W */
 | ||||
| -    if (memcmp (DDC->vendor.name, "MAX", 4) == 0 &&
 | ||||
| -	DDC->vendor.prod_id == 2007)
 | ||||
| -	return TRUE;
 | ||||
| -    /* ViewSonic VX2025wm (bug #9941) */
 | ||||
| -    if (memcmp (DDC->vendor.name, "VSC", 4) == 0 &&
 | ||||
| -	DDC->vendor.prod_id == 58653)
 | ||||
| -	return TRUE;
 | ||||
| -
 | ||||
| -    return FALSE;
 | ||||
| -}
 | ||||
| -
 | ||||
|  static Bool quirk_prefer_large_60 (int scrnIndex, xf86MonPtr DDC) | ||||
|  { | ||||
|      /* Belinea 10 15 55 */ | ||||
| @@ -87,9 +67,10 @@ static Bool quirk_prefer_large_60 (int s
 | ||||
|  	DDC->vendor.prod_id == 44358) | ||||
|  	return TRUE; | ||||
|   | ||||
| -    /* Samsung SyncMaster 226BW */
 | ||||
| +    /* Samsung SyncMaster 22[56]BW */
 | ||||
|      if (memcmp (DDC->vendor.name, "SAM", 4) == 0 && | ||||
| -	DDC->vendor.prod_id == 638)
 | ||||
| +	(DDC->vendor.prod_id == 638 ||
 | ||||
| +	 DDC->vendor.prod_id == 596))
 | ||||
|  	return TRUE; | ||||
|       | ||||
|      return FALSE; | ||||
| @@ -112,10 +93,6 @@ typedef struct {
 | ||||
|  } ddc_quirk_map_t; | ||||
|   | ||||
|  static const ddc_quirk_map_t ddc_quirks[] = { | ||||
| -    { 
 | ||||
| -	quirk_dt_sync_hm_vp,	DDC_QUIRK_DT_SYNC_HM_VP,
 | ||||
| -	"Set detailed timing sync polarity to -h +v"
 | ||||
| -    },
 | ||||
|      { | ||||
|  	quirk_prefer_large_60,   DDC_QUIRK_PREFER_LARGE_60, | ||||
|  	"Detailed timing is not preferred, use largest mode at 60Hz" | ||||
| @@ -251,20 +228,15 @@ DDCModeFromDetailedTiming(int scrnIndex,
 | ||||
|      if (timing->interlaced) | ||||
|          Mode->Flags |= V_INTERLACE; | ||||
|   | ||||
| -    if (quirks & DDC_QUIRK_DT_SYNC_HM_VP)
 | ||||
| -	Mode->Flags |= V_NHSYNC | V_PVSYNC;
 | ||||
| +    if (timing->misc & 0x02)
 | ||||
| +	Mode->Flags |= V_PVSYNC;
 | ||||
|      else | ||||
| -    {
 | ||||
| -	if (timing->misc & 0x02)
 | ||||
| -	    Mode->Flags |= V_PHSYNC;
 | ||||
| -	else
 | ||||
| -	    Mode->Flags |= V_NHSYNC;
 | ||||
| +	Mode->Flags |= V_NVSYNC;
 | ||||
|       | ||||
| -	if (timing->misc & 0x01)
 | ||||
| -	    Mode->Flags |= V_PVSYNC;
 | ||||
| -	else
 | ||||
| -	    Mode->Flags |= V_NVSYNC;
 | ||||
| -    }
 | ||||
| +    if (timing->misc & 0x01)
 | ||||
| +	Mode->Flags |= V_PHSYNC;
 | ||||
| +    else
 | ||||
| +	Mode->Flags |= V_NHSYNC;
 | ||||
|   | ||||
|      return Mode; | ||||
|  } | ||||
							
								
								
									
										16
									
								
								xserver-1.3.0-honor-displaysize.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								xserver-1.3.0-honor-displaysize.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | ||||
| diff -up xorg-server-1.3.0.0/hw/xfree86/modes/xf86EdidModes.c.da xorg-server-1.3.0.0/hw/xfree86/modes/xf86EdidModes.c
 | ||||
| --- xorg-server-1.3.0.0/hw/xfree86/modes/xf86EdidModes.c.da	2007-09-26 17:04:02.000000000 +1000
 | ||||
| +++ xorg-server-1.3.0.0/hw/xfree86/modes/xf86EdidModes.c	2007-09-26 17:04:27.000000000 +1000
 | ||||
| @@ -401,8 +401,10 @@ xf86DDCMonitorSet(int scrnIndex, MonPtr 
 | ||||
|   | ||||
|      Monitor->DDC = DDC; | ||||
|   | ||||
| -    Monitor->widthmm = 10 * DDC->features.hsize;
 | ||||
| -    Monitor->heightmm = 10 * DDC->features.vsize;
 | ||||
| +    if (Monitor->widthmm <= 0 && Monitor->heightmm <= 0) {
 | ||||
| +        Monitor->widthmm = 10 * DDC->features.hsize;
 | ||||
| +        Monitor->heightmm = 10 * DDC->features.vsize;
 | ||||
| +    }
 | ||||
|   | ||||
|      /* If this is a digital display, then we can use reduced blanking */ | ||||
|      if (DDC->features.input_type) | ||||
| @ -1,17 +0,0 @@ | ||||
| --- xorg-server-1.3.0.0/randr/rrxinerama.c.jx	2007-01-30 02:01:52.000000000 -0500
 | ||||
| +++ xorg-server-1.3.0.0/randr/rrxinerama.c	2007-04-25 13:26:23.000000000 -0400
 | ||||
| @@ -425,6 +425,14 @@
 | ||||
|  	return; | ||||
|  #endif | ||||
|   | ||||
| +    /*
 | ||||
| +     * Xinerama isn't capable enough to have multiple protocol screens each
 | ||||
| +     * with their own output geometry.  So if there's more than one protocol
 | ||||
| +     * screen, just don't even try.
 | ||||
| +     */
 | ||||
| +    if (screenInfo.numScreens > 1)
 | ||||
| +	return;
 | ||||
| +
 | ||||
|      (void) AddExtension(PANORAMIX_PROTOCOL_NAME, 0,0, | ||||
|  			ProcRRXineramaDispatch, | ||||
|  			SProcRRXineramaDispatch, | ||||
							
								
								
									
										3726
									
								
								xserver-1.3.0-randr-updates.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3726
									
								
								xserver-1.3.0-randr-updates.patch
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -1,6 +1,7 @@ | ||||
| --- xorg-server-1.3.0.0/hw/xfree86/modes/xf86Crtc.c.jx	2007-04-16 12:53:50.000000000 -0400
 | ||||
| +++ xorg-server-1.3.0.0/hw/xfree86/modes/xf86Crtc.c	2007-05-02 14:03:28.000000000 -0400
 | ||||
| @@ -1202,6 +1202,23 @@
 | ||||
| diff -up xorg-server-1.3.0.0/hw/xfree86/modes/xf86Crtc.c.da xorg-server-1.3.0.0/hw/xfree86/modes/xf86Crtc.c
 | ||||
| --- xorg-server-1.3.0.0/hw/xfree86/modes/xf86Crtc.c.da	2007-09-26 17:12:44.000000000 +1000
 | ||||
| +++ xorg-server-1.3.0.0/hw/xfree86/modes/xf86Crtc.c	2007-09-26 17:14:44.000000000 +1000
 | ||||
| @@ -1214,6 +1214,23 @@ xf86SortModes (DisplayModePtr input)
 | ||||
|      return output; | ||||
|  } | ||||
|   | ||||
| @ -21,10 +22,10 @@ | ||||
| +    return preferred_mode;
 | ||||
| +}
 | ||||
| +
 | ||||
|  #define DEBUG_REPROBE 1 | ||||
|   | ||||
|  void | ||||
| @@ -1377,8 +1394,7 @@
 | ||||
|  _X_EXPORT void | ||||
|  xf86ProbeOutputModes (ScrnInfoPtr scrn, int maxX, int maxY) | ||||
|  { | ||||
| @@ -1395,8 +1412,7 @@ xf86ProbeOutputModes (ScrnInfoPtr scrn, 
 | ||||
|  	output->probed_modes = xf86SortModes (output->probed_modes); | ||||
|  	 | ||||
|  	/* Check for a configured preference for a particular mode */ | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user