[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

X Strike Force XFree86 SVN commit: r1130 - in trunk/debian: . patches



Author: branden
Date: 2004-03-04 09:24:01 -0500 (Thu, 04 Mar 2004)
New Revision: 1130

Modified:
   trunk/debian/changelog
   trunk/debian/patches/000_stolen_from_HEAD_i830_driver.diff
Log:
Grab common.h counterpart portion of changeset incorporated into i830_driver.c
file after resyncing the latter file with CVS HEAD in previous commit.

Update changelog to note this change.


Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog	2004-03-04 14:02:06 UTC (rev 1129)
+++ trunk/debian/changelog	2004-03-04 14:24:01 UTC (rev 1130)
@@ -36,6 +36,10 @@
     - debian/shell-lib.sh
 
   * Grab from upstream CVS HEAD some fixes to the i810 driver's i830 support.
+      + For drivers that support 'Option "dri"' have the driver request
+        loading the dri module when this option is true.  This brings
+        it in to line with how other things are handled.  Other drivers
+        that have DRI support need to have the "dri" option added (David Dawes).
       + Update manpage to clarify that XVideo is only enabled by default when
         the configurations supports it.  (David Dawes)
       + Add a "VBERestore" option for the i830 part of the i810 driver, to
@@ -48,7 +52,7 @@
         (Closes: #226430)
     - debian/patches/000_stolen_from_HEAD_i830_driver.diff
 
- -- Branden Robinson <branden@debian.org>  Thu,  4 Mar 2004 08:58:26 -0500
+ -- Branden Robinson <branden@debian.org>  Thu,  4 Mar 2004 09:21:36 -0500
 
 xfree86 (4.3.0-3) unstable; urgency=medium
 

Modified: trunk/debian/patches/000_stolen_from_HEAD_i830_driver.diff
===================================================================
--- trunk/debian/patches/000_stolen_from_HEAD_i830_driver.diff	2004-03-04 14:02:06 UTC (rev 1129)
+++ trunk/debian/patches/000_stolen_from_HEAD_i830_driver.diff	2004-03-04 14:24:01 UTC (rev 1130)
@@ -4,6 +4,14 @@
 xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c @ 1.36
    415. Remove some static variables that should be per-screen (David Dawes).
 
+xc/programs/Xserver/hw/xfree86/drivers/i810/common.h @ 1.8
+xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c @ 1.37
+   451. For drivers that support 'Option "dri"' have the driver request
+        loading the dri module when this option is true.  This brings
+        it in to line with how other things are handled.  Other drivers
+        that have DRI support need to have the "dri" option added (David Dawes).
+
+xc/programs/Xserver/hw/xfree86/drivers/i810/common.h @ 1.9
 xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c @ 1.38
    453. Add gcc format checking for the X server's message and logging
         functions, and fix lots of associated warnings (David Dawes).
@@ -26,6 +34,10 @@
    515. When the i830 driver's checks for sufficient memory for tiled mode
         fail, don't later try to allocate with tiling enabled (David Dawes).
 
+xc/programs/Xserver/hw/xfree86/drivers/i810/common.h @ 1.10
+   731. Improve the i810 bitblt bug workaround, and re-enable the pixmap cache
+        at depth 24 (David Dawes).
+
 xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man @ 1.6
 xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h @ 1.12
 xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c @ 1.48
@@ -40,12 +52,135 @@
         to turn it back on in the i810 driver. This fixes some lockup
         problems found with some Dell BIOS' (Alan Hourihane, Alain Poirier).
 
---- xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h~	2004-03-04 08:08:59.000000000 -0500
-+++ xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h	2004-03-04 08:09:15.000000000 -0500
+Index: xc/programs/Xserver/hw/xfree86/drivers/i810/common.h
+===================================================================
+RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/common.h,v
+retrieving revision 1.6.2.1
+retrieving revision 1.10
+diff -u -r1.6.2.1 -r1.10
+--- xc/programs/Xserver/hw/xfree86/drivers/i810/common.h	21 Oct 2003 02:22:37 -0000	1.6.2.1
++++ xc/programs/Xserver/hw/xfree86/drivers/i810/common.h	3 Jan 2004 02:11:53 -0000	1.10
 @@ -27,7 +27,7 @@
  SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  
  **************************************************************************/
+-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/common.h,v 1.6.2.1 2003/10/21 02:22:37 dawes Exp $ */
++/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/common.h,v 1.10 2004/01/03 02:11:53 dawes Exp $ */
+ 
+ /*
+  * Authors:
+@@ -79,7 +79,11 @@
+ extern const char *I810ddcSymbols[];
+ extern const char *I810fbSymbols[];
+ extern const char *I810xaaSymbols[];
++#ifdef XF86DRI
++extern const char *I810driSymbols[];
++extern const char *I810drmSymbols[];
+ extern const char *I810shadowSymbols[];
++#endif
+ 
+ extern void I830DPRINTF_stub(const char *filename, int line,
+ 			     const char *function, const char *fmt, ...);
+@@ -111,7 +115,8 @@
+ 
+ #define OUT_RING(n) do {						\
+    if (I810_DEBUG & DEBUG_VERBOSE_RING)					\
+-      ErrorF( "OUT_RING %x: %x, (mask %x)\n", outring, n, ringmask);	\
++      ErrorF( "OUT_RING %lx: %x, (mask %x)\n",				\
++		(unsigned long)(outring), (unsigned int)(n), ringmask);	\
+    *(volatile unsigned int *)(virt + outring) = n;			\
+    outring += 4;							\
+    outring &= ringmask;							\
+@@ -227,21 +232,24 @@
+ #define OUTREG8(addr, val) do {						\
+    *(volatile CARD8 *)(RecPtr->MMIOBase  + (addr)) = (val);		\
+    if (I810_DEBUG&DEBUG_VERBOSE_OUTREG) {				\
+-      ErrorF("OUTREG8(0x%x, 0x%x) in %s\n", addr, val, FUNCTION_NAME);	\
++      ErrorF("OUTREG8(0x%lx, 0x%lx) in %s\n", (unsigned long)(addr),	\
++		(unsigned long)(val), FUNCTION_NAME);			\
+    }									\
+ } while (0)
+ 
+ #define OUTREG16(addr, val) do {					\
+    *(volatile CARD16 *)(RecPtr->MMIOBase + (addr)) = (val);		\
+    if (I810_DEBUG&DEBUG_VERBOSE_OUTREG) {				\
+-      ErrorF("OUTREG16(0x%x, 0x%x) in %s\n", addr, val, FUNCTION_NAME);	\
++      ErrorF("OUTREG16(0x%lx, 0x%lx) in %s\n", (unsigned long)(addr),	\
++		(unsigned long)(val), FUNCTION_NAME);			\
+    }									\
+ } while (0)
+ 
+ #define OUTREG(addr, val) do {						\
+    *(volatile CARD32 *)(RecPtr->MMIOBase + (addr)) = (val);		\
+    if (I810_DEBUG&DEBUG_VERBOSE_OUTREG) {				\
+-      ErrorF("OUTREG(0x%x, 0x%x) in %s\n", addr, val, FUNCTION_NAME);	\
++      ErrorF("OUTREG(0x%lx, 0x%lx) in %s\n", (unsigned long)(addr),	\
++		(unsigned long)(val), FUNCTION_NAME);			\
+    }									\
+ } while (0)
+ 
+@@ -249,8 +257,10 @@
+  * preprocessor symbol, and equal to zero.
+  */
+ #if 1
++#ifndef I810_DEBUG
+ #define I810_DEBUG 0
+ #endif
++#endif
+ #ifndef I810_DEBUG
+ #warning "Debugging enabled - expect reduced performance"
+ extern int I810_DEBUG;
+Index: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man
+===================================================================
+RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man,v
+retrieving revision 1.3.2.1
+retrieving revision 1.6
+diff -u -r1.3.2.1 -r1.6
+--- xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man	21 Oct 2003 02:22:37 -0000	1.3.2.1
++++ xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man	7 Jan 2004 03:43:19 -0000	1.6
+@@ -1,4 +1,4 @@
+-.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man,v 1.3.2.1 2003/10/21 02:22:37 dawes Exp $ 
++.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man,v 1.6 2004/01/07 03:43:19 dawes Exp $ 
+ .\" shorthand for double quote that works everywhere.
+ .ds q \N'34'
+ .TH I810 __drivermansuffix__ __vendorversion__
+@@ -116,6 +116,13 @@
+ .B Options
+ are supported for the 830M and later chipsets:
+ .TP
++.BI "Option \*qVBERestore\*q \*q" boolean \*q
++Enable or disable the use of VBE save/restore for saving and restoring
++the initial text mode.  This is disabled by default because it causes
++lockups on some platforms.  However, there are some cases where it must
++enabled for the correct restoration of the initial video mode.  If you are
++having a problem with that, try enabling this option.  Default: Disabled.
++.TP
+ .BI "Option \*qVideoKey\*q \*q" integer \*q
+ This is the same as the
+ .B \*qColorKey\*q
+@@ -123,8 +130,8 @@
+ other drivers.
+ .TP
+ .BI "Option \*qXVideo\*q \*q" boolean \*q
+-Disable or enable XVideo support.
+-Default: XVideo is enabled for configurations where it is supported.
++Disable or enable XVideo support.  Default: XVideo is enabled for
++configurations where it is supported.
+ 
+ 
+ .SH "SEE ALSO"
+Index: xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h
+===================================================================
+RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h,v
+retrieving revision 1.7.2.1
+retrieving revision 1.13
+diff -u -r1.7.2.1 -r1.13
+--- xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h	21 Oct 2003 02:22:38 -0000	1.7.2.1
++++ xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h	20 Feb 2004 00:06:00 -0000	1.13
+@@ -27,7 +27,7 @@
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ 
+ **************************************************************************/
 -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h,v 1.7.2.1 2003/10/21 02:22:38 dawes Exp $ */
 +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h,v 1.13 2004/02/20 00:06:00 alanh Exp $ */
  
@@ -90,8 +225,14 @@
 +#define DRAM_WRITE    0x33330000
  
  #endif /* _I830_H_ */
---- xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c~	2004-03-04 08:09:04.000000000 -0500
-+++ xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c	2004-03-04 08:09:18.000000000 -0500
+Index: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c
+===================================================================
+RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c,v
+retrieving revision 1.27.2.3
+retrieving revision 1.51
+diff -u -r1.27.2.3 -r1.51
+--- xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c	19 Dec 2003 23:41:32 -0000	1.27.2.3
++++ xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c	25 Feb 2004 12:53:14 -0000	1.51
 @@ -1,4 +1,4 @@
 -/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c,v 1.27.2.3 2003/12/19 23:41:32 dawes Exp $ */
 +/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c,v 1.51 2004/02/25 12:53:14 eich Exp $ */
@@ -393,7 +534,7 @@
  			     "\tReduce VideoRam amount to avoid this!\n",
  			     pI830->FbMapSize / 1024,
  			     -pI830->MemoryAperture.Size / 1024);
-@@ -2034,6 +2145,16 @@
+@@ -2034,7 +2145,25 @@
     VBEFreeVBEInfo(pI830->vbeInfo);
     vbeFree(pVbe);
  
@@ -408,9 +549,18 @@
 +	      pI830->vbeRestoreWorkaround ? "enabled" : "disabled");
 +      
  #if defined(XF86DRI)
