diff options
author | Owain G. Ainsworth <oga@openbsd.org> | 2009-01-13 17:09:00 +0000 |
---|---|---|
committer | Kristian Høgsberg <krh@redhat.com> | 2009-01-20 12:11:01 -0500 |
commit | c82adfd0169317efb6c2f9de0f315651f9adbae1 (patch) | |
tree | e87d36aeae818ad1d57158be11b48c3e35754fb5 /src/i830_dri.c | |
parent | ada44c1c0edcd3ea9e41ed6b6fdb2bf0e87c9c67 (diff) |
Remove triple-buffering support
It never worked with any upstream linux kernel, and is quite heavily
deprecated. A new solution based around DRI2 will probably be
forthcoming. Pageflipping itself is next.
Diffstat (limited to 'src/i830_dri.c')
-rw-r--r-- | src/i830_dri.c | 32 |
1 files changed, 5 insertions, 27 deletions
diff --git a/src/i830_dri.c b/src/i830_dri.c index c4440ce8..98df2acc 100644 --- a/src/i830_dri.c +++ b/src/i830_dri.c @@ -848,7 +848,6 @@ I830DRIDoMappings(ScreenPtr pScreen) /* init to zero to be safe */ sarea->front_handle = 0; sarea->back_handle = 0; - sarea->third_handle = 0; sarea->depth_handle = 0; sarea->tex_handle = 0; @@ -1079,10 +1078,6 @@ I830DRIRefreshArea (ScrnInfoPtr pScrn, int num, BoxPtr pbox) I830DRIDoRefreshArea(pScrn, num, pbox, pI830->back_buffer->offset); - if (pI830->third_buffer) { - I830DRIDoRefreshArea(pScrn, num, pbox, pI830->third_buffer->offset); - } - DamageEmpty(pI830->pDamage); } #endif @@ -1169,14 +1164,14 @@ I830DRISwapContext(ScreenPtr pScreen, DRISyncType syncType, if (sPriv->pf_current_page & (0x3 << 2)) { sPriv->pf_current_page = sPriv->pf_current_page & 0x3; - sPriv->pf_current_page |= (sPriv->third_handle ? 2 : 1) << 2; + sPriv->pf_current_page |= 1 << 2; flip.pipes |= 0x2; } if (sPriv->pf_current_page & 0x3) { sPriv->pf_current_page = sPriv->pf_current_page & (0x3 << 2); - sPriv->pf_current_page |= sPriv->third_handle ? 2 : 1; + sPriv->pf_current_page |= 1; flip.pipes |= 0x1; } @@ -1208,8 +1203,6 @@ I830DRIInitBuffers(WindowPtr pWin, RegionPtr prgn, CARD32 index) first_buffer = I830_SELECT_BACK; last_buffer = I830_SELECT_DEPTH; - if (I830PTR(pScrn)->third_buffer) - last_buffer = I830_SELECT_THIRD; for (buffer = first_buffer; buffer <= last_buffer; buffer++) { pbox = REGION_RECTS(prgn); @@ -1358,8 +1351,6 @@ I830DRIMoveBuffers(WindowPtr pParent, DDXPointRec ptOldOrg, I830EmitFlush(pScrn); first_buffer = I830_SELECT_BACK; last_buffer = I830_SELECT_DEPTH; - if (pI830->third_buffer) - last_buffer = I830_SELECT_THIRD; for (buffer = first_buffer; buffer <= last_buffer; buffer++) { if (!I830SelectBuffer(pScrn, buffer)) @@ -1591,10 +1582,6 @@ i830_update_sarea(ScrnInfoPtr pScrn, drmI830Sarea *sarea) sarea->front_tiled = (pI830->front_buffer->tiling != TILE_NONE); sarea->back_tiled = (pI830->back_buffer->tiling != TILE_NONE); - if (pI830->third_buffer != NULL) - sarea->third_tiled = (pI830->third_buffer->tiling != TILE_NONE); - else - sarea->third_tiled = FALSE; sarea->depth_tiled = (pI830->depth_buffer->tiling != TILE_NONE); sarea->rotated_tiled = FALSE; @@ -1602,7 +1589,6 @@ i830_update_sarea(ScrnInfoPtr pScrn, drmI830Sarea *sarea) sarea->front_bo_handle = i830_name_buffer (pScrn, pI830->front_buffer); sarea->back_bo_handle = i830_name_buffer (pScrn, pI830->back_buffer); - sarea->third_bo_handle = i830_name_buffer (pScrn, pI830->third_buffer); sarea->depth_bo_handle = i830_name_buffer (pScrn, pI830->depth_buffer); /* The rotation is now handled entirely by the X Server, so just leave the @@ -1695,17 +1681,9 @@ i830_update_dri_mappings(ScrnInfoPtr pScrn, drmI830Sarea *sarea) return FALSE; } - if (pI830->third_buffer) { - if (!i830_do_addmap(pScrn, pI830->third_buffer, &sarea->third_handle, - &sarea->third_size, &sarea->third_offset)) { - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Disabling DRI.\n"); - return FALSE; - } - } else { - sarea->third_handle = 0; - sarea->third_offset = 0; - sarea->third_size = 0; - } + sarea->third_handle = 0; + sarea->third_offset = 0; + sarea->third_size = 0; if (!i830_do_addmap(pScrn, pI830->depth_buffer, &sarea->depth_handle, &sarea->depth_size, &sarea->depth_offset)) { |