rpms/xorg-x11-drv-openchrome/F-10 openchrome-0.2.903-latest_snapshot.patch, 1.3, 1.4 xorg-x11-drv-openchrome.spec, 1.35, 1.36

Xavier Bachelot xavierb at fedoraproject.org
Sat Mar 21 21:46:01 UTC 2009


Author: xavierb

Update of /cvs/pkgs/rpms/xorg-x11-drv-openchrome/F-10
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv23985

Modified Files:
	openchrome-0.2.903-latest_snapshot.patch 
	xorg-x11-drv-openchrome.spec 
Log Message:
0.2.903+svn740

openchrome-0.2.903-latest_snapshot.patch:

Index: openchrome-0.2.903-latest_snapshot.patch
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-openchrome/F-10/openchrome-0.2.903-latest_snapshot.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- openchrome-0.2.903-latest_snapshot.patch	19 Feb 2009 21:18:07 -0000	1.3
+++ openchrome-0.2.903-latest_snapshot.patch	21 Mar 2009 21:46:01 -0000	1.4
@@ -1,7 +1,7 @@
 Index: configure.ac
 ===================================================================
---- configure.ac	(.../tags/release_0_2_903)	(revision 735)
-+++ configure.ac	(.../trunk)	(revision 735)
+--- configure.ac	(.../tags/release_0_2_903)	(revision 740)
++++ configure.ac	(.../trunk)	(revision 740)
 @@ -70,7 +70,7 @@
  XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto)
  
@@ -63,8 +63,8 @@
  AC_SUBST([DRIVER_MAN_SUFFIX])
 Index: libxvmc/Makefile.am
 ===================================================================
---- libxvmc/Makefile.am	(.../tags/release_0_2_903)	(revision 735)
-+++ libxvmc/Makefile.am	(.../trunk)	(revision 735)
+--- libxvmc/Makefile.am	(.../tags/release_0_2_903)	(revision 740)
++++ libxvmc/Makefile.am	(.../trunk)	(revision 740)
 @@ -24,13 +24,13 @@
  	xf86dristr.h \
  	vldXvMC.h
@@ -85,8 +85,8 @@
  	driDrawable.c \
 Index: libxvmc/viaLowLevel.c
 ===================================================================
---- libxvmc/viaLowLevel.c	(.../tags/release_0_2_903)	(revision 735)
-+++ libxvmc/viaLowLevel.c	(.../trunk)	(revision 735)
+--- libxvmc/viaLowLevel.c	(.../tags/release_0_2_903)	(revision 740)
++++ libxvmc/viaLowLevel.c	(.../trunk)	(revision 740)
 @@ -276,8 +276,8 @@
  	xl->tsMem.context = *(xl->drmcontext);
  	xl->tsMem.size = 64;
@@ -100,8 +100,8 @@
  	    return -1;
 Index: libxvmc/viaLowLevelPro.c
 ===================================================================
---- libxvmc/viaLowLevelPro.c	(.../tags/release_0_2_903)	(revision 735)
-+++ libxvmc/viaLowLevelPro.c	(.../trunk)	(revision 735)
+--- libxvmc/viaLowLevelPro.c	(.../tags/release_0_2_903)	(revision 740)
++++ libxvmc/viaLowLevelPro.c	(.../trunk)	(revision 740)
 @@ -1460,13 +1460,13 @@
  
      if (size != mem->size) {
@@ -129,8 +129,8 @@
  
 Index: libxvmc/viaXvMC.c
 ===================================================================
---- libxvmc/viaXvMC.c	(.../tags/release_0_2_903)	(revision 735)
-+++ libxvmc/viaXvMC.c	(.../trunk)	(revision 735)
+--- libxvmc/viaXvMC.c	(.../tags/release_0_2_903)	(revision 740)
++++ libxvmc/viaXvMC.c	(.../trunk)	(revision 740)
 @@ -248,7 +248,7 @@
      return errType;
  }
@@ -407,9 +407,21 @@
  
 Index: ChangeLog
 ===================================================================
---- ChangeLog	(.../tags/release_0_2_903)	(revision 735)
-+++ ChangeLog	(.../trunk)	(revision 735)
-@@ -1,3 +1,311 @@
+--- ChangeLog	(.../tags/release_0_2_903)	(revision 740)
++++ ChangeLog	(.../trunk)	(revision 740)
+@@ -1,3 +1,323 @@
++2009-03-21  Xavier Bachelot  <xavier at bachelot.org>
++
++	* src/via_bios.h:
++	* src/via_display.c: (ViaDisplaySetStreamOnDFP):
++	* src/via_driver.c: (VIAPreInit), (VIASave), (VIARestore),
++	(VIADPMS):
++	* src/via_driver.h:
++	* src/via_mode.c: (ViaDFPDetect), (ViaOutputsDetect),
++	(ViaOutputsSelect), (ViaDFPPower), (ViaModeSet):
++
++	CX700 integrated TMDS (Patch courtesy Tim Chen from VIA).
++
 +2009-02-19  Gabriel Mansi  <gabriel-dot-mansi-at-gmail-dot-com>
 +
 +	* src/via_driver.c: (VIAScreenInit), (VIAWriteMode):
@@ -724,7 +736,7 @@
 Index: src/via_panel.c
 ===================================================================
 --- src/via_panel.c	(.../tags/release_0_2_903)	(revision 0)
