Subject: xsrc/23386: xfree86 i810(4) wscons VTY switch fix pull-up request
To: None <gnats-bugs@gnats.NetBSD.org>
From: None <lavalamp@spiritual-machines.org>
List: netbsd-bugs
Date: 11/07/2003 05:31:48
>Number:         23386
>Category:       xsrc
>Synopsis:       xfree86 i810(4) wscons VTY switch fix pull-up request
>Confidential:   no
>Severity:       non-critical
>Priority:       high
>Responsible:    xsrc-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Nov 07 05:32:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Brian A. Seklecki
>Release:        NetBSD 1.6ZE
>Organization:
Spiritual Machines
>Environment:
-bash-2.05b# uname -a
NetBSD lovebox 1.6ZE NetBSD 1.6ZE (BLACKPEARL) #4: Wed Nov  5 14:35:44 EST 2003  root@lovebox:/usr/src/sys/arch/i386/compile/BLACKPEARL i386
>Description:
the i810(4) maintainer for XFree pulled some of thier -rHEAD changes back into thier -rxf_430_branch and we should in-tern pull those into our xsr module::

-----------------------------------

CVSROOT:        /home/x-cvs
Module name:    xc
Changes by:     dawes@public.xfree86.org.       03/10/20 19:22:40

Log message:
  1008. Fix some i830+ VT switch/exit crashes (David Dawes, Egbert Eich).
  + some comment, formatting and doc updates

Modified files:
      xc/programs/Xserver/hw/xfree86/:  Tag: xf-4_3-branch
        CHANGELOG 
      xc/programs/Xserver/hw/xfree86/drivers/i810/:     Tag: xf-4_3-branch
        common.h i810.h i810.man i830.h i830_cursor.c i830_dri.c 
        i830_dri.h i830_driver.c i830_memory.c i830_video.c 
  
  Revision      Changes    Path
  3.2588.2.31   +2 -1      xc/programs/Xserver/hw/xfree86/CHANGELOG
  1.6.2.1       +2 -2      xc/programs/Xserver/hw/xfree86/drivers/i810/common.h
  1.38.2.1      +2 -2      xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h
  1.3.2.1       +71 -9     xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man
  1.7.2.1       +2 -2      xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h
  1.6.2.1       +2 -2      xc/programs/Xserver/hw/xfree86/drivers/i810/i830_cursor.c
  1.12.2.1      +5 -2      xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.c
  1.5.2.1       +2 -2      xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.h
  1.27.2.2      +38 -34    xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c
  1.6.2.1       +3 -3      xc/programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c
  1.6.2.1       +7 -7      xc/programs/Xserver/hw/xfree86/drivers/i810/i830_video.c


-----------------------------------
>How-To-Repeat:
Use X on a laptop running NetBSD.  Try switching terminals w/ an i830m chipset.  Watch your console die.
>Fix:
against my better judgement i'm "pasting" all the diffs here.  If these do not format, they are included as attachments in my email to tech-x11@netbsd.org:

--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/common.h	2003-10-20 22:22:37.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/common.h	2003-02-28 08:20:11.000000000 -0500
@@ -27,12 +27,12 @@
 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.6 2003/02/06 04:18:04 dawes Exp $ */
 
 /*
  * Authors:
  *   Keith Whitwell <keith@tungstengraphics.com>
- *   David Dawes <dawes@xfree86.org>
+ *   David Dawes <dawes@tungstengraphics.com>
  *
  */
 

--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i810.h	2003-10-20 22:22:37.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h	2003-02-28 08:20:11.000000000 -0500
@@ -27,12 +27,12 @@
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 **************************************************************************/
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h,v 1.38.2.1 2003/10/21 02:22:37 dawes Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h,v 1.38 2003/02/26 04:19:36 dawes Exp $ */
 
 /*
  * Authors:
  *   Keith Whitwell <keith@tungstengraphics.com>
- *   David Dawes <dawes@xfree86.org>
+ *   David Dawes <dawes@tungstengraphics.com>
  *
  */
 
--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i810.man	2003-10-20 22:22:37.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.man	2003-02-28 08:20:11.000000000 -0500
@@ -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.3 2003/02/17 19:19:02 dawes Exp $ 
 .\" shorthand for double quote that works everywhere.
 .ds q \N'34'
 .TH I810 __drivermansuffix__ __vendorversion__
