diff options
author | Keith Packard <keithp@keithp.com> | 2008-10-18 19:37:09 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2008-10-19 15:23:52 -0700 |
commit | 28bb056f8cd326770590157412835318863b4134 (patch) | |
tree | 4c3e28bd6b8aec33a867bbf3647be11e8e396ad3 | |
parent | 546e2aca5b8b5d9f486d119ea2872ccd2b056054 (diff) |
Use pipes, not planes for sarea geometry data
Vblank in the kernel is far simpler if it deals with pipes instead of
planes, so we're changing both user and kernel side. This is the user mode
side. This fixes both i830_crtc_dpms and i830PipeSetBase, the two functions
which copy geometry from the crtc to the sarea.
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r-- | src/i830_common.h | 16 | ||||
-rw-r--r-- | src/i830_display.c | 22 | ||||
-rw-r--r-- | src/i830_dri.c | 16 |
3 files changed, 27 insertions, 27 deletions
diff --git a/src/i830_common.h b/src/i830_common.h index f3a7ea01..eeb2ed76 100644 --- a/src/i830_common.h +++ b/src/i830_common.h @@ -124,14 +124,14 @@ typedef struct { unsigned int rotated_tiled; unsigned int rotated2_tiled; - int planeA_x; - int planeA_y; - int planeA_w; - int planeA_h; - int planeB_x; - int planeB_y; - int planeB_w; - int planeB_h; + int pipeA_x; + int pipeA_y; + int pipeA_w; + int pipeA_h; + int pipeB_x; + int pipeB_y; + int pipeB_w; + int pipeB_h; /* Triple buffering */ drm_handle_t third_handle; diff --git a/src/i830_display.c b/src/i830_display.c index 0632f3a3..341def92 100644 --- a/src/i830_display.c +++ b/src/i830_display.c @@ -428,14 +428,14 @@ i830PipeSetBase(xf86CrtcPtr crtc, int x, int y) if (!sPriv) return; - switch (plane) { + switch (pipe) { case 0: - sPriv->planeA_x = x; - sPriv->planeA_y = y; + sPriv->pipeA_x = x; + sPriv->pipeA_y = y; break; case 1: - sPriv->planeB_x = x; - sPriv->planeB_y = y; + sPriv->pipeB_x = x; + sPriv->pipeB_y = y; break; default: xf86DrvMsg(pScrn->scrnIndex, X_ERROR, @@ -756,7 +756,7 @@ static void i830_modeset_ctl(xf86CrtcPtr crtc, int pre) if (!pI830->directRenderingEnabled) return; - modeset.crtc = intel_crtc->plane; + modeset.crtc = intel_crtc->pipe; /* * DPMS will be called many times (especially off), but we only @@ -921,14 +921,14 @@ i830_crtc_dpms(xf86CrtcPtr crtc, int mode) if (!sPriv) return; - switch (plane) { + switch (pipe) { case 0: - sPriv->planeA_w = enabled ? crtc->mode.HDisplay : 0; - sPriv->planeA_h = enabled ? crtc->mode.VDisplay : 0; + sPriv->pipeA_w = enabled ? crtc->mode.HDisplay : 0; + sPriv->pipeA_h = enabled ? crtc->mode.VDisplay : 0; break; case 1: - sPriv->planeB_w = enabled ? crtc->mode.HDisplay : 0; - sPriv->planeB_h = enabled ? crtc->mode.VDisplay : 0; + sPriv->pipeB_w = enabled ? crtc->mode.HDisplay : 0; + sPriv->pipeB_h = enabled ? crtc->mode.VDisplay : 0; break; default: xf86DrvMsg(pScrn->scrnIndex, X_ERROR, diff --git a/src/i830_dri.c b/src/i830_dri.c index 286b3579..c60ee246 100644 --- a/src/i830_dri.c +++ b/src/i830_dri.c @@ -1505,14 +1505,14 @@ I830DRIClipNotify(ScreenPtr pScreen, WindowPtr *ppWin, int num) unsigned numvisible[2] = { 0, 0 }; int i, j; - crtcBox[0].x1 = sPriv->planeA_x; - crtcBox[0].y1 = sPriv->planeA_y; - crtcBox[0].x2 = crtcBox[0].x1 + sPriv->planeA_w; - crtcBox[0].y2 = crtcBox[0].y1 + sPriv->planeA_h; - crtcBox[1].x1 = sPriv->planeB_x; - crtcBox[1].y1 = sPriv->planeB_y; - crtcBox[1].x2 = crtcBox[1].x1 + sPriv->planeB_w; - crtcBox[1].y2 = crtcBox[1].y1 + sPriv->planeB_h; + crtcBox[0].x1 = sPriv->pipeA_x; + crtcBox[0].y1 = sPriv->pipeA_y; + crtcBox[0].x2 = crtcBox[0].x1 + sPriv->pipeA_w; + crtcBox[0].y2 = crtcBox[0].y1 + sPriv->pipeA_h; + crtcBox[1].x1 = sPriv->pipeB_x; + crtcBox[1].y1 = sPriv->pipeB_y; + crtcBox[1].x2 = crtcBox[1].x1 + sPriv->pipeB_w; + crtcBox[1].y2 = crtcBox[1].y1 + sPriv->pipeB_h; for (i = 0; i < 2; i++) { for (j = 0; j < num; j++) { |