summaryrefslogtreecommitdiff
path: root/src/radeon_exa.c
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2009-09-25 14:44:41 -0400
committerAlex Deucher <alexdeucher@gmail.com>2009-09-25 16:43:59 -0400
commit3efecebb10de7f7bacf9f8c57ae20fd508097294 (patch)
treeb102341968720c5f71283ffc9500602a3544f5da /src/radeon_exa.c
parent9733dcde0a21b7503aa20254724f2910b541b990 (diff)
radeon: fix vline handling for kms
drm crtc ids do not correspond to actual hw crtcs, as such the vline stuff was never enabled for Xv. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Diffstat (limited to 'src/radeon_exa.c')
-rw-r--r--src/radeon_exa.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/radeon_exa.c b/src/radeon_exa.c
index 7b9164e9..6cf9598b 100644
--- a/src/radeon_exa.c
+++ b/src/radeon_exa.c
@@ -211,11 +211,12 @@ Bool RADEONGetPixmapOffsetPitch(PixmapPtr pPix, uint32_t *pitch_offset)
* syncing per-blit is unrealistic so,
* we sync to whichever crtc has a larger area.
*/
-int RADEONBiggerCrtcArea(PixmapPtr pPix)
+xf86CrtcPtr RADEONBiggerCrtcArea(PixmapPtr pPix)
{
ScrnInfoPtr pScrn = xf86Screens[pPix->drawable.pScreen->myNum];
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
- int c, crtc_num = -1, area = 0;
+ int c, area = 0;
+ xf86CrtcPtr ret_crtc = NULL;
for (c = 0; c < xf86_config->num_crtc; c++) {
xf86CrtcPtr crtc = xf86_config->crtc[c];
@@ -225,11 +226,11 @@ int RADEONBiggerCrtcArea(PixmapPtr pPix)
if ((crtc->mode.HDisplay * crtc->mode.VDisplay) > area) {
area = crtc->mode.HDisplay * crtc->mode.VDisplay;
- crtc_num = c;
+ ret_crtc = crtc;
}
}
- return crtc_num;
+ return ret_crtc;
}
#if X_BYTE_ORDER == X_BIG_ENDIAN