@@ -16,12 +16,9 @@
 .B i810
 is an XFree86 driver for Intel integrated graphics chipsets.
 The driver supports depths 8, 15, 16 and 24.  All visual types are
-supported in depth 8.  For the i810/i815 other depths support the
-TrueColor and DirectColor visuals.  For the 830M and later, only the
-TrueColor visual is supported for depths greater than 8.  The driver
-supports hardware accelerated 3D via the Direct Rendering Infrastructure
-(DRI), but only in depth 16 for the i810/i815 and depths 16 and 24 for
-the 830M and later.
+supported in depth 8, other depths only support TrueColor.  The driver
+supports hardware accelerated 3D via the Direct Rendering Infrastructure (DRI),
+but only in depth 16 for the i810/i815 and depths 16 and 24 for later chipsets.
 .SH SUPPORTED HARDWARE
 .B i810
 supports the i810, i810-DC100, i810e, i815, 830M, 845G, 852GM, 855GM,
@@ -33,16 +30,7 @@
 driver.
 .PP
 The Intel 8xx family of integrated graphics chipsets has a unified memory
-architecture and uses system memory for video ram.  For the i810 and
-i815 familiy of chipset, operating system support for allocating system
-memory for video use is required in order to use this driver.  For the
-830M and later, this is required in order for the driver to use more
-video ram than has been pre-allocated at boot time by the BIOS.  This
-is usually achieved with an "agpgart" or "agp" kernel driver.  Linux,
-and recent versions of FreeBSD, OpenBSD and NetBSD have such kernel
-drivers available.
-.PP
-By default 8 Megabytes
+architecture and uses system memory for video ram.  By default 8 Megabytes
 of system memory are used for graphics.  For the 830M and later, the
 default is 8 Megabytes when DRI is not enabled and 32 Megabytes with
 DRI is enabled.  This amount may be changed with the
@@ -50,18 +38,8 @@
 entry in the config file
 .B "Device"
 section.  It may be set to any reasonable value up to 64MB for older
-chipsets or 128MB for newer chipets.  It is advisable to check the XFree86
-log file to check if any features have been disabled because of insufficient
-video memory.  In particular, DRI support or tiling mode may be disabled
-with insufficient video memory.  Either of these being disabled will
-reduce performance for 3D applications.  Note however, that increasing
-this value too much will reduce the amount of system memory available
-for other applications.
-.PP
-The driver makes use of the video BIOS to program video modes for the 830M
-and later.  This limits the video modes that can be used to those provided
-by the video BIOS, and to those that will fit into the amount of video memory
-that the video BIOS is aware of.
+chipsets or 128MB for newer chipets.  Note that increasing this value
+will reduce the amount of system memory available for other applications.
 .PP
 The following driver
 .B Options
@@ -72,8 +50,7 @@
 .TP
 .BI "Option \*qSWCursor\*q \*q" boolean \*q
 Disable or enable software cursor.  Default: software cursor is disable
-and a hardware cursor is used for configurations where the hardware cursor
-is available.
+and a hardware cursor is used.
 .TP
 .BI "Option \*qColorKey\*q \*q" integer \*q
 This sets the default pixel value for the YUV video overlay key.
@@ -84,47 +61,8 @@
 2D acceleration and video.  Decreasing this amount leaves more for 3D
 textures.  Increasing it can improve 2D performance at the expense of
 3D performance.
-Default: depends on the resolution, depth, and available video memory.  The
-driver attempts to allocate at least enough to hold two DVD-sized YUV buffers
-by default.  The default used for a specific configuration can be found
-by examining the XFree86 log file.
-.TP
-.BI "Option \*qDRI\*q \*q" boolean \*q
-Disable or enable DRI support.
-Default: DRI is enabled for configurations where it is supported.
+Default: 256 to 768 depending on the resolution and depth.
 
