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