-+++ src/via_panel.c	(.../trunk)	(revision 735)
++++ src/via_panel.c	(.../trunk)	(revision 740)
 @@ -0,0 +1,461 @@
 +/*
 + * Copyright 2007 The Openchrome Project [openchrome.org]
@@ -1189,8 +1201,8 @@
 +}
 Index: src/via_id.h
 ===================================================================
---- src/via_id.h	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_id.h	(.../trunk)	(revision 735)
+--- src/via_id.h	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_id.h	(.../trunk)	(revision 740)
 @@ -37,6 +37,7 @@
      VIA_P4M900,
      VIA_CX700,
@@ -1209,8 +1221,8 @@
   * the CLE266, often labelled Ax and Cx.  The dividing line seems to be
 Index: src/via_video.c
 ===================================================================
---- src/via_video.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_video.c	(.../trunk)	(revision 735)
+--- src/via_video.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_video.c	(.../trunk)	(revision 740)
 @@ -112,11 +112,7 @@
  static int viaSetPortAttribute(ScrnInfoPtr, Atom, INT32, pointer);
  static int viaPutImage(ScrnInfoPtr, short, short, short, short, short, short,
@@ -1395,7 +1407,7 @@
 Index: src/via_lvds.c
 ===================================================================
 --- src/via_lvds.c	(.../tags/release_0_2_903)	(revision 0)
-+++ src/via_lvds.c	(.../trunk)	(revision 735)
++++ src/via_lvds.c	(.../trunk)	(revision 740)
 @@ -0,0 +1,121 @@
 +/* 
 + * Copyright 2007 The Openchrome Project [openchrome.org]
@@ -1520,8 +1532,8 @@
 +}
 Index: src/via_mode.c
 ===================================================================
---- src/via_mode.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_mode.c	(.../trunk)	(revision 735)
+--- src/via_mode.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_mode.c	(.../trunk)	(revision 740)
 @@ -1,4 +1,5 @@
  /*
 + * Copyright 2005-2007 The Openchrome Project [openchrome.org]
@@ -1583,7 +1595,47 @@
  /*
   *
   * TV specific code.
-@@ -277,7 +326,7 @@
+@@ -243,6 +292,29 @@
+     return MODE_OK;
+ }
+ 
++
++static Bool
++ViaDFPDetect(ScrnInfoPtr pScrn)
++{
++    DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaDFPDetect\n"));
++
++    VIAPtr pVia = VIAPTR(pScrn);
++    VIABIOSInfoPtr pBIOSInfo = pVia->pBIOSInfo;
++    xf86MonPtr          monPtr;
++
++    if (pVia->pI2CBus2)
++        monPtr = xf86DoEDID_DDC2(pScrn->scrnIndex, pVia->pI2CBus2);
++    
++    if (monPtr) {
++        xf86PrintEDID(monPtr);
++        xf86SetDDCproperties(pScrn, monPtr);
++        return TRUE;
++    } else {
++        return FALSE;
++    }
++}
++
++
+ /*
+  *
+  */
+@@ -256,7 +328,8 @@
+ 
+     pBIOSInfo->CrtPresent = FALSE;
+     pBIOSInfo->PanelPresent = FALSE;
+-
++    pBIOSInfo->DfpPresent = FALSE;
++    
+     /* Panel */
+     if (pBIOSInfo->ForcePanel) {
+         xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Enabling panel from config.\n");
+@@ -277,7 +350,7 @@
              pBIOSInfo->CrtPresent = TRUE;
      }
  
@@ -1592,7 +1644,27 @@
       * FIXME: xf86I2CProbeAddress(pVia->pI2CBus3, 0x40)
       * disables the panel on P4M900
       * See ViaTVDetect.
-@@ -347,14 +396,14 @@
+@@ -297,6 +370,19 @@
+             pBIOSInfo->TVOutput = 0;
+         }
+     }
++    
++    if (pVia->Chipset == VIA_CX700) {
++        
++        if (ViaDFPDetect(pScrn)) {
++            pBIOSInfo->DfpPresent = TRUE;
++            xf86DrvMsg(pScrn->scrnIndex, X_INFO,
++                       "DFP is connected.\n");
++        } else {
++            pBIOSInfo->DfpPresent = FALSE;
++            xf86DrvMsg(pScrn->scrnIndex, X_INFO,
++                       "DFP is disconnected.\n");
++        }
++    }
+ }
+ 
+ #ifdef HAVE_DEBUG
+@@ -347,24 +433,30 @@
                       " Initialised register: 0x%02x\n",
                       VIAGetActiveDisplay(pScrn)));
  
@@ -1600,7 +1672,9 @@
 +    pBIOSInfo->Panel->IsActive = FALSE;
      pBIOSInfo->CrtActive = FALSE;
      pBIOSInfo->TVActive = FALSE;
- 
+-
++    pBIOSInfo->DfpActive = FALSE;
++    
      if (!pVia->ActiveDevice) {
          /* always enable the panel when present */
          if (pBIOSInfo->PanelPresent)
@@ -1609,7 +1683,14 @@
          else if (pBIOSInfo->TVOutput != TVOUTPUT_NONE)  /* cable is attached! */
              pBIOSInfo->TVActive = TRUE;
  
-@@ -364,7 +413,7 @@
+         /* CRT can be used with everything when present */
+         if (pBIOSInfo->CrtPresent)
+             pBIOSInfo->CrtActive = TRUE;
++
++        /* DFP */
++        if (pBIOSInfo->DfpPresent)
++            pBIOSInfo->DfpActive = TRUE;
++        
      } else {
          if (pVia->ActiveDevice & VIA_DEVICE_LCD) {
              if (pBIOSInfo->PanelPresent)
@@ -1618,7 +1699,7 @@
              else
                  xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "Unable to activate"
                             " panel: no panel is present.\n");
-@@ -377,7 +426,7 @@
+@@ -377,7 +469,7 @@
              else if (pBIOSInfo->TVOutput == TVOUTPUT_NONE)
                  xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "Unable to activate"
                             " TV encoder: no cable attached.\n");
@@ -1627,12 +1708,19 @@
                  xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "Unable to activate"
                             " TV encoder and panel simultaneously. Not using"
                             " TV encoder.\n");
-@@ -386,17 +435,26 @@
+@@ -385,221 +477,112 @@
+                 pBIOSInfo->TVActive = TRUE;
          }
  
++        if (pVia->ActiveDevice & VIA_DEVICE_DFP) {
++            pBIOSInfo->DfpPresent = TRUE;
++            pBIOSInfo->DfpActive = TRUE;
++        }
++
          if ((pVia->ActiveDevice & VIA_DEVICE_CRT)
 -            || (!pBIOSInfo->PanelActive && !pBIOSInfo->TVActive)) {
-+            || (!pBIOSInfo->Panel->IsActive && !pBIOSInfo->TVActive)) {
++            || (!pBIOSInfo->Panel->IsActive && !pBIOSInfo->TVActive
++                && !pBIOSInfo->DfpActive)) {
              pBIOSInfo->CrtPresent = TRUE;
              pBIOSInfo->CrtActive = TRUE;
          }
@@ -1640,6 +1728,8 @@
 +    if (!pVia->UseLegacyModeSwitch) {
 +        if (pBIOSInfo->CrtActive)
 +            pBIOSInfo->FirstCRTC->IsActive = TRUE ;
++        if (pBIOSInfo->DfpActive)
++            pBIOSInfo->FirstCRTC->IsActive = TRUE ;
 +        if (pBIOSInfo->Panel->IsActive) {
 +            pVia->pBIOSInfo->SecondCRTC->IsActive = TRUE ;
 +            if (pVia->Chipset == VIA_P4M900 || pVia->Chipset == VIA_CX700 || pVia->Chipset == VIA_VX800 )
@@ -1656,7 +1746,13 @@
          DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
                           "ViaOutputsSelect: Panel.\n"));
      if (pBIOSInfo->TVActive)
