drm/radeon: Add function for display scanout position query.
authorMario Kleiner <mario.kleiner@tuebingen.mpg.de>
Tue, 5 Oct 2010 23:57:36 +0000 (19:57 -0400)
committerDave Airlie <airlied@redhat.com>
Wed, 6 Oct 2010 01:46:27 +0000 (11:46 +1000)
commit6383cf7d7839bf52aa4efa20cc921773126797f4
tree963fa5cff40af73656442ccc1b7fdaf2097332ea
parentba032a58d1f320039e7850fb6e8651695c1aa571
drm/radeon: Add function for display scanout position query.

radeon_get_crtc_scanoutpos() returns the current horizontal
and vertical scanout position of a crtc. It also reports if
the display scanout is currently inside the vblank area.

hpos reports current horizontal pixel scanout position.
vpos reports the current scanned out line as a value >= 0
in active scanout. If the scanout is inside vblank area, it
reports a negative value, the number of scanlines until
end of vblank aka start of active scanout, e.g., -3 ==
"At most 3 scanlines until end of vblank".

This code is derived from radeon_pm_in_vbl(), tested on
R500 and R600.

Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de>
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/radeon_display.c
drivers/gpu/drm/radeon/radeon_mode.h