++   /* Load the dri module if requested. */
++   if (xf86ReturnOptValBool(pI830->Options, OPTION_DRI, FALSE) &&
++       !pI830->directRenderingDisabled) {
++      if (xf86LoadSubModule(pScrn, "dri")) {
++	 xf86LoaderReqSymLists(I810driSymbols, I810drmSymbols, NULL);
++      }
++   }
++
     if (!pI830->directRenderingDisabled) {
        if (!xf86LoadSubModule(pScrn, "shadow")) {
-@@ -2061,26 +2182,26 @@
+ 	 PreInitCleanup(pScrn);
+@@ -2061,26 +2190,26 @@
     /* Check first for page table errors */
     temp = INREG(PGE_ERR);
     if (temp != 0) {
@@ -441,7 +591,7 @@
  		 "ring buffer not flushed\n", head, tail);
        errors++;
     }
-@@ -2165,7 +2286,7 @@
+@@ -2165,7 +2294,7 @@
     if ((pI830->LpRing.mem.Start & I830_RING_START_MASK) !=
         pI830->LpRing.mem.Start) {
        xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
@@ -450,7 +600,7 @@
  		 "mask (%x)\n", pI830->LpRing.mem.Start, I830_RING_START_MASK);
     }
     /* Don't care about the old value.  Reserved bits must be zero anyway. */
