[PATCH RFC xf86-video-intel 2/2] Add underscan properties

Ville Syrjälä ville.syrjala at linux.intel.com
Fri Mar 30 04:32:06 PDT 2012


On Thu, Mar 29, 2012 at 11:19:59PM +0100, Chris Wilson wrote:
> On Thu, 29 Mar 2012 18:30:20 -0300, Paulo Zanoni <przanoni at gmail.com> wrote:
> > From: Paulo Zanoni <paulo.r.zanoni at intel.com>
> > 
> > In the Kernel side, these are crtc properties (since in the hardware,
> > underscan use the panel fitters, which are attached to the pipes).
> > Ideally we should make these as crtc properties too, but since xrandr
> > doesn't have support for them, we expose the atoms as output
> > properties. This is not the best solution, but making the kernel
> > underscan properties be output properties instead of crtc properties
> > would be even more wrong.
> 
> However, we have set the precedent with panel fitting already and this is
> just a variation on that theme? My wish would be to be able describe the
> dst box of the framebuffer on the crtc as part of the mode.

I'm assuming you mean that you'd like to have the overscan borders
be part of the mode structure itself. Agreed. However there's another
problem with the current mode setting API.

This is the full display pipeline as I see it:

fb area [w0,h0] -> [x1,y1,w1,h1] plane transform [x2,y2,w2,h2] ->
 CRTC area [w3,h3] -> [0,0,w3,h3] crtc transform [x4,y4,w4,h4] ->
 display mode active area [hdisp,vdisp]

Rectangle [x1,y1,w1,h1] is within the fb area [w0,h0]
Rectangle [x2,y2,w2,h2] is within the CRTC area [w3,h3]
Rectangle [x4,y4,w4,h4] is within the display mode active area [hdisp,vdisp]

Currently we're missing the CRTC area and the overscan borders. This
means you have to add some policy into the kernel on how to choose
the display mode, and how to program panel fitters and whatnot. Sure
you can add properties to influence those policy decisions, but what
you end up with is still quite limited.

If the API would allow you to specify both the borders, and the CRTC
area size, you could do away with all mode selection policy, and
panel fitter and border properties, and you would end up with a more
powerful API.

-- 
Ville Syrjälä
Intel OTC


More information about the dri-devel mailing list