search for: pipe_resourc

Displaying 20 results from an estimated 46 matches for "pipe_resourc".

Did you mean: pipe_resource
2014 Nov 27
0
[Mesa-dev] [RFC] tegra: Initial support
...buffer = &buf; > + } > + > + context->gpu->set_index_buffer(context->gpu, buffer); > +} > + > +static struct pipe_stream_output_target * > +tegra_create_stream_output_target(struct pipe_context *pcontext, > + struct pipe_resource *presource, > + unsigned buffer_offset, > + unsigned buffer_size) > +{ > + struct tegra_resource *resource = to_tegra_resource(presource); > + struct tegra_context *context = to_tegra_context(pcontext); >...
2014 Mar 01
1
[PATCH] nouveau: add valid range tracking to nouveau_buffer
.../nouveau/nv50/nv50_resource.c b/src/gallium/drivers/nouveau/nv50/nv50_resource.c index 7fbb0a9..d289b4a 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_surf...
2014 Nov 27
7
[RFC] tegra: Initial support
...;buf, buffer, sizeof(buf)); + buf.buffer = tegra_resource_unwrap(buf.buffer); + buffer = &buf; + } + + context->gpu->set_index_buffer(context->gpu, buffer); +} + +static struct pipe_stream_output_target * +tegra_create_stream_output_target(struct pipe_context *pcontext, + struct pipe_resource *presource, + unsigned buffer_offset, + unsigned buffer_size) +{ + struct tegra_resource *resource = to_tegra_resource(presource); + struct tegra_context *context = to_tegra_context(pcontext); + + return context->gpu->create_stream_output_target(context->gpu, + resource-&...
2016 Feb 15
2
[PATCH 23/23] nvc0: implement support for maxwell texture headers
...@@ -59,12 +60,188 @@ nvc0_create_sampler_view(struct pipe_context *pipe, > return nvc0_create_texture_view(pipe, res, templ, flags, templ->target); > } > > -struct pipe_sampler_view * > -nvc0_create_texture_view(struct pipe_context *pipe, > - struct pipe_resource *texture, > - const struct pipe_sampler_view *templ, > - uint32_t flags, > - enum pipe_texture_target target) > +static struct pipe_sampler_view * > +gm107_create_texture_view(struct pipe_context *pipe, > +...
2012 Jan 10
5
[PATCH 0/4] nvfx: rework render temps code and fixes
This patch series silences some unknown cap warnings and fixes up coding style (patch 1+4). The most important part of this series are the two patches in the middle. They rework the state_fb code, so that we are able to render to not 64 byte aligned targets, as this is the only real use-case for render temporaries this allows us to drop temp code completely and simplifies a lot
2016 Feb 15
0
[PATCH 23/23] nvc0: implement support for maxwell texture headers
...nv50/g80_defs.xml.h" @@ -59,12 +60,188 @@ nvc0_create_sampler_view(struct pipe_context *pipe, return nvc0_create_texture_view(pipe, res, templ, flags, templ->target); } -struct pipe_sampler_view * -nvc0_create_texture_view(struct pipe_context *pipe, - struct pipe_resource *texture, - const struct pipe_sampler_view *templ, - uint32_t flags, - enum pipe_texture_target target) +static struct pipe_sampler_view * +gm107_create_texture_view(struct pipe_context *pipe, + struct...
2014 Jul 01
1
[PATCH 1/2] nv50: do an explicit flush on draw when there are persistent buffers
...; + int i, s; if (flags & PIPE_BARRIER_MAPPED_BUFFER) { for (i = 0; i < nv50->num_vtxbufs; ++i) { @@ -74,6 +74,26 @@ nv50_memory_barrier(struct pipe_context *pipe, unsigned flags) if (nv50->idxbuf.buffer && nv50->idxbuf.buffer->flags & PIPE_RESOURCE_FLAG_MAP_PERSISTENT) nv50->base.vbo_dirty = TRUE; + + for (s = 0; s < 3 && !nv50->cb_dirty; ++s) { + uint32_t valid = nv50->constbuf_valid[s]; + + while (valid && !nv50->cb_dirty) { + const unsigned i = ffs(valid) - 1; +...
2016 Feb 15
0
[PATCH 23/23] nvc0: implement support for maxwell texture headers
...0_create_sampler_view(struct pipe_context *pipe, >> return nvc0_create_texture_view(pipe, res, templ, flags, templ->target); >> } >> >> -struct pipe_sampler_view * >> -nvc0_create_texture_view(struct pipe_context *pipe, >> - struct pipe_resource *texture, >> - const struct pipe_sampler_view *templ, >> - uint32_t flags, >> - enum pipe_texture_target target) >> +static struct pipe_sampler_view * >> +gm107_create_texture_view(struct pipe_con...
2014 May 27
1
[PATCH V3] nvc0: implement clear_buffer
...30c..3572193 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c @@ -345,6 +345,156 @@ nvc0_clear_render_target(struct pipe_context *pipe, } static void +nvc0_clear_buffer_cpu(struct pipe_context *pipe, + struct pipe_resource *res, + unsigned offset, unsigned size, + const void *data, int data_size) +{ + struct nv04_resource *buf = nv04_resource(res); + struct pipe_transfer *pt; + struct pipe_box box; + unsigned elements, i; + + elements = size / data_size; + + u_bo...
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
2014 May 26
1
[PATCH V2] nvc0: implement clear_buffer
...30c..242924a 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c @@ -345,6 +345,156 @@ nvc0_clear_render_target(struct pipe_context *pipe, } static void +nvc0_clear_buffer_cpu(struct pipe_context *pipe, + struct pipe_resource *res, + unsigned offset, unsigned size, + const void *data, int data_size) +{ + struct nv04_resource *buf = nv04_resource(res); + struct pipe_transfer *pt; + struct pipe_box box; + unsigned elements, i; + + elements = size / data_size; + + u_bo...
2014 May 26
2
Implement buffer_clear for nvc0
Hi, please review the following patch! Thanks, Tobias Klausmann
2015 Nov 19
7
[Bug 93004] New: Guild Wars 2 crash on nouveau DX11 cards
https://bugs.freedesktop.org/show_bug.cgi?id=93004 Bug ID: 93004 Summary: Guild Wars 2 crash on nouveau DX11 cards Product: Mesa Version: git Hardware: Other OS: All Status: NEW Severity: normal Priority: medium Component: Drivers/DRI/nouveau Assignee: nouveau at
2014 May 26
0
[PATCH] nvc0: Implement buffer_clear for this type of hardware
....987b6c4 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c @@ -345,6 +345,176 @@ nvc0_clear_render_target(struct pipe_context *pipe, } static void +nvc0_clear_buffer_rgb32(struct pipe_context *pipe, + struct pipe_resource *res, + unsigned offset, unsigned size, + const void *data, int data_size) +{ + // FIXME: Find a way to do this with the GPU! + + struct nvc0_context *nvc0 = nvc0_context(pipe); + struct nouveau_pushbuf *push = nvc0->base.pushbuf; + struct n...
2013 Aug 10
3
[PATCH 1/4] nouveau: fix number of surfaces in video buffer, use defines
...h b/src/gallium/drivers/nouveau/nouveau_video.h index 1d6ced0..be53758 100644 --- a/src/gallium/drivers/nouveau/nouveau_video.h +++ b/src/gallium/drivers/nouveau/nouveau_video.h @@ -10,10 +10,10 @@ struct nouveau_video_buffer { struct pipe_video_buffer base; unsigned num_planes; - struct pipe_resource *resources[3]; - struct pipe_sampler_view *sampler_view_planes[3]; - struct pipe_sampler_view *sampler_view_components[3]; - struct pipe_surface *surfaces[3]; + struct pipe_resource *resources[VL_NUM_COMPONENTS]; + struct pipe_sampler_view *sampler_view_planes[VL_NUM_COMPONE...
2013 Dec 02
2
[PATCH] nouveau: Add lots of comments to the buffer transfer logic
...data in the specified range is going to + * be overwritten. + * + * The strategy for determining what kind of memory area to return is complex, + * see comments inside of the function. + */ static void * nouveau_buffer_transfer_map(struct pipe_context *pipe, struct pipe_resource *resource, @@ -352,11 +389,17 @@ nouveau_buffer_transfer_map(struct pipe_context *pipe, if (buf->domain == NOUVEAU_BO_VRAM) { if (usage & NOUVEAU_TRANSFER_DISCARD) { + /* Set up a staging area for the user to write to. It will be copied + * back into VRAM on un...
2015 Nov 26
9
[mesa 1/9] nouveau: bump required libdrm version to 2.4.66
From: Ben Skeggs <bskeggs at redhat.com> Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 4016871..c02ee61 100644 --- a/configure.ac +++ b/configure.ac @@ -73,7 +73,7 @@ LIBDRM_RADEON_REQUIRED=2.4.56 LIBDRM_AMDGPU_REQUIRED=2.4.63 LIBDRM_INTEL_REQUIRED=2.4.61
2014 Apr 30
1
[PATCH 1/2] nouveau: remove cb_dirty, it's never used
Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> --- src/gallium/drivers/nouveau/nouveau_buffer.c | 4 +--- src/gallium/drivers/nouveau/nouveau_context.h | 1 - 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/gallium/drivers/nouveau/nouveau_buffer.c b/src/gallium/drivers/nouveau/nouveau_buffer.c index e308ff4..904e2cc 100644 ---
2015 Dec 16
11
[mesa v3 1/9] nouveau: bump required libdrm version to 2.4.66
From: Ben Skeggs <bskeggs at redhat.com> v2. forgot bump for non-gallium driver Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- configure.ac | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index b6680d0..965c6f7 100644 --- a/configure.ac +++ b/configure.ac @@ -72,8 +72,8 @@ LIBDRM_REQUIRED=2.4.60
2013 Dec 03
0
[Mesa-dev] [PATCH] nouveau: Add lots of comments to the buffer transfer logic
...Dec 2, 2013 at 9:31 PM, Chris Forbes <chrisf at ijw.co.nz> wrote: > + * > + * Also marks vbo/cb dirty if the buffer's binding > > Looks like this stops mid-sentence. Hah, yeah. I kinda trailed off there, didn't I. Not sure how to finish that sentence though -- it's if pipe_resource->bind & PIPE_BIND_INDEX/VERTEX/CONSTANT. Perhaps "if the buffer is bound to ____"? Is there some good term I can use there? Maybe "Also marks vbo/cb dirty if the buffer is bound to them"? -ilia