-@@ -407,199 +465,70 @@
+         DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+                          "ViaOutputsSelect: TV.\n"));
++    if (pBIOSInfo->DfpActive)
++        DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO,
++                         "ViaOutputsSelect: DFP.\n"));
+ #endif
+     return TRUE; /* !Secondary always has at least CRT */
  }
  
  /*
@@ -1878,7 +1974,7 @@
  }
  
  /*
-@@ -656,7 +585,7 @@
+@@ -656,7 +639,7 @@
  
  /*
   *
@@ -1887,7 +1983,7 @@
   * pBIOSInfo->PanelIndex is the index to lcdTable.
   *
   */
-@@ -670,9 +599,9 @@
+@@ -670,9 +653,9 @@
  
      pBIOSInfo->PanelIndex = VIA_BIOS_NUM_PANEL;
  
@@ -1899,21 +1995,30 @@
              xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
                         "ViaPanelGetIndex: PanelSize not set.\n");
              return FALSE;
-@@ -693,7 +622,8 @@
+@@ -692,12 +675,14 @@
+         return FALSE;
      }
  
-     for (i = 0; ViaResolutionTable[i].Index != VIA_RES_INVALID; i++)
+-    for (i = 0; ViaResolutionTable[i].Index != VIA_RES_INVALID; i++)
 -        if (ViaResolutionTable[i].PanelIndex == pBIOSInfo->PanelSize) {
++    for (i = 0; ViaResolutionTable[i].Index != VIA_RES_INVALID; i++) {
 +        if (ViaResolutionTable[i].PanelIndex
 +            == pBIOSInfo->Panel->NativeModeIndex) {
              pBIOSInfo->panelX = ViaResolutionTable[i].X;
              pBIOSInfo->panelY = ViaResolutionTable[i].Y;
              break;
-@@ -713,7 +643,10 @@
+         }
++    }
+ 
+     if (ViaResolutionTable[i].Index == VIA_RES_INVALID) {
+         xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaPanelGetIndex: Unable"
+@@ -712,8 +697,11 @@
+         return FALSE;
      }
  
-     for (i = 0; i < VIA_BIOS_NUM_PANEL; i++)
+-    for (i = 0; i < VIA_BIOS_NUM_PANEL; i++)
 -        if (lcdTable[i].fpSize == pBIOSInfo->PanelSize) {
++    for (i = 0; i < VIA_BIOS_NUM_PANEL; i++) {
 +        DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaPanelGetIndex:"
 +                         "Match Debug: %d == %d)\n", pBIOSInfo->Panel->NativeModeIndex,
 +                         lcdTable[i].fpSize));
@@ -1921,7 +2026,15 @@
              int modeNum, tmp;
  
              modeNum = ViaGetVesaMode(pScrn, mode);
-@@ -743,6 +676,53 @@
+@@ -736,6 +724,7 @@
+                        " to match given mode with this PanelSize.\n");
+             return FALSE;
+         }
++    }
+ 
+     xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaPanelGetIndex: Unable"
+                " to match PanelSize with an lcdTable entry.\n");
+@@ -743,6 +732,53 @@
  }
  
  /*
@@ -1975,7 +2088,7 @@
   * Stolen from xf86Config.c's addDefaultModes
   */
  static void
-@@ -764,6 +744,7 @@
+@@ -764,6 +800,7 @@
              mode->prev = NULL;
          }
          last = mode;
@@ -1983,7 +2096,7 @@
      }
      monitorp->Last = last;
  }
-@@ -778,7 +759,7 @@
+@@ -778,7 +815,7 @@
  
      DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaModesAttach\n"));
  
@@ -1992,7 +2105,7 @@
          ViaModesAttachHelper(pScrn, monitorp, ViaPanelModes);
      if (pBIOSInfo->TVActive && pBIOSInfo->TVModes)
          ViaModesAttachHelper(pScrn, monitorp, pBIOSInfo->TVModes);
-@@ -815,155 +796,12 @@
+@@ -815,155 +852,12 @@
      }
  }
  
@@ -2150,7 +2263,7 @@
  ModeStatus
  ViaValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags)
  {
-@@ -982,27 +820,57 @@
+@@ -982,27 +876,57 @@
      if (mode->Flags & V_INTERLACE)
          return MODE_NO_INTERLACE;
  
@@ -2224,7 +2337,7 @@
      temp = mode->CrtcHDisplay * mode->CrtcVDisplay * mode->VRefresh
              * (pScrn->bitsPerPixel >> 3);
      if (pBIOSInfo->Bandwidth < temp) {
-@@ -1037,7 +905,7 @@
+@@ -1037,7 +961,7 @@
      hwp->writeMiscOut(hwp, data | 0x0C);
  }
  
@@ -2233,7 +2346,7 @@
   *
   */
  static void
-@@ -1062,7 +930,7 @@
+@@ -1062,7 +986,7 @@
      ViaSeqMask(hwp, 0x40, 0x00, 0x02);
  }
  
@@ -2242,7 +2355,7 @@
   *
   */
  static void
-@@ -1104,7 +972,7 @@
+@@ -1104,7 +1028,7 @@
  
      DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "VIASetLCDMode\n"));
  
@@ -2251,7 +2364,7 @@
          hwp->writeCrtc(hwp, 0x89, 0x07);
  
      /* LCD Expand Mode Y Scale Flag */
-@@ -1165,7 +1033,7 @@
+@@ -1165,7 +1089,7 @@
              case VIA_RES_1280X768:
              case VIA_RES_1280X960:
              case VIA_RES_1280X1024:
@@ -2260,7 +2373,7 @@
                      resIdx = VIA_RES_INVALID;
                  else
                      resIdx = 4;
-@@ -1317,261 +1185,6 @@
+@@ -1317,261 +1241,6 @@
      }
  }
  
@@ -2522,7 +2635,7 @@
  static CARD32
  ViaComputeDotClock(unsigned clock)
  {
-@@ -1692,13 +1305,14 @@
+@@ -1692,13 +1361,14 @@
   *
   */
  void
@@ -2538,7 +2651,7 @@
  
      /* Turn off Screen */
      ViaCrtcMask(hwp, 0x17, 0x00, 0x80);
-@@ -1709,7 +1323,8 @@
+@@ -1709,7 +1379,8 @@
      hwp->writeCrtc(hwp, 0x6C, 0x00);
      hwp->writeCrtc(hwp, 0x93, 0x00);
  
@@ -2548,7 +2661,7 @@
      pBIOSInfo->Clock = ViaModeDotClockTranslate(pScrn, mode);
      pBIOSInfo->ClockExternal = FALSE;
  
-@@ -1721,7 +1336,7 @@
+@@ -1721,7 +1392,7 @@
      else
          ViaSeqMask(hwp, 0x16, 0x00, 0x40);
  
@@ -2557,7 +2670,7 @@
          VIASetLCDMode(pScrn, mode);
          ViaLCDPower(pScrn, TRUE);
      } else if (pBIOSInfo->PanelPresent)