-@@ -2175,7 +2296,7 @@
+@@ -2175,7 +2304,7 @@
     if (((pI830->LpRing.mem.Size - 4096) & I830_RING_NR_PAGES) !=
         pI830->LpRing.mem.Size - 4096) {
        xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
@@ -459,7 +609,7 @@
  		 "mask (%x)\n", pI830->LpRing.mem.Size - 4096,
  		 I830_RING_NR_PAGES);
     }
-@@ -2231,10 +2352,6 @@
+@@ -2231,10 +2360,6 @@
     vgaHWUnlock(hwp);
     vgaHWSave(pScrn, vgaReg, VGA_SR_FONTS);
  
@@ -470,7 +620,7 @@
     pVesa = pI830->vesa;
     /*
      * This save/restore method doesn't work for 845G BIOS, or for some
-@@ -2246,7 +2363,7 @@
+@@ -2246,7 +2371,7 @@
      * registers, turning off the irq & breaking the kernel module
      * behaviour.
      */
@@ -479,7 +629,7 @@
        CARD16 imr = INREG16(IMR);
        CARD16 ier = INREG16(IER);
        CARD16 hwstam = INREG16(HWSTAM);
-@@ -2442,6 +2559,22 @@
+@@ -2442,6 +2567,22 @@
     }
  
     /*
@@ -502,7 +652,7 @@
      * The BIOS may not set a scanline pitch that would require more video
      * memory than it's aware of.  We check for this later, and set it
      * explicitly if necessary.
-@@ -2545,10 +2678,10 @@
+@@ -2545,10 +2686,10 @@
      * Print out the PIPEACONF and PIPEBCONF registers.
      */
     temp = INREG(PIPEACONF);
