open-src/xserver/xorg/6406044.patch
changeset 1088 1c99106ccbe0
parent 1087 a8aa060182e1
child 1089 590b35f0ad83
equal deleted inserted replaced
1087:a8aa060182e1 1088:1c99106ccbe0
     1 # Copyright (c) 2006, 2009, Oracle and/or its affiliates. All rights reserved.
       
     2 #
       
     3 # Permission is hereby granted, free of charge, to any person obtaining a
       
     4 # copy of this software and associated documentation files (the "Software"),
       
     5 # to deal in the Software without restriction, including without limitation
       
     6 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
       
     7 # and/or sell copies of the Software, and to permit persons to whom the
       
     8 # Software is furnished to do so, subject to the following conditions:
       
     9 #
       
    10 # The above copyright notice and this permission notice (including the next
       
    11 # paragraph) shall be included in all copies or substantial portions of the
       
    12 # Software.
       
    13 #
       
    14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
       
    15 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
       
    16 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
       
    17 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
       
    18 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
       
    19 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
       
    20 # DEALINGS IN THE SOFTWARE.
       
    21 Redo the patch for Xorg 1.5. The patch is helpful only for nv driver.
       
    22 
       
    23 diff -Nurp -x '*~' -x '*.orig' hw/xfree86/modes/xf86EdidModes.c hw/xfree86/modes/xf86EdidModes.c
       
    24 diff -urp -x '*~' -x '*.orig' hw/xfree86/modes/xf86EdidModes.c hw/xfree86/modes/xf86EdidModes.c
       
    25 --- hw/xfree86/modes/xf86EdidModes.c	2009-11-26 21:40:35.000000000 -0800
       
    26 +++ hw/xfree86/modes/xf86EdidModes.c	2009-12-02 18:58:15.024979778 -0800
       
    27 @@ -948,6 +948,20 @@ xf86DDCGetModes(int scrnIndex, xf86MonPt
       
    28                                               &det_mon->section.d_timings,
       
    29  					     preferred,
       
    30  					     quirks);
       
    31 +
       
    32 +	    if (Mode && (DDC->features.input_type == 0) &&
       
    33 +            	(((Mode->HDisplay * 5 / 4) & ~0x07) > Mode->HTotal)) {
       
    34 +		struct detailed_timings *dt = &DDC->det_mon[i].section.d_timings;
       
    35 +		DisplayModeRec *cvtmode;
       
    36 +
       
    37 +		cvtmode = xf86CVTMode(dt->h_active, dt->v_active,
       
    38 +                                (double) xf86ModeVRefresh(Mode), TRUE, FALSE);
       
    39 +		memcpy(Mode, cvtmode, sizeof(DisplayModeRec));
       
    40 +		Mode->type       = M_T_DRIVER;
       
    41 +    		if (preferred)
       
    42 +		    Mode->type |= M_T_PREFERRED;
       
    43 +	    }
       
    44 +		
       
    45  	    preferred = FALSE;
       
    46              break;
       
    47          case DS_STD_TIMINGS: