On Fre, 2002-01-25 at 06:29, Al Tobey wrote:

>   I am trying to configure a radeon 7000 (OEM, if that matters) to drive
> my Sun 20D10 monitor.  I'm running X 4.2.0 and everything works fine on
> a normal monitor.  The adapter cable for the Sun monitor has the
> capacitor hack in it to make it work on composite sync, which worked
> fine with an ATI Mach64 with 'composite_sync' 'On'.  Even specifying
> "composite" or "-csync" on the modelines doesn't help.

Please try the attached patch and specifying composite sync in the
modeline.


-- 
Earthling Michel D�nzer (MrCooper)/ Debian GNU/Linux (powerpc) developer
XFree86 and DRI project member   /  CS student, Free Software enthusiast
? Makefile
? local.diff
? r128.4.html
? r128._man
Index: radeon_driver.c
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c,v
retrieving revision 1.51
diff -u -r1.51 radeon_driver.c
--- radeon_driver.c     2002/01/21 18:49:16     1.51
+++ radeon_driver.c     2002/01/27 13:58:01
@@ -3705,6 +3705,9 @@
                          | ((mode->Flags & V_DBLSCAN)
                             ? RADEON_CRTC_DBL_SCAN_EN
                             : 0)
+                         | ((mode->Flags & V_CSYNC)
+                            ? RADEON_CRTC_CSYNC_EN
+                            : 0)
                          | ((mode->Flags & V_INTERLACE)
                             ? RADEON_CRTC_INTERLACE_EN
                             : 0));
@@ -3715,6 +3718,7 @@
         save->crtc_ext_cntl = RADEON_VGA_ATI_LINEAR | 
                                  RADEON_XCRT_CNT_EN;
         save->crtc_gen_cntl &= ~(RADEON_CRTC_DBL_SCAN_EN | 
+                                  RADEON_CRTC_CSYNC_EN | 
                                   RADEON_CRTC_INTERLACE_EN);
     }
     else
@@ -3837,6 +3841,9 @@
                          | ((mode->Flags & V_DBLSCAN)
                             ? RADEON_CRTC2_DBL_SCAN_EN
                             : 0)
+                         | ((mode->Flags & V_CSYNC)
+                            ? RADEON_CRTC_CSYNC_EN
+                            : 0)
                          | ((mode->Flags & V_INTERLACE)
                             ? RADEON_CRTC2_INTERLACE_EN
                             : 0));
@@ -4197,6 +4204,7 @@
           pScrn->depth,
           pScrn->bitsPerPixel);
     if (mode->Flags & V_DBLSCAN)   ErrorF(" D");
+    if (mode->Flags & V_CSYNC)     ErrorF(" C");
     if (mode->Flags & V_INTERLACE) ErrorF(" I");
     if (mode->Flags & V_PHSYNC)    ErrorF(" +H");
     if (mode->Flags & V_NHSYNC)    ErrorF(" -H");
@@ -4219,6 +4227,7 @@
           pScrn->depth,
           pScrn->bitsPerPixel);
     if (mode->Flags & V_DBLSCAN)   ErrorF(" D");
+    if (mode->Flags & V_CSYNC)     ErrorF(" C");
     if (mode->Flags & V_INTERLACE) ErrorF(" I");
     if (mode->Flags & V_PHSYNC)    ErrorF(" +H");
     if (mode->Flags & V_NHSYNC)    ErrorF(" -H");

Reply via email to