-@@ -1765,192 +1380,23 @@
+@@ -1765,192 +1436,23 @@
      hwp->disablePalette(hwp);
  }
  
@@ -2753,7 +2866,7 @@
  
      if (pBIOSInfo->TVActive)
          ViaTVSetMode(pScrn, mode);
-@@ -1959,7 +1405,7 @@
+@@ -1959,7 +1461,7 @@
      if (!(pVia->Chipset == VIA_CLE266 && pVia->ChipRev == 0x02))
          ViaCrtcMask(hwp, 0x6C, 0x00, 0x1E);
  
@@ -2762,7 +2875,7 @@
          && (pBIOSInfo->PanelIndex != VIA_BIOS_NUM_PANEL)) {
          pBIOSInfo->SetDVI = TRUE;
          VIASetLCDMode(pScrn, mode);
-@@ -2017,9 +1463,12 @@
+@@ -2017,9 +1519,12 @@
      else
          ViaCrtcMask(hwp, 0x6A, 0x00, 0x08);
  
@@ -2776,12 +2889,34 @@
              for (i = 0; i < NumPowerOn; i++) {
                  if (lcdTable[pBIOSInfo->PanelIndex].powerSeq
                      == powerOn[i].powerSeq)
-@@ -2038,3 +1487,106 @@
+@@ -2038,3 +1543,137 @@
          ViaLCDPowerSequence(hwp, powerOff[i]);
      usleep(1);
  }
 +
 +void
++ViaDFPPower(ScrnInfoPtr pScrn, Bool On)
++{
++#ifdef HAVE_DEBUG
++    if (On)
++        xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaDFPPower: On.\n");
++    else
++        xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaDFPPower: Off.\n");
++#endif
++    vgaHWPtr hwp = VGAHWPTR(pScrn);
++    VIAPtr pVia = VIAPTR(pScrn);
++    VIABIOSInfoPtr pBIOSInfo = pVia->pBIOSInfo;
++
++    /* Display Channel Select */
++    ViaCrtcMask(hwp, 0xD2, 0x30, 0x30);
++
++    /* Power on TMDS */
++    ViaCrtcMask(hwp, 0xD2, 0x00, 0x08);
++    
++}
++
++
++void
 +ViaModeFirstCRTC(ScrnInfoPtr pScrn, DisplayModePtr mode)
 +{
 +    xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaModeFirstCRTC\n");
@@ -2869,9 +3004,18 @@
 +    }
 +
 +    if (pBIOSInfo->FirstCRTC->IsActive) {
-+        /* CRT on FirstCRTC */
-+        ViaDisplaySetStreamOnCRT(pScrn, TRUE);
-+        ViaDisplayEnableCRT(pScrn);
++        if (pBIOSInfo->CrtActive) {
++            /* CRT on FirstCRTC */
++            ViaDisplaySetStreamOnCRT(pScrn, TRUE);
++            ViaDisplayEnableCRT(pScrn);
++        }
++
++        if (pBIOSInfo->DfpActive) {
++            /* DFP on FirstCrtc */
++            ViaDisplaySetStreamOnDFP(pScrn, TRUE);
++            ViaDFPPower(pScrn, TRUE);
++        }
++        
 +        ViaModeFirstCRTC(pScrn, mode);
 +    } else {
 +        ViaDisplayDisableCRT(pScrn);
@@ -2885,8 +3029,8 @@
 +}
 Index: src/via_mode.h
 ===================================================================
---- src/via_mode.h	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_mode.h	(.../trunk)	(revision 735)
+--- src/via_mode.h	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_mode.h	(.../trunk)	(revision 740)
 @@ -32,7 +32,7 @@
   */
  #define VIA_BW_MIN       74000000 /* > 640x480 at 60Hz@32bpp */
@@ -2942,8 +3086,8 @@
  
 Index: src/via_driver.c
 ===================================================================
---- src/via_driver.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_driver.c	(.../trunk)	(revision 735)
+--- src/via_driver.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_driver.c	(.../trunk)	(revision 740)
 @@ -73,6 +73,7 @@
      return via_pci_device(&bridge_match);
  }
@@ -3266,6 +3410,17 @@
          pVia->hwcursor = !pVia->hwcursor;
          from = X_CONFIG;
      }
+@@ -1346,8 +1409,8 @@
+             pVia->ActiveDevice |= VIA_DEVICE_CRT;
+         if (strstr(s, "LCD"))
+             pVia->ActiveDevice |= VIA_DEVICE_LCD;
+-        if (strstr(s, "DFP"))  /* just treat this the same as LCD */
+-            pVia->ActiveDevice |= VIA_DEVICE_LCD;
++        if (strstr(s, "DFP"))  
++            pVia->ActiveDevice |= VIA_DEVICE_DFP;
+         if (strstr(s, "TV"))
+             pVia->ActiveDevice |= VIA_DEVICE_TV;
+     }
 @@ -1375,45 +1438,24 @@
      xf86DrvMsg(pScrn->scrnIndex, from, "DVI Center is %s.\n",
                 pBIOSInfo->Center ? "enabled" : "disabled");
@@ -3455,7 +3610,7 @@
          Regs->CR49 = hwp->readCrtc(hwp, 0x49);
  
          DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "TVSave...\n"));
-@@ -2019,15 +2088,19 @@
+@@ -2019,15 +2088,23 @@
          for (i = 0; i < 68; i++)
              Regs->CRTCRegs[i] = hwp->readCrtc(hwp, i + 0x50);
  
@@ -3479,10 +3634,14 @@
 +
 +        }
 +
++        /* Save TMDS status */
++        if (pVia->Chipset == VIA_CX700)
++            Regs->CRD2 = hwp->readCrtc(hwp, 0xD2);
++        
          vgaHWProtect(pScrn, FALSE);
      }
  }
-@@ -2055,6 +2128,8 @@
+@@ -2055,6 +2132,8 @@
      hwp->writeCrtc(hwp, 0x6B, 0x00);
      hwp->writeCrtc(hwp, 0x6C, 0x00);
  
@@ -3491,7 +3650,7 @@
      if (pBIOSInfo->TVI2CDev)
          ViaTVRestore(pScrn);
  
-@@ -2118,22 +2193,27 @@
+@@ -2118,22 +2197,31 @@
      hwp->writeCrtc(hwp, 0x35, Regs->CR35);
      hwp->writeCrtc(hwp, 0x36, Regs->CR36);
  
