[PATCH 2/2] drm/radeon/kms: enable underscan option for digital connectors

Alex Deucher alexdeucher at gmail.com
Sun Aug 8 09:22:27 PDT 2010


2010/8/8 Marius Gröger <marius.groeger at googlemail.com>:
> Am 04.08.2010 16:35, schrieb Alex Deucher:
>>
>> 2010/8/4 Marius Gröger<marius.groeger at googlemail.com>:
>>>
>>> Am 04.08.2010 01:59, schrieb Alex Deucher:
>>>>
>>>> This connector attribute allows you to enable or disable underscan
>>>> on a digital output to compensate for panels that automatically
>>>> overscan (e.g., many HDMI TVs).  Valid values for the attribute are:
>>>>
>>>> off - forces underscan off
>>>> on - forces underscan on
>>>> auto - enables underscan if an HDMI TV is connected, off otherwise
>>>>
>>>> default value is auto.
>>>
>>> Terrific! Two questions:
>>>
>>> - inevitably, on my TV Set (SONY KDL 3000) this now doing too much
>>> underscan. In pixels: without your patch, I used a custom modeline to
>>> map 1280x720p to 1220x680p, so I'm 40 pixels down in each dimension. How
>>> to
>>> fix that?
>>
>> Adjust radeon_crtc->v_border and radeon_crtc->h_border in the patch to
>> whatever size you want.
>
> Thanks. It turns out that I need different values to fit the screen
> (probably due to native 1366/768 != 1280/720). This is of course at the cost
> of slightly changing the rendered ratio, but that's fine with me.
>
> Any plans to make those values tunables?

Perhaps if there is enough demand.

>
> Also, I kind of was hoping that once I could use 1280x720 for both the
> console and the X screen, it would would allow me to switch between the two
> transparently. Instead, the TV takes notice of the switch and needs some
> extra syncing time. Is this expected behaviour?

You mean switching underscan off and on or a VT switch?  The hw has to
reprogram the mode when it changes the underscan.  As for a VT switch,
it should just be changing the crtc base, but IIRC there was a bug
where X and the console used slightly different modes in some cases.

Alex


More information about the dri-devel mailing list