@@ -515,7 +665,7 @@
     }
  
  #if PRINT_MODE_INFO
-@@ -2593,7 +2726,7 @@
+@@ -2593,7 +2734,7 @@
        if (temp / pI830->cpp != pScrn->displayWidth) {
  	 xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
  		    "Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(i),
@@ -524,7 +674,7 @@
  	 OUTREG(stridereg, pScrn->displayWidth * pI830->cpp);
  	 /* Trigger update */
  	 temp = INREG(basereg);
-@@ -2891,7 +3024,8 @@
+@@ -2891,7 +3032,8 @@
      * first, then re-initialise the VBE information.
      */
     pI830->pVbe = VBEInit(NULL, pI830->pEnt->index);
@@ -534,7 +684,7 @@
     if (!pI830->pVbe)
        return FALSE;
     pI830->vbeInfo = VBEGetVBEInfo(pI830->pVbe);
-@@ -2990,9 +3124,13 @@
+@@ -2990,9 +3132,13 @@
     if (pI830->directRenderingEnabled)
        pI830->directRenderingEnabled = I830DRIScreenInit(pScreen);
  
@@ -550,7 +700,7 @@
  
  #else
     pI830->directRenderingEnabled = FALSE;
-@@ -3026,6 +3164,9 @@
+@@ -3026,6 +3172,9 @@
     pScrn->memPhysBase = (unsigned long)pI830->FbBase;
     pScrn->fbOffset = pI830->FrontBuffer.Start;
  
@@ -560,7 +710,7 @@
     vgaHWSetMmioFuncs(hwp, pI830->MMIOBase, 0);
     vgaHWGetIOBase(hwp);
     DPRINTF(PFX, "assert( if(!vgaHWMapMem(pScrn)) )\n");
-@@ -3107,9 +3248,7 @@
+@@ -3107,9 +3256,7 @@
        return FALSE;
     }
  
@@ -570,7 +720,7 @@
  
  #ifdef I830_XV
     /* Init video */
-@@ -3163,34 +3302,15 @@
+@@ -3163,34 +3310,15 @@
     ScrnInfoPtr pScrn;
     I830Ptr pI830;
     vbeInfoPtr pVbe;
