search for: miptree

Displaying 20 results from an estimated 22 matches for "miptree".

Did you mean: mibtree
2009 Dec 04
1
[Bug 25440] New: PATCH: fixes conflicting miptree definitions
http://bugs.freedesktop.org/show_bug.cgi?id=25440 Summary: PATCH: fixes conflicting miptree definitions Product: Mesa Version: git Platform: x86-64 (AMD64) OS/Version: All Status: NEW Severity: normal Priority: medium Component: Drivers/DRI/nouveau AssignedTo: nouveau at lists.freedesktop.org...
2010 Jan 08
0
Findings on pre-NV50 miptree layout
...matically finding out the texture layout for Gallium drivers. You can find it attached to http://sourceforge.net/mailarchive/forum.php?thread_name=ff13bc9a1001081140y18450c3ejdfac25c9260fd367%40mail.gmail.com&forum_name=mesa3d-dev . Here are the findings from running it. The result is that our miptree layout code is partially broken, and overly complex. In particular: 1. 3D textures are broken because they are not laid out like cube maps, but first by level and then by face 2. Swizzled 3D texture are all 3 texture coordinates swizzled together 3. Cube maps have their faces 128 byte aligned, not...
2014 Sep 01
2
[PATCH 1/3] nv50: set the miptree address when clearing bo's in vp2 init
The mt address is about to be used more, make sure it's set appropriately. Reported-by: Emil Velikov <emil.l.velikov at gmail.com> Tested-by: Emil Velikov <emil.l.velikov at gmail.com> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> Cc: "10.2 10.3" <mesa-stable at lists.freedesktop.org> --- src/gallium/drivers/nouveau/nv50/nv84_video.c | 2 ++ 1 file
2009 Apr 17
1
NV40 Cubic Texture HW Mip Map Generation
...looking at cubic texture mapping for a bit, and I have found that hw mipmap generation doesn't work at all or the textures are all messed up (normal 2d work fine). This is with linear textures. Also of note is that software mipmap generation works fine. I have done sanity checks for the miptree pitches, offsets, etc and everything seems to match up fine for both the hw and sw paths. Any thoughts on what could be wrong? jb17bsome
2014 Mar 01
1
[PATCH] nouveau: add valid range tracking to nouveau_buffer
...9b4a 100644 --- a/src/gallium/drivers/nouveau/nv50/nv50_resource.c +++ b/src/gallium/drivers/nouveau/nv50/nv50_resource.c @@ -68,6 +68,8 @@ nv50_surface_create(struct pipe_context *pipe, struct pipe_resource *pres, const struct pipe_surface *templ) { + /* surfaces are assumed to be miptrees all over the place. */ + assert(pres->target != PIPE_BUFFER); if (unlikely(pres->target == PIPE_BUFFER)) return nv50_surface_from_buffer(pipe, pres, templ); return nv50_miptree_surface_new(pipe, pres, templ); diff --git a/src/gallium/drivers/nouveau/nv50/nv50_state.c b/src/g...
2010 Jan 18
0
[PATCH] nv04-nv40: Rewrite and unify miptree and transfer code (v2)
Changes: - Fixed some nv##_miptree that were not converted to nv04_miptree. - Disable swizzling on non-RGBA 2D textures, since the current 2D code is mostly broken in those cases. A later patch will fix this. Thanks to Andrew Randrianasulu who reported this. This patch rewrites all the miptree layout and transfer code in the pr...
2010 Jan 18
0
[PATCH] nv04-nv40: Rewrite and unify miptree and transfer code
This patch rewrites all the miptree layout and transfer code in the pre-NV50 Gallium drivers. The code is also unified among them and put in the nv04 directory. The current code is broken in several ways: 1. 3D textures are laid out first by face, then by level, which is incorrect 2. Cube maps should have 128-byte aligned faces 3. S...
2019 Feb 01
1
Render Targets and Pitch Linear Textures in Maxwell/Pascal Question
So I have been going on over the documentation trying to figure out the exact layout of Pitch Linear Textures and find some missing values. First Question: What's the correct layout of pitch linear textures in memory? Is padding of the pitch added at start or at the end? Do they have some kind of header? Currently I see them as a normal texture matrix with just pitch at the end of each row
2009 May 08
0
[PATCH] gallium/nv50: fix multi-texturing
...s. diff --git a/src/gallium/drivers/nv50/nv50_context.h b/src/gallium/drivers/nv50/nv50_context.h index 7b67a75..d6a7c76 100644 --- a/src/gallium/drivers/nv50/nv50_context.h +++ b/src/gallium/drivers/nv50/nv50_context.h @@ -151,6 +151,7 @@ struct nv50_context { unsigned sampler_nr; struct nv50_miptree *miptree[PIPE_MAX_SAMPLERS]; unsigned miptree_nr; + unsigned texbind_nr; }; static INLINE struct nv50_context * diff --git a/src/gallium/drivers/nv50/nv50_tex.c b/src/gallium/drivers/nv50/nv50_tex.c index 223c8a3..e7e1521 100644 --- a/src/gallium/drivers/nv50/nv50_tex.c +++ b/src/gallium/drive...
2009 Dec 26
2
[MESA PATCH] Fix nv40_miptree_layout pitch
This patch fixes two issues in nv40_miptree_layout. First, pt->width0 is used, which is the size of the whole texture, while width, which is the size of the mipmap level, should be used. Second, the current code does not 64-byte align the pitch of swizzled textures. However, on my NV40 this causes a pgraph error regarding the pitch regi...
2016 Apr 15
0
Wine release 1.9.8
...n_flip() to d3d11. wined3d: Get rid of wined3d_texture_ops.texture_sub_resource_load(). wined3d: Pass a texture and sub-resource index to wined3d_texture_ops.texture_sub_resource_upload_data(). wined3d: Discard default pool surfaces on unload. d3d9/tests: Add a system memory miptree layout test. d3d8/tests: Add a system memory miptree layout test. wined3d: Explicitly pass a wined3d_state structure to draw_primitive(). wined3d: Explicitly pass a wined3d_state structure to context_apply_draw_state(). Vincent Povirk (5): mscoree: Update Wine Mono to 4.6.2...
2009 Oct 10
0
[PATCH 1/7] nv50: use SIFC for TIC, TSC upload
..., struct nouveau_stateobj *so, void nv50_tex_validate(struct nv50_context *nv50) { + struct nouveau_grobj *eng2d = nv50->screen->eng2d; struct nouveau_grobj *tesla = nv50->screen->tesla; struct nouveau_stateobj *so; - int unit, push; + unsigned i, unit, push; - push = nv50->miptree_nr * 9 + 2; - push += MAX2(nv50->miptree_nr, nv50->state.miptree_nr) * 2; + push = MAX2(nv50->miptree_nr, nv50->state.miptree_nr) * 2 + 23 + 6; + so = so_new(nv50->miptree_nr * 9 + push, nv50->miptree_nr + 2); - so = so_new(push, nv50->miptree_nr * 2); - so_method(so, tesla,...
2015 Sep 03
2
[PATCH mesa 3/4] nv30: Do not export msaa capabable visuals on nv3x
On Thu, Sep 3, 2015 at 7:25 AM, Hans de Goede <hdegoede at redhat.com> wrote: > On nv3x we will likely end up using the cpu to do color resolving for msaa > blits. Disable msaa on these cards so that we do not end up using the cpu. Actually the CPU fallback won't do scaled, so it's stuck with SIFM or assert(false). Which isn't great, but... it's what the HW does. I
2012 Apr 06
1
[WIP PATCH] dri/nouveau: Add S3TC support for nv20.
...based on Ben's newlib branch. I have few issues though: 1) So far it needs libtxc_dxtn, but I might expose the s3tc extensions even without encoder using driconf option - Is that desirable? 2) Looking at blob's dedma'd valgrind-mmt dumps it seems blob uses pitch no smaller than 64 in miptree, but for me everything works as it is. Does it make any difference? 2) I am not sure about computing the offsets in teximage_map - it works like this, but can somebody confirm it's ok? 3) If somebody can give me some feedback on the style etc., please do. 4) S3TC texture seem to be supported...
2009 Oct 14
0
[PATCH 3/7] nv50: submit user vbo data through the fifo
...ers/nv50/nv50_context.h @@ -120,6 +120,7 @@ struct nv50_state { struct nouveau_stateobj *vtxfmt; struct nouveau_stateobj *vtxbuf; struct nouveau_stateobj *vtxattr; + unsigned vtxelt_nr; }; struct nv50_context { @@ -152,6 +153,8 @@ struct nv50_context { unsigned sampler_nr; struct nv50_miptree *miptree[PIPE_MAX_SAMPLERS]; unsigned miptree_nr; + + uint16_t vbo_fifo; }; static INLINE struct nv50_context * diff --git a/src/gallium/drivers/nv50/nv50_vbo.c b/src/gallium/drivers/nv50/nv50_vbo.c index 8b0fbf0..697a807 100644 --- a/src/gallium/drivers/nv50/nv50_vbo.c +++ b/src/gallium/driv...
2015 Nov 25
4
NV50 compute support questions
..., argv=<optimized out>) at compute.c:1584 Which comes from the assert here: static struct pipe_surface * nvc0_surface_create(struct pipe_context *pipe, struct pipe_resource *pres, const struct pipe_surface *templ) { /* surfaces are assumed to be miptrees all over the place. */ assert(pres->target != PIPE_BUFFER); if (unlikely(pres->target == PIPE_BUFFER)) return nv50_surface_from_buffer(pipe, pres, templ); return nvc0_miptree_surface_new(pipe, pres, templ); } Just dropping that assert helps somewhat, it leads to: PIPE_CO...
2015 Nov 26
2
NV50 compute support questions
...rom the assert here: >> >> static struct pipe_surface * >> nvc0_surface_create(struct pipe_context *pipe, >> struct pipe_resource *pres, >> const struct pipe_surface *templ) >> { >> /* surfaces are assumed to be miptrees all over the place. */ >> assert(pres->target != PIPE_BUFFER); >> if (unlikely(pres->target == PIPE_BUFFER)) >> return nv50_surface_from_buffer(pipe, pres, templ); >> return nvc0_miptree_surface_new(pipe, pres, templ); >> } >> >> J...
2015 Nov 26
0
NV50 compute support questions
...1584 > > Which comes from the assert here: > > static struct pipe_surface * > nvc0_surface_create(struct pipe_context *pipe, > struct pipe_resource *pres, > const struct pipe_surface *templ) > { > /* surfaces are assumed to be miptrees all over the place. */ > assert(pres->target != PIPE_BUFFER); > if (unlikely(pres->target == PIPE_BUFFER)) > return nv50_surface_from_buffer(pipe, pres, templ); > return nvc0_miptree_surface_new(pipe, pres, templ); > } > > Just dropping that assert hel...
2015 Nov 26
0
NV50 compute support questions
...;> >>> static struct pipe_surface * >>> nvc0_surface_create(struct pipe_context *pipe, >>> struct pipe_resource *pres, >>> const struct pipe_surface *templ) >>> { >>> /* surfaces are assumed to be miptrees all over the place. */ >>> assert(pres->target != PIPE_BUFFER); >>> if (unlikely(pres->target == PIPE_BUFFER)) >>> return nv50_surface_from_buffer(pipe, pres, templ); >>> return nvc0_miptree_surface_new(pipe, pres, templ); >>> }...
2015 Nov 25
0
NV50 compute support questions
...1584 > > Which comes from the assert here: > > static struct pipe_surface * > nvc0_surface_create(struct pipe_context *pipe, > struct pipe_resource *pres, > const struct pipe_surface *templ) > { > /* surfaces are assumed to be miptrees all over the place. */ > assert(pres->target != PIPE_BUFFER); > if (unlikely(pres->target == PIPE_BUFFER)) > return nv50_surface_from_buffer(pipe, pres, templ); > return nvc0_miptree_surface_new(pipe, pres, templ); > } > > Just dropping that assert hel...