@@ -3525,11 +3684,15 @@
 +
 +    }
 +
++    /* Restore TMDS status */
++    if (pVia->Chipset == VIA_CX700)
++        hwp->writeCrtc(hwp, 0xD2, Regs->CRD2);
++    
 +    if (pBIOSInfo->Panel->IsActive)
          ViaLCDPower(pScrn, TRUE);
  
      ViaDisablePrimaryFIFO(pScrn);
-@@ -2145,26 +2225,61 @@
+@@ -2145,26 +2233,61 @@
      vgaHWProtect(pScrn, FALSE);
  }
  
@@ -3599,7 +3762,7 @@
      xf86DrvMsg(pScrn->scrnIndex, X_PROBED,
                 "mapping MMIO @ 0x%lx with size 0x%x\n",
                 pVia->MmioBase, VIA_MMIO_REGSIZE);
-@@ -2196,8 +2311,7 @@
+@@ -2196,8 +2319,7 @@
      err = pci_device_map_range(pVia->PciInfo,
                                 pVia->MmioBase + VIA_MMIO_BLTBASE,
                                 VIA_MMIO_BLTSIZE,
@@ -3609,7 +3772,7 @@
                                 (void **)&pVia->BltBase);
  
      if (err) {
-@@ -2215,7 +2329,7 @@
+@@ -2215,7 +2337,7 @@
  
      if (!pVia->MapBase || !pVia->BltBase) {
          xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
@@ -3618,7 +3781,7 @@
          return FALSE;
      }
  
-@@ -2238,14 +2352,15 @@
+@@ -2238,14 +2360,15 @@
          hwp->writeMiscOut(hwp, val | 0x01);
  
          /* Unlock extended IO space. */
@@ -3640,7 +3803,7 @@
          vgaHWGetIOBase(hwp);
      }
  
-@@ -2257,8 +2372,12 @@
+@@ -2257,8 +2380,12 @@
  VIAMapFB(ScrnInfoPtr pScrn)
  {
      VIAPtr pVia = VIAPTR(pScrn);
@@ -3653,7 +3816,7 @@
  #endif
  
      DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "VIAMapFB\n"));
-@@ -2298,7 +2417,8 @@
+@@ -2298,7 +2425,8 @@
  #ifdef XSERVER_LIBPCIACCESS
          err = pci_device_map_range(pVia->PciInfo, pVia->FrameBufferBase,
                                     pVia->videoRambytes,
@@ -3663,7 +3826,7 @@
                                     (void **)&pVia->FBBase);
          if (err) {
              xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
-@@ -2346,8 +2466,7 @@
+@@ -2346,8 +2474,7 @@
  
      DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "VIAUnmapMem\n"));
  
@@ -3673,7 +3836,7 @@
  
  #ifdef XSERVER_LIBPCIACCESS
      if (pVia->MapBase)
-@@ -2431,75 +2550,65 @@
+@@ -2431,75 +2558,65 @@
  {
      vgaHWPtr hwp = VGAHWPTR(pScrn);
      VIAPtr pVia = VIAPTR(pScrn);
@@ -3788,7 +3951,7 @@
          for (i = 0; i < numColors; i++) {
              index = indices[i];
              hwp->writeDacWriteAddr(hwp, index);
-@@ -2507,6 +2616,23 @@
+@@ -2507,6 +2624,23 @@
              hwp->writeDacData(hwp, colors[index].green);
              hwp->writeDacData(hwp, colors[index].blue);
          }
@@ -3812,7 +3975,7 @@
      }
  }
  
-@@ -2543,6 +2669,7 @@
+@@ -2543,6 +2677,7 @@
          }
      } else {
          vgaHWBlankScreen(pScrn, FALSE);
@@ -3820,7 +3983,7 @@
          if (!VIAWriteMode(pScrn, pScrn->currentMode)) {
              vgaHWBlankScreen(pScrn, TRUE);
              return FALSE;
-@@ -2623,7 +2750,8 @@
+@@ -2623,7 +2758,8 @@
      DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "- SW cursor set up\n"));
  
      if (pVia->hwcursor) {
@@ -3830,7 +3993,7 @@
              xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
                         "Hardware cursor initialization failed\n");
          }
-@@ -2787,6 +2915,7 @@
+@@ -2787,6 +2923,7 @@
  VIAWriteMode(ScrnInfoPtr pScrn, DisplayModePtr mode)
  {
      VIAPtr pVia = VIAPTR(pScrn);
@@ -3838,7 +4001,7 @@
  
      DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "VIAWriteMode\n"));
  
-@@ -2799,10 +2928,15 @@
+@@ -2799,10 +2936,15 @@
          if (!vgaHWInit(pScrn, mode))
              return FALSE;
  
@@ -3858,7 +4021,7 @@
  
      } else {
  
-@@ -2813,22 +2947,19 @@
+@@ -2813,22 +2955,19 @@
           * to detect when the display is using the secondary head.
           * TODO: This should be enabled for other chipsets as well.
           */
@@ -3884,7 +4047,7 @@
          viaInitialize2DEngine(pScrn);
      }
  
-@@ -2856,14 +2987,15 @@
+@@ -2856,14 +2995,15 @@
          viaAccelSync(pScrn);
  
          /* A soft reset avoids a 3D hang after X restart. */
@@ -3903,7 +4066,7 @@
          }
  
          if (pVia->VQEnable)
-@@ -2875,10 +3007,6 @@
+@@ -2875,10 +3015,6 @@
  #endif
  
      viaExitAccel(pScreen);
@@ -3914,7 +4077,7 @@
      if (pVia->ShadowPtr) {
          xfree(pVia->ShadowPtr);
          pVia->ShadowPtr = NULL;
-@@ -2936,24 +3064,17 @@
+@@ -2936,24 +3072,17 @@
      if (pVia->pVbe) {
          ViaVbeAdjustFrame(scrnIndex, x, y, flags);
      } else {
@@ -3949,7 +4112,7 @@
          }
      }
  
-@@ -3003,52 +3124,59 @@
+@@ -3003,52 +3132,65 @@
      vgaHWPtr hwp = VGAHWPTR(pScrn);
      VIAPtr pVia = VIAPTR(pScrn);
      VIABIOSInfoPtr pBIOSInfo = pVia->pBIOSInfo;
@@ -3997,8 +4160,8 @@
  
 -            if (pBIOSInfo->TVActive)
 -                ViaTVPower(pScrn, FALSE);
-+                if (pBIOSInfo->Simultaneous->IsActive)
-+                    ViaDisplayEnableSimultaneous(pScrn);
++                if (pBIOSInfo->DfpActive)
++                    ViaDFPPower(pScrn, TRUE);
  
 -            val |= 0x30;
 -            hwp->writeCrtc(hwp, 0x36, val);
