radeon driver, mode selection, RADEONPreInitModes()

Alex Deucher alexdeucher at gmail.com
Thu Apr 14 05:52:08 PDT 2005


On 4/14/05, Benjamin Herrenschmidt <benh at kernel.crashing.org> wrote:
> On Thu, 2005-04-14 at 15:12 +1000, Benjamin Herrenschmidt wrote:
> 
> >
> >   2) _and_ I had DDC giving me more than one mode so we don't hit the modesFound <=1
> > test. I really don't understand why this is not < 1 ....
> 
> Ok, I added a patch to my list of patches against stable at
> http://gate.crashing.org/~benh/xorg/radeon-fix-one-mode-ddc.diff,
> 
> This one does change if (modesFound <= 1 || .... into
> if (modesFound < 1 || ..... in 2 places, PreInitModes and
> the MergedFB equivalent.
> 
> The result with this patch is that if I don't specify anything in
> display/screen, or only the right mode, it works fine now. It still
> breaks if I put more modes there, as I think we should pass to
> xf86ValidateModes the list of modes from DDC/ModeLines when modesFound
> >= 1 and not let it use it's default list which doesn't contain most
> fancy flat panel ones.
> 
> Oh, finally ... i'm not too sure why we do all of that stuff only
> for !CRT ... I suspect that whole piece of coded intend to do something
> that is quite different from what it does in practice, but I would need
> Hui advice to better understand the issue here.
> 

For CRTs the radeon driver doesn't use DDC modes; to do that you have
to set an option "useDDC" or somesuch.  It's supposed to use DDC for
flatpanels, but I suspect the logic might have gotten a bit confused. 
The mode validation is probably the most confusing part of the driver.

Alex

> Ben.
> 
>



More information about the xorg mailing list