@@ -583,15 +733,15 @@
  
     DPRINTF(PFX, "I830BIOSAdjustFrame: y = %d (+ %d), x = %d (+ %d)\n",
 -	   x, xoffset, y, yoffset);
-+	   x, pI830->xoffset, y, pI830->yoffset);
- 
+-
 -   /* Calculate the offsets once per server generation. */
 -   if (adjustGeneration != serverGeneration) {
 -      adjustGeneration = serverGeneration;
 -      xoffset = (pScrn->fbOffset / pI830->cpp) % pScrn->displayWidth;
 -      yoffset = (pScrn->fbOffset / pI830->cpp) / pScrn->displayWidth;
 -   }
--
++	   x, pI830->xoffset, y, pI830->yoffset);
+ 
 -   if (OffsetFrame) {
 -      y = (pI830->FbMemBox.y2 - pScrn->currentMode->VDisplay);
 -      ErrorF("AdjustFrame: OffsetFrame is set, setting y to %d\n", y);
@@ -607,7 +757,7 @@
  }
  
  static void
-@@ -3266,7 +3386,6 @@
+@@ -3266,7 +3394,6 @@
  {
     ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
     I830Ptr pI830 = I830PTR(pScrn);
@@ -615,7 +765,7 @@
  
     DPRINTF(PFX, "Enter VT\n");
  
-@@ -3274,14 +3393,15 @@
+@@ -3274,14 +3401,15 @@
        return FALSE;
  
     CheckInheritedState(pScrn);
@@ -634,7 +784,7 @@
        SaveHWState(pScrn);
     }
     ResetState(pScrn, FALSE);
-@@ -3347,11 +3467,6 @@
+@@ -3347,11 +3475,6 @@
        } while (_head != _tail);
     }
  
@@ -646,7 +796,7 @@
  #ifndef BINDUNBIND
  #define BINDUNBIND 0
  #endif
-@@ -3498,7 +3613,7 @@
+@@ -3498,7 +3621,7 @@
     return (*pScreen->CloseScreen) (scrnIndex, pScreen);
  }
  
@@ -655,42 +805,3 @@
  I830ValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags)
  {
     if (mode->Flags & V_INTERLACE) {
-Index: programs/Xserver/hw/xfree86/drivers/i810/i810.man
-===================================================================
-RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man,v
-retrieving revision 1.3.2.1
-retrieving revision 1.6
-diff -u -u -r1.3.2.1 -r1.6
---- programs/Xserver/hw/xfree86/drivers/i810/i810.man	21 Oct 2003 02:22:37 -0000	1.3.2.1
-+++ programs/Xserver/hw/xfree86/drivers/i810/i810.man	7 Jan 2004 03:43:19 -0000	1.6
-@@ -1,4 +1,4 @@
--.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man,v 1.3.2.1 2003/10/21 02:22:37 dawes Exp $ 
-+.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man,v 1.6 2004/01/07 03:43:19 dawes Exp $ 
- .\" shorthand for double quote that works everywhere.
- .ds q \N'34'
- .TH I810 __drivermansuffix__ __vendorversion__
-@@ -116,6 +116,13 @@
- .B Options
- are supported for the 830M and later chipsets:
- .TP
-+.BI "Option \*qVBERestore\*q \*q" boolean \*q
-+Enable or disable the use of VBE save/restore for saving and restoring
-+the initial text mode.  This is disabled by default because it causes
-+lockups on some platforms.  However, there are some cases where it must
-+enabled for the correct restoration of the initial video mode.  If you are
-+having a problem with that, try enabling this option.  Default: Disabled.
-+.TP
- .BI "Option \*qVideoKey\*q \*q" integer \*q
- This is the same as the
- .B \*qColorKey\*q
-@@ -123,8 +130,8 @@
- other drivers.
- .TP
- .BI "Option \*qXVideo\*q \*q" boolean \*q
--Disable or enable XVideo support.
--Default: XVideo is enabled for configurations where it is supported.
-+Disable or enable XVideo support.  Default: XVideo is enabled for
-+configurations where it is supported.
- 
- 
- .SH "SEE ALSO"



Reply to: