in nv_output.c line 344: if (mode->Clock < 12000) return MODE_CLOCK_LOW; This code prevents the following modeline from working: ModeLine "512x288pal" 9.875 512 528 576 632 288 290 293 311 -hsync -vsync Reducing the value 12000 allows it to work. I use this modeline with a VGA to SCART adapter, a small passive adapter (just two transistors to generate composite sync) which allows a normal television with RGB inputs to be connected directly to the analogue VGA connector.
What other driver does this modeline work with? I doubt it works with nv. If you're using this successfully with the nvidia binary driver I'd like to see what PLL setup they arrive at. To do this, please do "git clone git://anongit.freedesktop.org/~stuart/radeontool", then make, then dump some regs as follows (while in X, with this mode set up, running the binary driver): ./radeontool regmatch 0x101000 ./radeontool regmatch 0x680508 if your card is nv11 (geforce 2 mx) or newer please also do ./radeontool regmatch 0x680520 if your card is nv31 (geforce fx 5xxx) or newer please also do ./radeontool regmatch 0x680578 ./radeontool regmatch 0x68057c and if your card is nv41 (geforce 6xxx) or newer please also do ./radeontool regmatch 0x680580 and attach the values read (looks like "0x680580 0x00011e07 (73223)") as a comment to this bug
01:00.0 VGA compatible controller: nVidia Corporation NV18 [GeForce4 MX 4000] (rev c1) 0x680520 0x00045405 (283653) The modeline does work successfully with nouveau after removing the quoted sanity check or reducing the value. The output from radeontool is identical for both nvidia and patched nouveau. nv does not support this modeline; it also arbitrarily sets the minimum clock frequency to 12000 (http://cgit.freedesktop.org/xorg/driver/xf86-video-nv/tree/src/nv_setup.c#n274)
(In reply to comment #2) > 01:00.0 VGA compatible controller: nVidia Corporation NV18 [GeForce4 MX 4000] > (rev c1) > > 0x680520 0x00045405 (283653) > > The modeline does work successfully with nouveau after removing the quoted > sanity check or reducing the value. The output from radeontool is identical for > both nvidia and patched nouveau. Hi, can I also have ./radeontool regmatch 0x101000 and ./radeontool regmatch 0x680508 while running this mode under nvidia. An Xorg.0.log to show what's getting set would also help (and if you can run Xorg with "-logverbose 9" that's even better).
Created attachment 23294 [details] Xorg log when running nvidia binary driver
Created attachment 23295 [details] xorg.conf for nvidia binary driver
Also, 9.875 mhz is not even the lowest pixel clock somebody might want to use. That modeline is 16:9 - the 4:3 equivalent (384x288) would have a pixel clock of 7.375 mhz.
radeontool outputs: 0x101000 0x84ded09f (-2065772385) 0x680508 0x0005750a (357642)
Yeah, seems this restriction was pretty arbitrary in the old driver, so now it accepts all clocks (which works until the pll calculator craps out; ~6.25MHz for two stage plls, < 0.25MHz for single stage). http://cgit.freedesktop.org/nouveau/xf86-video-nouveau/commit/?id=cb237a34f31f8b8c841974cb64141a2f2e36c53b
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.