@@ -4007,6 +4170,9 @@
 -            xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
 -                       "Invalid DPMS mode %d\n", mode);
 -            break;
++                if (pBIOSInfo->Simultaneous->IsActive)
++                    ViaDisplayEnableSimultaneous(pScrn);
++
 +                break;
 +            case DPMSModeStandby:
 +            case DPMSModeSuspend:
@@ -4024,6 +4190,9 @@
 +                if (pBIOSInfo->TVActive)
 +                    ViaTVPower(pScrn, FALSE);
 +
++                if (pBIOSInfo->DfpActive)
++                    ViaDFPPower(pScrn, FALSE);
++                
 +                if (pBIOSInfo->Simultaneous->IsActive)
 +                    ViaDisplayDisableSimultaneous(pScrn);
 +
@@ -4042,7 +4211,7 @@
  void
  VIAInitialize3DEngine(ScrnInfoPtr pScrn)
  {
-@@ -3111,4 +3239,3 @@
+@@ -3111,4 +3253,3 @@
      VIASETREG(VIA_REG_TRANSPACE, 0x11000000);
      VIASETREG(VIA_REG_TRANSPACE, 0x20000000);
  }
@@ -4050,7 +4219,7 @@
 Index: src/via_crtc.c
 ===================================================================
 --- src/via_crtc.c	(.../tags/release_0_2_903)	(revision 0)
-+++ src/via_crtc.c	(.../trunk)	(revision 735)
++++ src/via_crtc.c	(.../trunk)	(revision 740)
 @@ -0,0 +1,659 @@
 +/*
 + * Copyright 2005-2007 The Openchrome Project [openchrome.org]
@@ -4713,8 +4882,8 @@
 +}
 Index: src/via_swov.c
 ===================================================================
---- src/via_swov.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_swov.c	(.../trunk)	(revision 735)
+--- src/via_swov.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_swov.c	(.../trunk)	(revision 740)
 @@ -95,7 +95,8 @@
      pdwState = (CARD32 volatile *)(pVia->VidMapBase + (HQV_CONTROL + proReg));
  
@@ -4852,8 +5021,8 @@
  
 Index: src/via_driver.h
 ===================================================================
---- src/via_driver.h	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_driver.h	(.../trunk)	(revision 735)
+--- src/via_driver.h	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_driver.h	(.../trunk)	(revision 740)
 @@ -65,6 +65,7 @@
  #include "via_swov.h"
  #include "via_dmabuffer.h"
@@ -4893,7 +5062,17 @@
  #define VIA_VQ_SIZE             (256 * 1024)
  
  typedef struct {
-@@ -211,7 +205,6 @@
+@@ -130,6 +124,9 @@
+     CARD8   CR97, CR99, CR9B, CR9F, CRA0, CRA1, CRA2;
+     CARD8   CRTCRegs[68];
+ /*    CARD8   LCDRegs[0x40];*/
++
++    /* TMDS/LVDS Control */
++    CARD8   CRD2;
+ } VIARegRec, *VIARegPtr;
+ 
+ /*
+@@ -211,7 +208,6 @@
      int                 FBFreeEnd;
      int                 driSize;
      int                 maxDriSize;
@@ -4901,7 +5080,7 @@
      int                 VQStart;
      int                 VQEnd;
  
-@@ -230,7 +223,7 @@
+@@ -230,7 +226,7 @@
  
      /* Here are all the Options */
      Bool                VQEnable;
@@ -4910,7 +5089,7 @@
      Bool                NoAccel;
      Bool                shadowFB;
      int                 rotate;
-@@ -276,7 +269,7 @@
+@@ -276,7 +272,7 @@
      CARD32              lastMarkerRead;
      Bool                agpDMA;
      Bool                nPOT[VIA_NUM_TEXUNITS];
@@ -4919,7 +5098,7 @@
      ExaDriverPtr        exaDriverPtr;
      ExaOffscreenArea   *exa_scratch;
      unsigned int        exa_scratch_next;
-@@ -298,7 +291,6 @@
+@@ -298,7 +294,6 @@
      char *              texAddr;
      char *              dBounce;
  #endif
@@ -4927,7 +5106,7 @@
  
      /* BIOS Info Ptr */
      VIABIOSInfoPtr      pBIOSInfo;
-@@ -354,11 +346,32 @@
+@@ -354,11 +349,32 @@
      Bool                dmaXV;
  
      CARD8               ActiveDevice;	/* Option */
@@ -4963,7 +5142,7 @@
      /* Video */
      int                 VideoEngine;
      swovRec		swov;
-@@ -375,12 +388,21 @@
+@@ -375,12 +391,21 @@
      
      ViaSharedPtr	sharedData;
      Bool                useDmaBlit;
@@ -4985,7 +5164,7 @@
  #endif /* HAVE_DEBUG */
  } VIARec, *VIAPtr;
  
-@@ -402,16 +424,17 @@
+@@ -402,16 +427,17 @@
  } VIAEntRec, *VIAEntPtr;
  
  /* Prototypes. */
@@ -5012,8 +5191,8 @@
  Bool viaInitAccel(ScreenPtr);
 Index: src/via_bios.h
 ===================================================================
---- src/via_bios.h	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_bios.h	(.../trunk)	(revision 735)
+--- src/via_bios.h	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_bios.h	(.../trunk)	(revision 740)
 @@ -34,6 +34,14 @@
  #define     VIA_PANEL14X10                  5
  #define     VIA_PANEL16X12                  6
@@ -5076,7 +5255,7 @@
  typedef struct _VIABIOSINFO {
      int         scrnIndex;
  
-@@ -102,20 +150,29 @@
+@@ -102,13 +150,12 @@
      CARD32      Bandwidth; /* available memory bandwidth */
  
      /* Panel/LCD entries */
@@ -5092,9 +5271,13 @@
      Bool        SetDVI;
      /* LCD Simultaneous Expand Mode HWCursor Y Scale */
      Bool        scaleY;
-     int         panelX;
+@@ -116,6 +163,20 @@
      int         panelY;
      int         resY;
+ 
++    /* DFP */
++    Bool        DfpPresent;
++    Bool        DfpActive;
 +    
 +    /* Integrated LVDS */
 +    ViaLVDSInfoPtr Lvds;
@@ -5102,14 +5285,14 @@
 +    /* CRTCs */
 +    ViaCRTCInfoPtr FirstCRTC ;
 +    ViaCRTCInfoPtr SecondCRTC ;
- 
++
 +    /* Simultaneous */
 +    ViaSimultaneousInfoPtr Simultaneous ;
 +
      /* TV entries */
      int         TVEncoder;
      int         TVOutput;
-@@ -156,10 +213,8 @@
+@@ -156,18 +217,46 @@
  void ViaModesAttach(ScrnInfoPtr pScrn, MonPtr monitorp);
  CARD32 ViaGetMemoryBandwidth(ScrnInfoPtr pScrn);
  ModeStatus ViaValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags);
