RandR 1.2 add output properties, gamma ramps. move subpixel to output

Keith Packard keithp at keithp.com
Sun Sep 17 13:20:44 PDT 2006


On Sun, 2006-09-17 at 09:54 -0400, Alex Deucher wrote:

> One more thing to consider, what about panel scalers?  They are
> usually associated with a CRTC and it would be nice to be able to turn
> them on or off on the fly so you could switch between centered and
> expansion mode.  Perhaps we this can be done via a mode flag?

Yeah, I was thinking about this a few days ago. It's slightly different
than the other mode flags as it may be optional. I'd prefer to not have
to list multiple modes though, that seems very confusing. 

It seems like this is a four-way switch:
 
     1. Default scaling - the driver has no control over scaling (not
        LVDS)
     2. No scaling - do not scale, align pixels on the screen, centering
        the image
     3. max aspect - scale, but ensure that the X and Y scale factors
        are the same to preserve the aspect ratio and produce square
        pixels
     4. fit to panel - scale to fill the entire panel

How about adding a new 'mode options' field to the mode set request and
mode info reply? Applications could pick from the available options and
send those along; sending 0 would do 'something reasonable'.

Something like:

--- a/randrproto.txt
+++ b/randrproto.txt
@@ -245,6 +245,10 @@ MODEFLAG { HSyncPositive
           DoubleClock
           ClockDivideBy2 }

+MODEOPTION { ScalingNone,
+            ScalingMaxAspect,
+            ScalingMax }
+
 MODEINFO { id: MODE
           name: STRING
            widthInPixels, heightInPixels: CARD16
@@ -252,7 +256,8 @@ MODEINFO { id: MODE
            dotClock: CARD32
            hSyncStart, hSyncEnd, hTotal, hSkew: CARD16
            vSyncStart, vSyncEnd, vTotal: CARD16
-           modeFlags: SETofMODEFLAG }
+           modeFlags: SETofMODEFLAG
+           modeOptions: SETofMODEOPTION }

 REFRESH { rates: LISTofCARD16 }

@@ -774,6 +779,7 @@ dynamic changes in the display environme
        config-timestamp: TIMESTAMP
        x, y: INT16
        mode: MODE
+       options: SETofMODEOPTION
        rotation: ROTATION
        outputs: LISTofOUTPUT
       ▶


-- 
keith.packard at intel.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.x.org/archives/xorg/attachments/20060917/2e4447d7/attachment.pgp>


More information about the xorg mailing list