search for: nouveau_pixmap

Displaying 12 results from an estimated 12 matches for "nouveau_pixmap".

2009 Dec 11
2
[PATCH 1/2] exa: Pre-G80 tiling support.
...h_align); + tile_mode = *new_pitch; + } + } } else { *new_pitch = (width * bitsPerPixel + 7) / 8; } @@ -437,12 +445,13 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv) } bool -nouveau_exa_pixmap_is_tiled(PixmapPtr ppix) +nv50_style_tiled_pixmap(PixmapPtr ppix) { - if (!nouveau_pixmap_bo(ppix)->tile_flags) - return false; + ScrnInfoPtr pScrn = xf86Screens[ppix->drawable.pScreen->myNum]; + NVPtr pNv = NVPTR(pScrn); - return true; + return pNv->Architecture == NV_ARCH_50 && + nouveau_pixmap_bo(ppix)->tile_flags; } static void * @@ -453,7 +462,7 @@ no...
2019 Oct 13
0
[PATCH xf86-video-nouveau] dri2, present: move in pixmap before getting addresses
...o *pixmap_bo; + + PixmapPtr pixmap; + int r; if (draw->type == DRAWABLE_PIXMAP) pixmap = (PixmapPtr)draw; @@ -259,8 +263,16 @@ update_front(DrawablePtr draw, DRI2BufferPtr front) pixmap->refcnt++; + pNv->exa_force_cp = TRUE; exaMoveInPixmap(pixmap); - r = nouveau_bo_name_get(nouveau_pixmap_bo(pixmap), &front->name); + pNv->exa_force_cp = FALSE; + pixmap_bo = nouveau_pixmap_bo(pixmap); + + if (!pixmap_bo) + r = -1; + else + r = nouveau_bo_name_get(pixmap_bo, &front->name); + if (r) { (*draw->pScreen->DestroyPixmap)(pixmap); return FALSE; diff --git a/s...
2017 Dec 31
2
[PATCH] dri3: remove bogus condition for creating pixmap
...ion(+), 1 deletion(-) diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c index cbb7b2a..07b6022 100644 --- a/src/nouveau_dri2.c +++ b/src/nouveau_dri2.c @@ -1076,7 +1076,7 @@ static PixmapPtr nouveau_dri3_pixmap_from_fd(ScreenPtr screen, int fd, CARD16 wi struct nouveau_bo *bo = NULL; struct nouveau_pixmap *nvpix; - if (depth < 8 || depth > 32 || depth % 8) + if (depth < 8 || depth > 32) return NULL; pixmap = screen->CreatePixmap(screen, 0, 0, depth, 0); -- 2.13.6
2015 Mar 14
1
[PATCH ddx] Add support for VRAM-less devices to the ddx
...git a/src/nouveau_exa.c b/src/nouveau_exa.c index def66ac..3a93d02 100644 --- a/src/nouveau_exa.c +++ b/src/nouveau_exa.c @@ -263,7 +263,7 @@ nouveau_exa_download_from_screen(PixmapPtr pspix, int x, int y, int w, int h, goto memcpy; if (!NVAccelM2MF(pNv, w, lines, cpp, 0, tmp_offset, - nouveau_pixmap_bo(pspix), NOUVEAU_BO_VRAM, + nouveau_pixmap_bo(pspix), NOUVEAU_BO_APER, src_pitch, pspix->drawable.height, x, y, tmp, NOUVEAU_BO_GART, tmp_pitch, lines, 0, 0)) @@ -361,7 +361,7 @@ nouveau_exa_upload_to_screen(PixmapPtr pdpix, int x, int y, int w, int h, if (!NVAccelM2...
2009 Mar 08
4
[PATCH 1/5] nv50: implement wfb
...((aw * cpp) + 63) & ~63; + /* This allignment is very important. */ + devkind = (width * cpp + 63) & ~63; nvpix->size = devkind * ah; } @@ -390,8 +393,11 @@ nouveau_exa_pixmap_is_tiled(PixmapPtr ppix) NVPtr pNv = NVPTR(pScrn); if (pNv->exa_driver_pixmaps) { - if (!nouveau_pixmap_bo(ppix)->tiled) + if (!nouveau_pixmap_bo(ppix)) + return false; + if (nouveau_pixmap_bo(ppix)->tiled == 0) return false; + return true; } else if (pNv->Architecture < NV_ARCH_50 || exaGetPixmapOffset(ppix) < pNv->EXADriverPtr->offScreenBase) @@ -403,10 +409,...
2017 Dec 31
0
[PATCH] dri3: remove bogus condition for creating pixmap
...uveau_dri2.c b/src/nouveau_dri2.c > index cbb7b2a..07b6022 100644 > --- a/src/nouveau_dri2.c > +++ b/src/nouveau_dri2.c > @@ -1076,7 +1076,7 @@ static PixmapPtr nouveau_dri3_pixmap_from_fd(ScreenPtr screen, int fd, CARD16 wi > struct nouveau_bo *bo = NULL; > struct nouveau_pixmap *nvpix; > > - if (depth < 8 || depth > 32 || depth % 8) > + if (depth < 8 || depth > 32) > return NULL; > > pixmap = screen->CreatePixmap(screen, 0, 0, depth, 0); > -- > 2.13.6 >
2020 Jul 18
1
[PATCH 1/2] drmmode: fix screen resize without acceleration
This got broken with commit 86024cee back in 2014! drmmode_pixmap/nouveau_pixmap expect there to be EXA wrapping around the pixmap now, which is not there without accel. Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> --- src/drmmode_display.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/drmmode_display.c b/src/drmmode_display.c index 899...
2018 Feb 04
1
[PATCH 1/2] dri3: remove bogus condition for creating pixmap
...s(+), 1 deletion(-) diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c index cbb7b2a..ac0ca09 100644 --- a/src/nouveau_dri2.c +++ b/src/nouveau_dri2.c @@ -1076,13 +1076,16 @@ static PixmapPtr nouveau_dri3_pixmap_from_fd(ScreenPtr screen, int fd, CARD16 wi struct nouveau_bo *bo = NULL; struct nouveau_pixmap *nvpix; - if (depth < 8 || depth > 32 || depth % 8) + if (depth < 8 || depth > 32) return NULL; pixmap = screen->CreatePixmap(screen, 0, 0, depth, 0); if (!pixmap) return NULL; + if (pixmap->drawable.bitsPerPixel % 8) + goto free_pixmap; + if (!screen->Modify...
2012 Mar 01
2
[Patches][nouveau/ddx]: Improvements to bufferswap implementation and timestamping v2
Two "updated" patches, according to Michel Daenzers review. See separate e-mail for details. 01/10: Replaces original 01/09 -- Same code, updated commit message. 10/10: Just for demonstration, not for application to ddx.
2013 Jul 22
0
[RFC PATCH] Support running nested in a Mir compositor
...t); + + dst = pScreen->CreatePixmap(pScreen, 0, 0, pScrn->depth, 0); + if (dst == NullPixmap) + goto cleanup_bo; + + pScreen->ModifyPixmapHeader(dst, pScrn->virtualX, pScrn->virtualY, pScrn->depth, pScrn->depth, + pScrn->virtualX, NULL); + nouveau_bo_ref(bo_dst, &nouveau_pixmap(dst)->bo); + + ret = exa->PrepareCopy (src, dst, 0, 0, GXcopy, FB_ALLONES); + if (ret) { + exa->Copy (dst, 0, 0, 0, 0, pScrn->virtualX, pScrn->virtualY); + exa->DoneCopy (dst); + PUSH_KICK(pNv->pushbuf); + } + +cleanup_bo: + nouveau_bo_ref(NULL, &bo_dst); +} + +static vo...
2011 Feb 07
16
[Bug 33999] New: 2.6.37 - NV11 crashes X if glxgears maximised
https://bugs.freedesktop.org/show_bug.cgi?id=33999 Summary: 2.6.37 - NV11 crashes X if glxgears maximised Product: xorg Version: unspecified Platform: x86 (IA32) OS/Version: Linux (All) Status: NEW Severity: normal Priority: medium Component: Driver/nouveau AssignedTo: nouveau at
2012 Feb 15
11
[Patches][nouveau/ddx]: Improvements to bufferswap implementation and timestamping
Hi, here a set of patches against the nouveau-ddx. This is an extended and revised set, based on Francisco Jerez feedback from autumn last year. [1/9] Makes pageflipping work again on X-Server 1.12rc. It apparently stopped working somewhere around Xorg 1.11+. [2/9] Implements handling of pageflip completion events from the kernel. Francisco Jerez argument against including it was that the