-.PP
-The following driver
-.B Options
-are supported for the i810 and i815 chipsets:
-.TP
-.BI "Option \*qDDC\*q \*q" boolean \*q
-Disable or enable DDC support.
-Default: enabled.
-.TP
-.BI "Option \*qDac6Bit\*q \*q" boolean \*q
-Enable or disable 6-bits per RGB for 8-bit modes.
-Default: 8-bits per RGB for 8-bit modes.
-.TP
-.BI "Option \*qXvMCSurfaces\*q \*q" integer \*q
-This option enables XvMC.  The integer parameter specifies the number of
-surfaces to use.  Valid values are 6 and 7.
-Default: XvMC is disabled.
-
-.PP
-The following driver
-.B Options
-are supported for the 830M and later chipsets:
-.TP
-.BI "Option \*qVideoKey\*q \*q" integer \*q
-This is the same as the
-.B \*qColorKey\*q
-option described above.  It is provided for compatibility with most
-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.
 
 
 .SH "SEE ALSO"



--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i830.h	2003-10-20 22:22:38.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h	2003-02-28 08:20:11.000000000 -0500
@@ -27,12 +27,12 @@
 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.7 2003/01/28 22:47:09 dawes Exp $ */
 
 /*
  * Authors:
  *   Keith Whitwell <keith@tungstengraphics.com>
- *   David Dawes <dawes@xfree86.org>
+ *   David Dawes <dawes@tungstengraphics.com>
  *
  */
 


--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i830_cursor.c	2003-10-20 22:22:38.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_cursor.c	2003-02-28 08:20:11.000000000 -0500
@@ -26,7 +26,7 @@
 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 **************************************************************************/
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_cursor.c,v 1.6.2.1 2003/10/21 02:22:38 dawes Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_cursor.c,v 1.6 2002/12/18 15:49:01 dawes Exp $ */
 
 /*
  * Reformatted with GNU indent (2.2.8), using the following options:
@@ -44,7 +44,7 @@
 /*
  * Authors:
  *   Keith Whitwell <keith@tungstengraphics.com>
- *   David Dawes <dawes@xfree86.org>
+ *   David Dawes <dawes@tungstengraphics.com>
  *
  */
 


--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.c	2003-10-20 22:22:38.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.c	2003-02-28 08:20:11.000000000 -0500
@@ -1,4 +1,4 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.c,v 1.12.2.1 2003/10/21 02:22:38 dawes Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.c,v 1.12 2003/02/08 21:26:57 dawes Exp $ */
 /**************************************************************************
 
 Copyright 2001 VA Linux Systems Inc., Fremont, California.
@@ -42,7 +42,7 @@
 
 /*
  * Authors: Jeff Hartmann <jhartmann@valinux.com>
- *          David Dawes <dawes@xfree86.org>
+ *          David Dawes <dawes@tungstengraphics.com>
  *          Keith Whitwell <keith@tungstengraphics.com>
  */
 
@@ -823,9 +823,6 @@
    ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
    I830Ptr pI830 = I830PTR(pScrn);
 
-   if (!pScrn->vtSema)
-      return;
-
    if (syncType == DRI_3D_SYNC &&
        oldContextType == DRI_2D_CONTEXT && newContextType == DRI_2D_CONTEXT) {
       ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];


--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.h	2003-10-20 22:22:38.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.h	2003-02-28 08:20:11.000000000 -0500
@@ -1,4 +1,4 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.h,v 1.5.2.1 2003/10/21 02:22:38 dawes Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.h,v 1.5 2002/12/10 01:27:05 dawes Exp $ */
 
 #ifndef _I830_DRI_H
 #define _I830_DRI_H
@@ -131,7 +131,7 @@
    unsigned int TexState3[I830_TEX_SETUP_SIZE];
    unsigned int TexBlendState3[I830_TEXBLEND_SIZE];
    unsigned int TexBlendStateWordsUsed3;
-
+   
    unsigned int StippleState[I830_STP_SETUP_SIZE];
 } I830SAREARec, *I830SAREAPtr;
 



