Log in

Thu, Dec. 18th, 2008, 05:18 pm
RandR 1.3 properties pushed

I have pushed the description of RandR 1.3 default properties into proto/randrproto's randrproto.txt. They are mostly for describing the outputs so that screen configuration tools can determine their types (e.g. is it DVI, VGA, or a laptop panel). SignalFormat and ConnectorType are considered mandatory for a driver to claim RandR 1.3 support.

A "reference" implementation of those properties (and of ConnectorNumber) is now available in the radeonhd driver. The more elaborate properties as SignalProperties, CompatibilityList, and CloneList are not yet present there, though.

On a typical card I currently get the following output of xrandr --prop:
Screen 0: minimum 320 x 200, current 1400 x 1050, maximum 1920 x 1080
TV_7PIN_DIN disconnected
        _OutputNumber: 1 (0x00000001)
        ConnectorNumber: 1 (0x00000001)
        ConnectorType:  TV
        SignalFormat:   unknown
                supported: unknown
VGA_1 disconnected
        _OutputNumber: 2 (0x00000002)
        ConnectorNumber: 2 (0x00000002)
        ConnectorType:  VGA
        SignalFormat:   VGA
                supported: VGA
DVI-I_1/digital disconnected
        _Coherent: 0 (0x00000000)       range:  (0,1)
        _OutputNumber: 3 (0x00000003)
        ConnectorNumber: 3 (0x00000003)
        ConnectorType:  DVI-I
        SignalFormat:   TMDS
                supported: TMDS
DVI-I_1/analog connected 1400x1050+0+0 360mm x 270mm
        _OutputNumber: 1 (0x00000001)
        ConnectorNumber: 3 (0x00000003)
        ConnectorType:  DVI-I
        SignalFormat:   VGA
                supported: VGA
   1400x1050      74.8*    60.0
   1280x1024      85.0     75.0     60.0
   1280x960       85.0     60.0
   1152x864       75.0
   1024x768       85.0     75.1     75.0     70.1     60.0
   832x624        74.6
   800x600        85.1     72.2     75.0     60.3     56.2
   640x480        85.0     75.0     72.8     72.8     75.0     66.7     60.0     59.9
   720x400        85.0
   640x400        85.1
   640x350        85.1

As the radeonhd driver separates the analog and digital parts of DVI-I connectors into separate RandR outputs, only a single SignalFormat is supported per output. For drivers that do not separate these, a DVI-I output will have TMDS and VGA as supported SignalFormats, and you will be able to switch between them by setting the SignalFormat property accordingly.

Going to our openSUSE 11.1 release party now. ^__^