Re: Bug#240581: Did you forget about this patch?

2004-04-30 Thread Fabio Massimo Di Nitto
On Fri, 30 Apr 2004, Santiago Garcia Mantinan wrote:

> Hi!
>
> I thought this patch would be applied on the new upload, but it seems it
> wasn't, I have reworked it again so that it applies well against the new
> packages and I'm sending it again to see if we have better luck next time
> ;-)

Hi,
no it is scheduled for the next upload [1].

Thanks for rediffing it again.

Fabio

[1] http://lists.debian.org/debian-x/2004/debian-x-200404/msg01214.html

-- 
 fajita: step one
 Whatever the problem, step one is always to look in the error log.
 fajita: step two
 When in danger or in doubt, step two is to scream and shout.



Bug#240581: Did you forget about this patch?

2004-04-30 Thread Santiago Garcia Mantinan
Hi!

I thought this patch would be applied on the new upload, but it seems it
wasn't, I have reworked it again so that it applies well against the new
packages and I'm sending it again to see if we have better luck next time
;-)

Regards...
-- 
Manty/BestiaTester -> http://manty.net

diff -r -u xc.orig/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c 
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c
--- xc.orig/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c 
2004-04-30 14:04:58.0 +0200
+++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c  2004-04-30 
13:59:44.0 +0200
@@ -149,7 +149,8 @@
 OPTION_CLONE_HSYNC,
 OPTION_CLONE_VREFRESH,
 OPTION_FBDEV,
-OPTION_VIDEO_KEY
+OPTION_VIDEO_KEY,
+OPTION_MIN_DOTCLOCK
 } RADEONOpts;
 
 const OptionInfoRec RADEONOptions[] = {
@@ -180,6 +181,7 @@
 { OPTION_CLONE_VREFRESH, "CloneVRefresh",OPTV_ANYSTR,  {0}, FALSE },
 { OPTION_FBDEV,  "UseFBDev", OPTV_BOOLEAN, {0}, FALSE },
 { OPTION_VIDEO_KEY,  "VideoKey", OPTV_INTEGER, {0}, FALSE },
+{ OPTION_MIN_DOTCLOCK,   "ForceMinDotClock", OPTV_FREQ,{0}, FALSE },
 { -1,NULL,   OPTV_NONE,{0}, FALSE }
 };
 
@@ -1728,6 +1730,7 @@
 RADEONPLLPtr   pll  = &info->pll;
 CARD16 bios_header;
 CARD16 pll_info_block;
+double min_dotclock;
 
 if (!info->VBIOS) {
 
@@ -1782,6 +1785,26 @@
pll->xclk   = RADEON_BIOS16(pll_info_block + 0x08);
 }
 
+/* (Some?) Radeon BIOSes seem too lie about their minimum dot
+ * clocks.  Allow users to override the detected minimum dot clock
+ * value (e.g., and allow it to be suitable for TV sets).
+ */
+if (xf86GetOptValFreq(info->Options, OPTION_MIN_DOTCLOCK,
+ OPTUNITS_MHZ, &min_dotclock)) {
+   if (min_dotclock < 12 || min_dotclock*100 >= pll->max_pll_freq) {
+   xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+  "Illegal minimum dotclock specified %.2f MHz "
+  "(option ignored)\n",
+  min_dotclock);
+   } else {
+   xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+  "Forced minimum dotclock to %.2f MHz "
+  "(instead of detected %.2f MHz)\n",
+  min_dotclock, ((double)pll->min_pll_freq/1000));
+   pll->min_pll_freq = min_dotclock * 1000;
+   }
+}
+
 xf86DrvMsg(pScrn->scrnIndex, X_INFO,
   "PLL parameters: rf=%d rd=%d min=%d max=%d; xclk=%d\n",
   pll->reference_freq,
diff -r -u xc.orig/programs/Xserver/hw/xfree86/drivers/ati/radeon.man 
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon.man
--- xc.orig/programs/Xserver/hw/xfree86/drivers/ati/radeon.man  2004-04-30 
14:04:58.0 +0200
+++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon.man   2004-04-30 
13:59:44.0 +0200
@@ -235,6 +235,17 @@
 but not work correctly in some rare cases, hence the default is
 .B off.
 
+.TP
+.BI "Option \*qForceMinDotClock\*q \*q" frequency \*q
+Override minimum dot clock. Some Radeon BIOSes report a minimum dot
+clock unsuitable (too high) for use with television sets even when they
+actually can produce lower dot clocks. If this is the case you can
+override the value here.
+.B Note that using this option may damage your hardware.
+You have been warned. The
+.B frequency
+parameter may be specified as a float value with standard suffixes like
+"k", "kHz", "M", "MHz".
 
 .SH SEE ALSO
 XFree86(1), XF86Config(__filemansuffix__), xf86config(1), Xserver(1), 
X(__miscmansuffix__)