--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c	2003-10-20 22:22:38.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c	2003-02-28 08:20:11.000000000 -0500
@@ -1,4 +1,4 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c,v 1.27.2.2 2003/10/21 02:22:38 dawes Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c,v 1.27 2003/02/14 17:12:42 dawes Exp $ */
 /**************************************************************************
 
 Copyright 2001 VA Linux Systems Inc., Fremont, California.
@@ -43,7 +43,7 @@
 /*
  * Authors: Jeff Hartmann <jhartmann@valinux.com>
  *          Abraham van der Merwe <abraham@2d3d.co.za>
- *          David Dawes <dawes@xfree86.org>
+ *          David Dawes <dawes@tungstengraphics.com>
  */
 
 /*
@@ -1562,7 +1562,7 @@
 		    "VideoRam reduced to %d kByte (limited to aperture size)\n",
 		    pScrn->videoRam);
    }
-
+      
    if (mem > 0) {
       /*
        * If the reserved (BIOS accessible) memory is less than the desired
@@ -1589,11 +1589,13 @@
       else 
 	 pI830->newBIOSMemSize =
 			KB(ROUND_DOWN_TO(pScrn->videoRam - reserve, 64));
+
       if (pI830->vbeInfo->TotalMemory * 64 < pI830->newBIOSMemSize / 1024) {
 
 	 xf86DrvMsg(pScrn->scrnIndex, X_INFO,
 		    "Will attempt to tell the BIOS that there is "
 		    "%d kB VideoRAM\n", pI830->newBIOSMemSize / 1024);
+
 	 if (SaveBIOSMemSize(pScrn)) {
 	    pI830->overrideBIOSMemSize = TRUE;
 	    SetBIOSMemSize(pScrn, pI830->newBIOSMemSize);
@@ -1675,8 +1677,8 @@
    else
       pI830->CursorNeedsPhysical = FALSE;
 
-   /* Force ring buffer to be in low memory for the 845G and later. */
-   if (IS_845G(pI830) || IS_I85X(pI830) || IS_I865G(pI830))
+   /* Force ring buffer to be in low memory for the 845G. */
+   if (IS_845G(pI830))
       pI830->NeedRingBufferLow = TRUE;
 
    /*
@@ -2236,17 +2238,16 @@
 #endif
 
    pVesa = pI830->vesa;
+   /* This save/restore method doesn't work for 845G BIOS */
    /*
-    * This save/restore method doesn't work for 845G BIOS, or for some
-    * other platforms.  Enable it in all cases.
-    */
-   /*
+    * XXX If it's fixed in production versions, this could be removed.
+    *
     * KW: This may have been because of the behaviour I've found on my
     * board: The 'save' command actually modifies the interrupt
     * registers, turning off the irq & breaking the kernel module
     * behaviour.
     */
-   if (!I845G_VBE_WORKAROUND) {
+   if (!I845G_VBE_WORKAROUND || !IS_845G(pI830)) {
       CARD16 imr = INREG16(IMR);
       CARD16 ier = INREG16(IER);
       CARD16 hwstam = INREG16(HWSTAM);
@@ -3256,8 +3257,6 @@
    RestoreHWState(pScrn);
    RestoreBIOSMemSize(pScrn);
    I830UnbindGARTMemory(pScrn);
-   if (pI830->AccelInfoRec)
-      pI830->AccelInfoRec->NeedToSync = FALSE;
 }
 
 /*
@@ -3387,36 +3386,35 @@
 
    DPRINTF(PFX, "I830BIOSSaveScreen: %d, on is %s\n", mode, BOOLTOSTRING(on));
 
-   if (pScrn->vtSema) {
-      for (i = 0; i < MAX_DISPLAY_PIPES; i++) {
-	 if (i == 0) {
-	    ctrl = DSPACNTR;
-	    base = DSPABASE;
-	 } else {
-	    ctrl = DSPBCNTR;
-	    base = DSPBADDR;
-	 }
-	 if (pI830->planeEnabled[i]) {
-	    temp = INREG(ctrl);
-	    if (on)
-	       temp |= DISPLAY_PLANE_ENABLE;
-	    else
-	       temp &= ~DISPLAY_PLANE_ENABLE;
-	    OUTREG(ctrl, temp);
-	    /* Flush changes */
-	    temp = INREG(base);
-	    OUTREG(base, temp);
-	 }
+   for (i = 0; i < MAX_DISPLAY_PIPES; i++) {
+      if (i == 0) {
+	 ctrl = DSPACNTR;
+	 base = DSPABASE;
+      } else {
+	 ctrl = DSPBCNTR;
+	 base = DSPBADDR;
       }
-
-      if (pI830->CursorInfoRec && !pI830->SWCursor && pI830->cursorOn) {
+      if (pI830->planeEnabled[i]) {
+	 temp = INREG(ctrl);
 	 if (on)
-	    pI830->CursorInfoRec->ShowCursor(pScrn);
+	    temp |= DISPLAY_PLANE_ENABLE;
 	 else
-	    pI830->CursorInfoRec->HideCursor(pScrn);
-	 pI830->cursorOn = TRUE;
+	    temp &= ~DISPLAY_PLANE_ENABLE;
+	 OUTREG(ctrl, temp);
+	 /* Flush changes */
+	 temp = INREG(base);
+	 OUTREG(base, temp);
       }
    }
+
+   if (pI830->CursorInfoRec && !pI830->SWCursor && pI830->cursorOn) {
+      if (on)
+	 pI830->CursorInfoRec->ShowCursor(pScrn);
+      else
+	 pI830->CursorInfoRec->HideCursor(pScrn);
+      pI830->cursorOn = TRUE;
+   }
+
    return TRUE;
 }
 
