[Xorg-driver-geode] looking at wide mode support for GeodeLX (continued)

Jordan Crouse jordan.crouse at amd.com
Fri Feb 8 11:26:07 PST 2008


On 08/02/08 14:15 -0500, Bart Trojanowski wrote:
> Jordan,
> 
> thanks for the thorough explanation of Cimarron.
> 
> * Jordan Crouse <jordan.crouse at amd.com> [080208 13:07]:
> > Are we sure that there isn't a USERDEF equivalent for DDC?
> 
> We have these choices:
> 
>     # define M_T_BUILTIN 0x01        /* built-in mode */
>     # define M_T_CLOCK_C (0x02 | M_T_BUILTIN) /* built-in mode - configure clock */
>     # define M_T_CRTC_C  (0x04 | M_T_BUILTIN) /* built-in mode - configure CRTC  */
>     # define M_T_CLOCK_CRTC_C  (M_T_CLOCK_C | M_T_CRTC_C) /* built-in mode - configure CRTC and clock */
>     # define M_T_PREFERRED 0x08     /* preferred mode within a set */
>     # define M_T_DEFAULT 0x10       /* (VESA) default modes */
>     # define M_T_USERDEF 0x20       /* One of the modes from the config file */
>     # define M_T_DRIVER  0x40       /* Supplied by the driver (EDID, etc) */
> 
> > What is pMode->type for a mode from DDC?
> 
> All DDC modes get M_T_DRIVER, I think.  From what I can see, one of them
> will be M_T_PREFERRED.  Code is in xserver-xorg/hw/xfree86/ddc/ddcProperty.c

Agreed.  I think that we can uses these to our advantage.  We can either skip
the Cimarron lookup when M_T_DRIVER or M_T_USERDEF is set or, better yet,
we can only do the lookup when M_T_BUILTIN or M_T_DEFAULT is set (i'm not
sure which one is used, I've seen both in the code). I prefer the second way,
though either way will end up with us comparing two bits.

PREFERRED is probably none of our business, that would be handled by 
the X engine to decide which mode to ask for.

Excellent - I'm glad we can do this check without causing too much 
disruption in the legacy modes.

Jordan

PS:  Obviously, we'll NAK the previous patch in lieu of this.

-- 
Jordan Crouse
Systems Software Development Engineer 
Advanced Micro Devices, Inc.




More information about the Xorg-driver-geode mailing list