Displaying 14 results from an estimated 14 matches for "nouveau_pixmap_bo".
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 (!NVAccelM2MF(...
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 @@ nouve...
2015 Jul 14
3
[PATCH] avoid build fail without COMPOSITE
...creenPtr pScreen, DrawablePtr pDraw, RegionPtr pRegio
if (extents->x1 == 0 && extents->y1 == 0 &&
extents->x2 == pDraw->width &&
extents->y2 == pDraw->height) {
- PixmapPtr fpix = get_drawable_pixmap(dst_draw);
- struct nouveau_bo *bo = nouveau_pixmap_bo(fpix);
+ pPix = get_drawable_pixmap(dst_draw);
+ struct nouveau_bo *bo = nouveau_pixmap_bo(pPix);
if (bo)
nouveau_bo_wait(bo, NOUVEAU_BO_RD, pNv->client);
}
--
2.3.6
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/src/...
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,12...
2012 Apr 20
3
[Bug 48954] New: nv25 PGRAPH error and X freeze
https://bugs.freedesktop.org/show_bug.cgi?id=48954
Bug #: 48954
Summary: nv25 PGRAPH error and X freeze
Classification: Unclassified
Product: xorg
Version: git
Platform: x86 (IA32)
OS/Version: Linux (All)
Status: NEW
Severity: normal
Priority: medium
Component: Driver/nouveau
2013 Oct 15
4
[Bug 70511] New: nouveau_bo_name_get segmentation fault while running root tutorials/gl/glbox.C
https://bugs.freedesktop.org/show_bug.cgi?id=70511
Priority: medium
Bug ID: 70511
Assignee: nouveau at lists.freedesktop.org
Summary: nouveau_bo_name_get segmentation fault while running
root tutorials/gl/glbox.C
QA Contact: xorg-team at lists.x.org
Severity: normal
Classification: Unclassified
2009 Oct 31
0
[PATCH] nv/exa: fix 15/16 bits solid fill
...letions(-)
diff --git a/src/nv04_exa.c b/src/nv04_exa.c
index 132c9d5..1852f99 100644
--- a/src/nv04_exa.c
+++ b/src/nv04_exa.c
@@ -81,7 +81,7 @@ NV04EXAPrepareSolid(PixmapPtr pPixmap, int alu, Pixel planemask, Pixel fg)
struct nouveau_grobj *rect = pNv->NvRectangle;
struct nouveau_bo *bo = nouveau_pixmap_bo(pPixmap);
unsigned delta = nouveau_pixmap_offset(pPixmap);
- unsigned int fmt, pitch, color;
+ unsigned int fmt, pitch, fmt2 = NV04_GDI_RECTANGLE_TEXT_COLOR_FORMAT_A8R8G8B8;
WAIT_RING(chan, 64);
@@ -102,13 +102,12 @@ NV04EXAPrepareSolid(PixmapPtr pPixmap, int alu, Pixel planemask, Pixel fg)...
2010 Apr 20
0
[PATCH] nv10/exa : demagify tex and rt format
...8b8, 0x108 },
+ { PICT_r5g6b5, NV10TCL_RT_FORMAT_COLOR_R5G6B5 },
+ { PICT_x8r8g8b8, NV10TCL_RT_FORMAT_COLOR_X8R8G8B8 },
+ { PICT_a8r8g8b8, NV10TCL_RT_FORMAT_COLOR_A8R8G8B8 },
{},
};
@@ -432,7 +435,7 @@ setup_render_target(NVPtr pNv, PicturePtr pict, PixmapPtr pixmap)
struct nouveau_bo *bo = nouveau_pixmap_bo(pixmap);
BEGIN_RING(chan, celsius, NV10TCL_RT_FORMAT, 2);
- OUT_RING (chan, get_rt_format(pict));
+ OUT_RING (chan, get_rt_format(pict) | NV10TCL_RT_FORMAT_TYPE_LINEAR);
OUT_RING (chan, (exaGetPixmapPitch(pixmap) << 16 |
exaGetPixmapPitch(pixmap)));
--
1.7.0.5
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
2010 Apr 20
1
[PATCH] nv30/exa : cleanup from nv40 exa
...| dblend);
+ OUT_RING (chan, sblend);
+ OUT_RING (chan, dblend);
}
}
@@ -305,43 +255,47 @@ NV30EXATexture(ScrnInfoPtr pScrn, PixmapPtr pPix, PicturePtr pPict, int unit)
struct nouveau_channel *chan = pNv->chan;
struct nouveau_grobj *rankine = pNv->Nv3D;
struct nouveau_bo *bo = nouveau_pixmap_bo(pPix);
- nv_pict_texture_format_t *fmt;
- uint32_t card_filter, card_repeat;
uint32_t tex_reloc = NOUVEAU_BO_VRAM | NOUVEAU_BO_GART | NOUVEAU_BO_RD;
+ uint32_t pitch;
+ nv_pict_texture_format_t *fmt;
NV30EXA_STATE;
fmt = NV30_GetPictTextureFormat(pPict->format);
if (!fmt)
return FAL...
2012 May 23
1
[PATCH (nouveau)] Add xwayland support
...VT(pScrn->scrnIndex, 0))
return FALSE;
@@ -425,6 +502,27 @@ NVCreateScreenResources(ScreenPtr pScreen)
return TRUE;
}
+#ifdef XORG_WAYLAND
+static int nouveau_create_window_buffer(struct xwl_window *xwl_window,
+ PixmapPtr pixmap)
+{
+ uint32_t name;
+ struct nouveau_bo *bo;
+
+ bo = nouveau_pixmap_bo(pixmap);
+ if (bo == NULL || nouveau_bo_name_get(bo, &name) != 0)
+ return BadDrawable;
+
+ return xwl_create_window_buffer_drm(xwl_window, pixmap, name);
+}
+
+static struct xwl_driver xwl_driver = {
+ .version = 1,
+ .use_drm = 1,
+ .create_window_buffer = nouveau_create_window_buffer
+};
+#...
2009 Nov 04
1
[PATCH] nv10/exa: Spring-cleaning
...E;
}
-static void NV10SetTexture(NVPtr pNv, int unit, PicturePtr Pict, PixmapPtr pixmap)
+static void
+setup_texture(NVPtr pNv, int unit, PicturePtr pict, PixmapPtr pixmap)
{
struct nouveau_channel *chan = pNv->chan;
struct nouveau_grobj *celsius = pNv->Nv3D;
struct nouveau_bo *bo = nouveau_pixmap_bo(pixmap);
unsigned delta = nouveau_pixmap_offset(pixmap);
- int log2w = log2i(Pict->pDrawable->width);
- int log2h = log2i(Pict->pDrawable->height);
- int w;
+ long w = pict->pDrawable->width,
+ h = pict->pDrawable->height;
unsigned int txfmt =
- (NV10TCL_TX_FORMAT...
2012 Jul 04
0
[PATCH] Add xwayland support (v2)
...opy(pScreen);
if (!NVEnterVT(VT_FUNC_ARGS(0)))
return FALSE;
@@ -418,6 +481,25 @@ NVCreateScreenResources(ScreenPtr pScreen)
return TRUE;
}
+static int nouveau_create_window_buffer(struct xwl_window *xwl_window,
+ PixmapPtr pixmap)
+{
+ uint32_t name;
+ struct nouveau_bo *bo;
+
+ bo = nouveau_pixmap_bo(pixmap);
+ if (bo == NULL || nouveau_bo_name_get(bo, &name) != 0)
+ return BadDrawable;
+
+ return xwl_create_window_buffer_drm(xwl_window, pixmap, name);
+}
+
+static struct xwl_driver xwl_driver = {
+ .version = 1,
+ .use_drm = 1,
+ .create_window_buffer = nouveau_create_window_buffer
+};
+...