@@ -5120,9 +5303,10 @@
 +void ViaModePrimaryLegacy(ScrnInfoPtr pScrn, DisplayModePtr mode);
 +void ViaModeSecondaryLegacy(ScrnInfoPtr pScrn, DisplayModePtr mode);
  void ViaLCDPower(ScrnInfoPtr pScrn, Bool On);
++void ViaDFPPower(ScrnInfoPtr pScrn, Bool On);
  void ViaTVPower(ScrnInfoPtr pScrn, Bool On);
  void ViaTVSave(ScrnInfoPtr pScrn);
-@@ -167,7 +222,36 @@
+ void ViaTVRestore(ScrnInfoPtr pScrn);
  #ifdef HAVE_DEBUG
  void ViaTVPrintRegs(ScrnInfoPtr pScrn);
  #endif
@@ -5159,7 +5343,7 @@
  /* in via_bandwidth.c */
  void ViaSetPrimaryFIFO(ScrnInfoPtr pScrn, DisplayModePtr mode);
  void ViaSetSecondaryFIFO(ScrnInfoPtr pScrn, DisplayModePtr mode);
-@@ -181,4 +265,13 @@
+@@ -181,4 +270,13 @@
  I2CDevPtr ViaCH7xxxDetect(ScrnInfoPtr pScrn, I2CBusPtr pBus, CARD8 Address);
  void ViaCH7xxxInit(ScrnInfoPtr pScrn);
  
@@ -5175,8 +5359,8 @@
  #endif /* _VIA_BIOS_H_ */
 Index: src/via_bandwidth.c
 ===================================================================
---- src/via_bandwidth.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_bandwidth.c	(.../trunk)	(revision 735)
+--- src/via_bandwidth.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_bandwidth.c	(.../trunk)	(revision 740)
 @@ -227,6 +227,10 @@
              ViaSeqMask(hwp, 0x18, 0x00, 0x80);
              break;
@@ -5228,8 +5412,8 @@
 Index: src/via_display.c
 ===================================================================
 --- src/via_display.c	(.../tags/release_0_2_903)	(revision 0)
-+++ src/via_display.c	(.../trunk)	(revision 735)
-@@ -0,0 +1,128 @@
++++ src/via_display.c	(.../trunk)	(revision 740)
+@@ -0,0 +1,145 @@
 +#ifdef HAVE_CONFIG_H
 +#include "config.h"
 +#endif
@@ -5358,10 +5542,27 @@
 +    else
 +        ViaSeqMask(hwp, 0x16, 0x40, 0x40);
 +}
++
++/*
++ * Sets the primary or secondary display stream on internal TMDS.
++ */
++void
++ViaDisplaySetStreamOnDFP(ScrnInfoPtr pScrn, Bool primary)
++{
++    vgaHWPtr hwp = VGAHWPTR(pScrn);
++
++    DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ViaDisplaySetStreamOnDFP\n"));
++
++    if (primary)
++        ViaCrtcMask(hwp, 0x99, 0x00, 0x10);
++    else
++        ViaCrtcMask(hwp, 0x99, 0x10, 0x10);
++}
++
 Index: src/via_regs.h
 ===================================================================
---- src/via_regs.h	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_regs.h	(.../trunk)	(revision 735)
+--- src/via_regs.h	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_regs.h	(.../trunk)	(revision 740)
 @@ -42,7 +42,7 @@
  #define VIA_MMIO_REGBASE        0x0
  #define VIA_MMIO_VGABASE        0x8000
@@ -5524,8 +5725,8 @@
  #define VIA_GEC_NOOP            0x00000000
 Index: src/via_accel.c
 ===================================================================