@@ -3586,5 +3584,3 @@
    pScrn->ValidMode = I830ValidMode;
    pScrn->PMEvent = I830PMEvent;
 }
-
-


--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c	2003-10-20 22:22:39.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c	2003-02-28 08:20:11.000000000 -0500
@@ -1,4 +1,4 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c,v 1.6.2.1 2003/10/21 02:22:39 dawes Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c,v 1.6 2003/02/08 02:26:56 dawes Exp $ */
 /**************************************************************************
 
 Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
@@ -44,7 +44,7 @@
 /*
  * Authors:
  *   Keith Whitwell <keith@tungstengraphics.com>
- *   David Dawes <dawes@xfree86.org>
+ *   David Dawes <dawes@tungstengraphics.com>
  *
  */
 
@@ -1298,7 +1298,7 @@
 		    "MakeTiles failed for the back buffer.\n");
       }
    }
-
+	
 }
 #endif /* XF86DRI */
 



--- xc-xf-4_3-branch/programs/Xserver/hw/xfree86/drivers/i810/i830_video.c	2003-10-20 22:22:39.000000000 -0400
+++ /usr/xsrc/xfree/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_video.c	2003-02-28 08:20:11.000000000 -0500
@@ -1,6 +1,6 @@
 #define VIDEO_DEBUG 0
 /***************************************************************************
-
+ 
 Copyright 2000 Intel Corporation.  All Rights Reserved. 
 
 Permission is hereby granted, free of charge, to any person obtaining a 
@@ -24,7 +24,7 @@
 THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 **************************************************************************/
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_video.c,v 1.6.2.1 2003/10/21 02:22:39 dawes Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_video.c,v 1.6 2003/02/06 04:18:05 dawes Exp $ */
 
 /*
  * Reformatted with GNU indent (2.2.8), using the following options:
@@ -46,7 +46,7 @@
  *
  * Authors: 
  *	Alan Hourihane <alanh@tungstengraphics.com>
- *	David Dawes <dawes@xfree86.org>
+ *	David Dawes <dawes@tungstengraphics.com>
  *
  * Derived from i810 Xv driver:
  *
@@ -1013,7 +1013,7 @@
 	       SetCoeffRegs(&coeffs[i][tap2Fix], mantSize + 2, pCoeff, pos);
 	    else
 	       SetCoeffRegs(&coeffs[i][tap2Fix], mantSize, pCoeff, pos);
-
+	 
 	    sum = 0.0;
 	    for (j = 0; j < taps; j++)
 	       sum += coeffs[i][j];
@@ -1175,7 +1175,7 @@
 	 scaleChanged = TRUE;
 	 overlay->YRGBSCALE = newval;
       }
-
+		
       newval = (xscaleIntUV << 16) | ((xscaleFractUV & 0xFFF) << 3) |
 	    ((yscaleFractUV & 0xFFF) << 20);
       if (newval != overlay->UVSCALE) {
@@ -1190,14 +1190,14 @@
       }
 
       /* Recalculate coefficients if the scaling changed. */
-
+	
       /*
        * Only Horizontal coefficients so far.
        */
       if (scaleChanged) {
 	 double fCutoffY;
 	 double fCutoffUV;
-
+	 
 	 fCutoffY = xscaleFract / 4096.0;
 	 fCutoffUV = xscaleFractUV / 4096.0;
 



















>Release-Note:
>Audit-Trail:
>Unformatted: