Reviewed-by: Tobias Klausmann
On 09.05.2015 09:31, Ilia Mirkin wrote:
Commit 44673512a84 enabled support for saturating fmul. However
experimentally this does not seem to work on the older chips. Restrict
the feature to G200 (NVA0) and later.
Reported-by: Pierre Moreau
Bugzilla: https
On 25.01.2015 21:40, super_7b wrote:
Hi,
I took this issue to the Fedora forum initially, but no-one there has
been able to offer any guidance, so I have decided to come to the
nouveau community directly.
I was running a KDE desktop under Fedora 21 successfully, including
the ability to us
= nvkm_fuse_create(parent, engine, oclass, &priv);
*pobject = nv_object(priv); - if (ret) - return ret; - return 0; +
return ret; } struct nvkm_oclass
Reviewed-by: Tobias Klausmann
If it is helping :)
___
Nouveau mailing list
Nou
Folding for conversions:
F32->(U{16/32}, S{16/32})
(U{16/32}, {S16/32})->F32
U32 -> U16
Signed-off-by: Tobias Klausmann
---
V2: Split out F64 parts
V3: remove handling of saturate for (U/S)32
V4: handle U32->U16 for OP_TXF
.../drivers/nouveau/codegen/nv50_ir_peephol
On 11.01.2015 23:53, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 5:48 PM, Tobias Klausmann
wrote:
On 11.01.2015 23:12, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 5:08 PM, Tobias Klausmann
wrote:
On 11.01.2015 22:54, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 4:40 PM, Tobias Klausmann
On 12.01.2015 01:57, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 7:43 PM, Tobias Klausmann
wrote:
On 11.01.2015 06:05, Ilia Mirkin wrote:
Can you elaborate a bit as to why that's the right thing to do?
On Wed, Jan 7, 2015 at 1:52 PM, Tobias Klausmann
wrote:
If we capture tran
On 11.01.2015 06:05, Ilia Mirkin wrote:
Can you elaborate a bit as to why that's the right thing to do?
On Wed, Jan 7, 2015 at 1:52 PM, Tobias Klausmann
wrote:
If we capture transform feedback from n stream in (n-1) buffers we face a
NULL buffer, use the buffer (n-1) to capture the o
On 11.01.2015 23:12, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 5:08 PM, Tobias Klausmann
wrote:
On 11.01.2015 22:54, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 4:40 PM, Tobias Klausmann
wrote:
Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32},
{S16/32})->F32
Sign
On 11.01.2015 22:54, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 4:40 PM, Tobias Klausmann
wrote:
Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32}, {S16/32})->F32
Signed-off-by: Tobias Klausmann
---
V2: Split out F64 parts
V3: remove handling of saturate for (
Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32}, {S16/32})->F32
Signed-off-by: Tobias Klausmann
---
V2: Split out F64 parts
V3: remove handling of saturate for (U/S)32,
.../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 73 ++
1 file chang
On 11.01.2015 20:57, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 2:56 PM, Tobias Klausmann
wrote:
On 11.01.2015 20:19, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 12:27 PM, Tobias Klausmann
wrote:
On 11.01.2015 01:58, Ilia Mirkin wrote:
On Fri, Jan 9, 2015 at 8:24 PM, Tobias Klausmann
On 11.01.2015 20:19, Ilia Mirkin wrote:
On Sun, Jan 11, 2015 at 12:27 PM, Tobias Klausmann
wrote:
On 11.01.2015 01:58, Ilia Mirkin wrote:
On Fri, Jan 9, 2015 at 8:24 PM, Tobias Klausmann
wrote:
Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32},
{S16/32})->F32
Sign
On 11.01.2015 01:58, Ilia Mirkin wrote:
On Fri, Jan 9, 2015 at 8:24 PM, Tobias Klausmann
wrote:
Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32}, {S16/32})->F32
Signed-off-by: Tobias Klausmann
---
V2: beat me, whip me, split out F64
.../drivers/nouveau/c
Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32}, {S16/32})->F32
Signed-off-by: Tobias Klausmann
---
V2: beat me, whip me, split out F64
.../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 81 ++
1 file changed, 81 insertions(+)
diff --git a/src/g
On 10.01.2015 02:41, Ilia Mirkin wrote:
On Fri, Jan 9, 2015 at 6:47 PM, Tobias Klausmann
wrote:
Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32}, {S16/32})->F32
Signed-off-by: Tobias Klausmann
---
.../drivers/nouveau/codegen/nv50_ir_peephole.cpp
Folding for conversions: F32->(U{16/32}, S{16/32}) and (U{16/32}, {S16/32})->F32
Signed-off-by: Tobias Klausmann
---
.../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 109 +
1 file changed, 109 insertions(+)
diff --git a/src/gallium/drivers/nouveau/c
If we capture transform feedback from n stream in (n-1) buffers we face a
NULL buffer, use the buffer (n-1) to capture the output of stream n.
This fixes one piglit test with nvc0:
arb_gpu_shader5-xfb-streams-without-invocations
Signed-off-by: Tobias Klausmann
---
src/mesa/state_tracker
We enable compression only for some supported formats
Suggested-by: Ilia Mirkin
Signed-off-by: Tobias Klausmann
---
v2: add more formats for compression
v3: only enable compression if supported by drm
src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 21 ++---
src/gallium
On 03.01.2015 00:20, Ilia Mirkin wrote:
On Fri, Jan 2, 2015 at 6:09 PM, Tobias Klausmann
wrote:
We enable compression only for some supported formats
Suggested-by: Ilia Mirkin
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 23
We enable compression only for some supported formats
Suggested-by: Ilia Mirkin
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 23 +--
src/gallium/drivers/nouveau/nv50/nv50_screen.c | 7 +++
2 files changed, 28 insertions(+), 2
We enable compression only for some supported formats
Suggested-by: Ilia Mirkin
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 4 ++--
src/gallium/drivers/nouveau/nv50/nv50_screen.c | 11 +--
2 files changed, 11 insertions(+), 4 deletions
The set of variable defs does not need to be ordered in any way, and
removing/adding elements is a fairly common operation in various
optimization passes.
This shortens runtime of piglit test fp-long-alu to ~11s from ~22s
No piglit regressions observed on nvc0!
Signed-off-by: Tobias Klausmann
This was missed by commit:
nv50: handle inverted render conditions 1a170980a09d82201b88e3fe20684a0df2cfea80
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/nv50/nv50_query.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/gallium/drivers
Signed-off-by: Tobias Klausmann
---
docs/GL3.txt| 2 +-
docs/relnotes/10.4.html | 1 +
src/gallium/drivers/nouveau/nv50/nv50_context.h | 3 +-
src/gallium/drivers/nouveau/nv50/nv50_query.c | 56 +
src
The set of variable defs does not need to be ordered in any way, and
removing/adding elements is a fairly common operation in various
optimization passes.
This shortens runtime of piglit test fp-long-alu to ~11s from ~22s
No piglit regressions observed on nvc0!
Signed-off-by: Tobias Klausmann
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp
index 14b6d68
This shortens runtime of piglit test fp-long-alu to ~22s
No piglit regressions observed on nvc0!
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir.cpp | 6 +++---
src/gallium/drivers/nouveau/codegen/nv50_ir.h| 7 ---
src/gallium/drivers
Folding for conversions: F32/64->(U16/32, S16/32) and (U16/32, S16/32)->F32
No piglit regressions observed on nv50 and nvc0!
Signed-off-by: Tobias Klausmann
---
V2: fix usage of wrong variable
V3: enable F64 support
V4:
- disable F64 support again
- handle saturate flag: clamp to min/
Folding for conversions: F32/64->(U16/32, S16/32) and (U16/32, S16/32)->F32
No piglit regressions observed on nv50 and nvc0!
Signed-off-by: Tobias Klausmann
---
V2: fix usage of wrong variable
V3: enable F64 support
V4:
- disable F64 support again
- handle saturate flag: clamp to min/
Signed-off-by: Tobias Klausmann
---
.../drivers/nouveau/codegen/nv50_ir_build_util.cpp | 17 +
.../drivers/nouveau/codegen/nv50_ir_build_util.h| 2 ++
2 files changed, 19 insertions(+)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_build_util.cpp
b/src
Folding for conversions: F32/64->(U16/32, S16/32) and (U16/32, S16/32)->F32
No piglit regressions observed on nv50 and nvc0!
Signed-off-by: Tobias Klausmann
---
.../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 74 ++
1 file changed, 74 insertions(+)
diff --git
Folding for conversions: F32/64->(U16/32, S16/32) and (U16/32, S16/32)->F32
No piglit regressions observed!
Signed-off-by: Tobias Klausmann
---
.../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 74 ++
1 file changed, 74 insertions(+)
diff --git a/src/gallium/d
Hi Pali,
maybe you are missing a package somewhere? Latest git is building fine
for me on OBS/opensuse.
Greetings,
Tobias
On 01.07.2014 21:47, Pali Rohár wrote:
Hello,
nouveau xorg driver from master git repository cannot be compiled
on ubuntu precise. Here is build log:
https://launchpadl
ter on
each emit.
This fixes the remaining piglit tests in ARB_viewport_array for nvc0.
Note: Not tested on nv50
Signed-off-by: Tobias Klausmann
---
V2:
provide description
fix naming of vars
V3:
spare a function call, use the idx we already have
second arg to mkSymbol changed to 0,
ter on
each emit.
This fixes the remaining piglit tests in ARB_viewport_array for nvc0.
Note: Not tested on nv50
Signed-off-by: Tobias Klausmann
---
V2:
provide description
fix naming of vars
.../drivers/nouveau/codegen/nv50_ir_driver.h | 1 +
.../drivers/nouveau/code
Signed-off-by: Tobias Klausmann
---
.../drivers/nouveau/codegen/nv50_ir_driver.h | 1 +
.../drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp | 27 --
2 files changed, 26 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_driver.h
b
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/nvc0/nvc0_context.h| 7 +-
src/gallium/drivers/nouveau/nvc0/nvc0_program.c| 2 +-
src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 20 ++--
src/gallium/drivers/nouveau/nvc0/nvc0_screen.h | 3 +
src/gallium
Use TGSI_SEMANTIC_VIEWPORT_INDEX for the last consumer.
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_driver.h| 1 -
src/gallium/drivers/nouveau/codegen/nv50_ir_target_nv50.cpp | 2 +-
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/src
Signed-off-by: Tobias Klausmann
---
docs/GL3.txt| 2 +-
docs/relnotes/10.3.html | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/docs/GL3.txt b/docs/GL3.txt
index f5f940c..a392b92 100644
--- a/docs/GL3.txt
+++ b/docs/GL3.txt
@@ -132,7 +132,7 @@ GL 4.1
This patch-series implements the ARB_viewport_array for nvc0 and does
a little house-cleanig afterwords.
V2:
Add Release-Notes, mark this in GL3 as done for nvc0
Don't mark the scissors dirty when we don't need to do that
Tobias Klausmann (3):
nvc0: implement multiple viewport
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/nvc0/nvc0_surface.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
index c28ec6d..72227b8 100644
--- a/src/gallium/drivers
We use TGSI_SEMANTIC_VIEWPORT_INDEX for nvc0 now as well.
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_driver.h| 1 -
src/gallium/drivers/nouveau/codegen/nv50_ir_target_nv50.cpp | 1 -
2 files changed, 2 deletions(-)
diff --git a/src/gallium/drivers
This patch-series implements the ARB_viewport_array for nvc0 and does
a little house-cleanig afterwords.
Tobias Klausmann (3):
nvc0: implement multiple viewports/scissors, enable ARB_viewport_array
nvc0: mark scissor in nvc0_clear_{}
nv50/ir: Remove NV50_SEMANTIC_VIEWPORTINDEX and its last
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/nvc0/nvc0_context.h| 7 +-
src/gallium/drivers/nouveau/nvc0/nvc0_program.c| 2 +-
src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 20 ++--
src/gallium/drivers/nouveau/nvc0/nvc0_screen.h | 3 +
src/gallium
Signed-off-by: Tobias Klausmann
---
V2: Add support for a single-argument version of POPCNT for Maxwell (SM5)
V3: Clean up a bit more
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 11 +++
1 file changed, 11 insertions(+)
diff --git a/src/gallium/drivers/nouveau/codegen
Signed-off-by: Tobias Klausmann
---
V3: Use BuildUtil for the Immediate instead of a type conversion
.../drivers/nouveau/codegen/nv50_ir_peephole.cpp| 17 +
1 file changed, 17 insertions(+)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
b/src
Yet another try for constant folding of Instructions for nvc0.
Please Review this again! (Hopefully the last time ;-) )
Tobias Klausmann (4):
nvc0/ir: clear subop when folding constant expressions
nvc0/ir: Handle reverse subop for OP_EXTBF when folding constant
expressions
nvc0/ir
Some operations (e.g. OP_MUL/OP_MAD/OP_EXTBF might have a subop set.
After folding, make sure that it is cleared
Signed-off-by: Tobias Klausmann
Reviewed-by: Ilia Mirkin
---
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/gallium
Signed-off-by: Tobias Klausmann
---
V2: Handle the instruction right (shift after reverse)
V3: Reverse once, not independently for every TYPE
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/gallium
And another try for constant folding of Instructions for nvc0.
Please Review this!
Thanks,
Tobias Klausmann
Tobias Klausmann (4):
nvc0/ir: clear subop when folding constant expressions
nvc0/ir: Handle reverse subop for OP_EXTBF when folding constant
expressions
nvc0/ir: Handle
Signed-off-by: Tobias Klausmann
---
.../drivers/nouveau/codegen/nv50_ir_peephole.cpp | 18 ++
1 file changed, 18 insertions(+)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
index a214ffc
V2: Add support for a single-argument version of POPCNT for Maxwell (SM5)
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 15 +++
1 file changed, 15 insertions(+)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
b
Some operations (e.g. OP_MUL/OP_MAD/OP_EXTBF might have a subop set.
After folding, make sure that it is cleared
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/gallium/drivers/nouveau/codegen
V2: Handle the instruction right (shift after reverse)
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 16 ++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
b
ify that you tested how the HW handles this, as well as
exactly how you did it (i.e. how did you modify the code + piglit
test, what the results were, etc)
On Thu, May 29, 2014 at 3:43 PM, Tobias Klausmann
wrote:
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/code
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 10 ++
1 file changed, 10 insertions(+)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
index 93f7c2a..68b9a6d
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 14 --
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 14 ++
1 file changed, 14 insertions(+)
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
index 68b9a6d
Some operations (e.g. OP_MUL/OP_MAD/OP_EXTBF might have a subop set.
After folding, make sure that it is cleared
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/gallium/drivers/nouveau/codegen
when folding constant expressions
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 39
+--
1 file changed, 37 insertions(+), 2 deletions(-)
Thanks,
Tobias Klausmann
___
Nouveau mailing list
Nouveau
- don't mark the framebuffer dirty for if we don't touch
the GPU
Signed-off-by: Tobias Klausmann
---
src/gallium/drivers/nouveau/nvc0/nvc0_surface.c | 151
1 file changed, 151 insertions(+)
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
v2: change patch according to Ilia Mirkins review
---
src/gallium/drivers/nouveau/nvc0/nvc0_surface.c | 151
1 file changed, 151 insertions(+)
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
index 6b7c30c..24
---
src/gallium/drivers/nouveau/nvc0/nvc0_surface.c | 171
1 file changed, 171 insertions(+)
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
b/src/gallium/drivers/nouveau/nvc0/nvc0_surface.c
index 6b7c30c..987b6c4 100644
--- a/src/gallium/drivers/nouveau/nvc
Hi, please review the following patch!
Thanks,
Tobias Klausmann
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau
On 09.09.2013 00:29, Dave Airlie wrote:
On Mon, Sep 9, 2013 at 8:01 AM, Tobias Klausmann
wrote:
On 08.09.2013 23:33, Dave Airlie wrote:
Looks like you have Optimus (intel + nvidia), and the backtrace has
runtime pm in it, which is something new Dave added for 3.12, adding
him in explicitly
On 08.09.2013 23:33, Dave Airlie wrote:
Looks like you have Optimus (intel + nvidia), and the backtrace has
runtime pm in it, which is something new Dave added for 3.12, adding
him in explicitly. The simplest explanation is that disp->init is
NULL. And it seems like there are no outputs from the
---
drivers/gpu/drm/nouveau/nouveau_display.c | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_display.c
b/drivers/gpu/drm/nouveau/nouveau_display.c
index d2712e6..a4ba734 100644
--- a/drivers/gpu/drm/nouveau/nouveau_display.c
+++ b/drivers
> Looks like you have Optimus (intel + nvidia), and the backtrace has
> runtime pm in it, which is something new Dave added for 3.12, adding
> him in explicitly. The simplest explanation is that disp->init is
> NULL. And it seems like there are no outputs from the earlier nouveau
> init prints. I
101 - 168 of 168 matches
Mail list logo