---- src/via_accel.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_accel.c	(.../trunk)	(revision 735)
+--- src/via_accel.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_accel.c	(.../trunk)	(revision 740)
 @@ -1,5 +1,5 @@
  /*
 - * Copyright 1998-2003 VIA Technologies, Inc. All Rights Reserved.
@@ -5679,7 +5880,7 @@
  
      /* Initialize the 2D engine registers to reset the 2D engine. */
 -    for (i = 0x04; i < 0x44; i += 4) {
-+    for (i = 0x04; i < 0x40; i += 4) {
++    for (i = 0x04; i <= 0x40; i += 4) {
          VIASETREG(i, 0x0);
      }
  
@@ -6452,8 +6653,8 @@
          ADVANCE_RING;
 Index: src/via_memory.c
 ===================================================================
---- src/via_memory.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_memory.c	(.../trunk)	(revision 735)
+--- src/via_memory.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_memory.c	(.../trunk)	(revision 740)
 @@ -52,7 +52,6 @@
   *	2  -  DRM
   */
@@ -6516,8 +6717,8 @@
          long size = pVia->FBFreeEnd / pVia->Bpp - offset;
 Index: src/via_vbe.c
 ===================================================================
---- src/via_vbe.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_vbe.c	(.../trunk)	(revision 735)
+--- src/via_vbe.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_vbe.c	(.../trunk)	(revision 740)
 @@ -95,7 +95,7 @@
      /* Set Active Device and translate BIOS byte definition. */
      if (pBIOSInfo->CrtActive)
@@ -6547,8 +6748,8 @@
      VBEDPMSSet(pVia->pVbe, mode);
 Index: src/via_cursor.c
 ===================================================================
---- src/via_cursor.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_cursor.c	(.../trunk)	(revision 735)
+--- src/via_cursor.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_cursor.c	(.../trunk)	(revision 740)
 @@ -1,5 +1,6 @@
  /*
 - * Copyright 1998-2003 VIA Technologies, Inc. All Rights Reserved.
@@ -7113,8 +7314,8 @@
  }
 Index: src/via_xvmc.c
 ===================================================================
---- src/via_xvmc.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_xvmc.c	(.../trunk)	(revision 735)
+--- src/via_xvmc.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_xvmc.c	(.../trunk)	(revision 740)
 @@ -114,11 +114,7 @@
  static int viaXvMCInterceptPutImage(ScrnInfoPtr, short, short, short, short,
                                      short, short, short, short, int,
@@ -7156,8 +7357,8 @@
  unsigned long
 Index: src/via_vt162x.h
 ===================================================================
---- src/via_vt162x.h	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_vt162x.h	(.../trunk)	(revision 735)
+--- src/via_vt162x.h	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_vt162x.h	(.../trunk)	(revision 740)
 @@ -926,6 +926,23 @@
        0x0, 0x0,
      },
@@ -7184,8 +7385,8 @@
        { 0x03, 0x00, 0x10, 0x1f, 0x03, 0x00, 0x00, 0xc9,  0x4c, 0x11, 0x7c, 0x00, 0x56, 0x57, 0x07, 0xbf,
 Index: src/via.h
 ===================================================================
---- src/via.h	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via.h	(.../trunk)	(revision 735)
+--- src/via.h	(.../tags/release_0_2_903)	(revision 740)
++++ src/via.h	(.../trunk)	(revision 740)
 @@ -561,9 +561,6 @@
  #define HQV_V_FILTER_DEFAULT    0x00420000
  #define HQV_H_FILTER_DEFAULT    0x00000040
@@ -7218,8 +7419,8 @@
  #define CHROMA_KEY_HIGH         0x00FFFFFF
 Index: src/via_priv.h
 ===================================================================
---- src/via_priv.h	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_priv.h	(.../trunk)	(revision 735)
+--- src/via_priv.h	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_priv.h	(.../trunk)	(revision 740)
 @@ -29,9 +29,7 @@
  #ifdef XF86DRI
  #include "via_drm.h"
@@ -7243,7 +7444,7 @@
 Index: src/via_timing.c
 ===================================================================
 --- src/via_timing.c	(.../tags/release_0_2_903)	(revision 0)
-+++ src/via_timing.c	(.../trunk)	(revision 735)
++++ src/via_timing.c	(.../trunk)	(revision 740)
 @@ -0,0 +1,398 @@
 +/*
 + * Copyright 2007-2008 Gabriel Mansi.
@@ -7645,8 +7846,8 @@
 +}
 Index: src/Makefile.am
 ===================================================================
---- src/Makefile.am	(.../tags/release_0_2_903)	(revision 735)
-+++ src/Makefile.am	(.../trunk)	(revision 735)
+--- src/Makefile.am	(.../tags/release_0_2_903)	(revision 740)
++++ src/Makefile.am	(.../trunk)	(revision 740)
 @@ -43,23 +43,29 @@
           via_ch7xxx.c \
           via_ch7xxx.h \
@@ -7679,8 +7880,8 @@
           via_vgahw.h \
 Index: src/via_dga.c
 ===================================================================
---- src/via_dga.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_dga.c	(.../trunk)	(revision 735)
+--- src/via_dga.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_dga.c	(.../trunk)	(revision 740)
 @@ -248,7 +248,7 @@
  
          pScrn->SwitchMode(index, pScrn->currentMode, 0);
@@ -7701,8 +7902,8 @@
              pVia->DGAOldDisplayWidth = pScrn->displayWidth;
 Index: src/via_id.c
 ===================================================================
---- src/via_id.c	(.../tags/release_0_2_903)	(revision 735)
-+++ src/via_id.c	(.../trunk)	(revision 735)
+--- src/via_id.c	(.../tags/release_0_2_903)	(revision 740)
++++ src/via_id.c	(.../trunk)	(revision 740)
 @@ -87,6 +87,7 @@
      {"Asustek K8V-MX",                        VIA_K8M800,  0x1043, 0x8129, VIA_DEVICE_CRT},
      {"Mitac 8399",                            VIA_K8M800,  0x1071, 0x8399, VIA_DEVICE_CRT | VIA_DEVICE_LCD | VIA_DEVICE_TV}, /* aka "Pogolinux Konabook 3100" */
@@ -7750,7 +7951,7 @@
      {"Packard Bell EasyNote XS",              VIA_CX700,   0x1631, 0xC201, VIA_DEVICE_LCD}, /* aka Everex Cloudbook CE1200V */
  
      /*** P4M890, VN890 ***/
-@@ -204,11 +209,16 @@
+@@ -204,11 +209,17 @@
      {"Asustek P5V-VM ULTRA",                  VIA_P4M890,  0x1043, 0x81B5, VIA_DEVICE_CRT},
      {"Asustek P5V-VM DH",                     VIA_P4M890,  0x1043, 0x81CE, VIA_DEVICE_CRT},
      {"Mitac 8615",                            VIA_P4M890,  0x1071, 0x8615, VIA_DEVICE_CRT | VIA_DEVICE_LCD},
@@ -7762,6 +7963,7 @@
  
 +    /*** VX800 ***/
 +    {"VIA Epia M700",                         VIA_VX800,   0x1106, 0x1122, VIA_DEVICE_CRT},
++    {"Samsung NC20",                          VIA_VX800,   0x144d, 0xc04e, VIA_DEVICE_CRT | VIA_DEVICE_LCD},
 +    {"Quanta DreamBook Light IL1",            VIA_VX800,   0x152d, 0x0771, VIA_DEVICE_CRT | VIA_DEVICE_LCD},
 +
      /* keep this */
@@ -7770,7 +7972,7 @@
 Index: src/via_timing.h
 ===================================================================
 --- src/via_timing.h	(.../tags/release_0_2_903)	(revision 0)
-+++ src/via_timing.h	(.../trunk)	(revision 735)
++++ src/via_timing.h	(.../trunk)	(revision 740)
 @@ -0,0 +1,51 @@
 +/*
 + * Copyright 2007-2008 Gabriel Mansi.


Index: xorg-x11-drv-openchrome.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-openchrome/F-10/xorg-x11-drv-openchrome.spec,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- xorg-x11-drv-openchrome.spec	19 Feb 2009 21:18:07 -0000	1.35
+++ xorg-x11-drv-openchrome.spec	21 Mar 2009 21:46:01 -0000	1.36
@@ -9,7 +9,7 @@
 Summary:	Xorg X11 openchrome video driver
 Name:		xorg-x11-drv-openchrome
 Version:	0.2.903
-Release:	5%{?dist}
+Release:	6%{?dist}
 URL:		http://www.openchrome.org
 License:	MIT
 Group:		User Interface/X Hardware Support
@@ -120,6 +120,12 @@
 
 
 %changelog
+* Thu Feb 19 2009 Xavier Bachelot <xavier at bachelot.org> - 0.2.903-6
+- Update to latest snapshot (svn 740) :
+  - Fix panel resolution detection fallback (RHBZ#491417).
+  - Fix 2D engine initialization.
+  - Add support for CX700 integrated TMDS encoder.
+
 * Thu Feb 19 2009 Xavier Bachelot <xavier at bachelot.org> - 0.2.903-5
 - Update to latest snapshot (svn 735) :
   - Fix green bars after VT switch (RHBZ#469504).




More information about the fedora-extras-commits mailing list