[Mesa-dev] [PATCH 03/11] panfrost: Rename tiler fields per tiler research

2019-06-14 Thread Alyssa Rosenzweig
incomplete. Update the names, decoder, and comments to reflect this new understanding. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/include/panfrost-job.h | 40 -- src/gallium/drivers/panfrost/pan_context.c| 52 ++- .../drivers/panfrost/pandecod

[Mesa-dev] [PATCH 00/11] panfrost: Hierarchical tiling work

2019-06-14 Thread Alyssa Rosenzweig
e'll use these sizes to statically allocate the polygon list on a per-framebuffer basis. Alyssa Rosenzweig (11): panfrost: Integrate kernel names for tiler FBD panfrost: Add notes about the tiler allocations panfrost: Rename tiler fields per tiler research panfrost: Document tile size

[Mesa-dev] [PATCH 09/11] panfrost: Sanity check tiler polygon list size

2019-06-14 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 5 + 1 file changed, 5 insertions(+) diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c index a30b9e29701..d1e5b4ce647 100644 --- a/src/gallium/drivers

[Mesa-dev] [PATCH 07/11] panfrost: Use polygon list header size computation

2019-06-14 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 21 - 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c index 0363591f79f..ecb68c990a0

[Mesa-dev] [PATCH 11/11] panfrost: Stub out hierarchy mask selection

2019-06-14 Thread Alyssa Rosenzweig
Quite a bit of refactoring in the main driver will be necessary to make use of this effectively, so the implementation is incomplete. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_tiler.c | 21 + 1 file changed, 21 insertions(+) diff --git a/src

[Mesa-dev] [PATCH 06/11] panfrost: Calculate polygon list header size

2019-06-14 Thread Alyssa Rosenzweig
As per the notes at the beginning of pan_tiler.c, we implement a routine to calculate the size of the polygon list header given the framebuffer dimensions and the provided hierarchy mask. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/meson.build | 3 +- src/gallium/drivers

[Mesa-dev] [PATCH 08/11] panfrost: Compute and use polygon list body size

2019-06-14 Thread Alyssa Rosenzweig
This is a bit of a hack, but it gets the point across. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 7 ++- src/gallium/drivers/panfrost/pan_tiler.c | 14 ++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers

[Mesa-dev] [PATCH 10/11] panfrost: Rename misc_0 -> tiler_polygon_list

2019-06-14 Thread Alyssa Rosenzweig
Just for readability. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 14 +++--- src/gallium/drivers/panfrost/pan_context.h | 3 +-- src/gallium/drivers/panfrost/pan_drm.c | 2 +- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src

[Mesa-dev] [PATCH 0/6] panfrost: Misc. fixes

2019-06-14 Thread Alyssa Rosenzweig
This series includes misc. fixes to improve robustness for for more complex apps. Alyssa Rosenzweig (6): panfrost: Identify and decode mfbd_flags panfrost: Disable the tiler for clear-only jobs panfrost: Improve viewport (clipping) robustness panfrost: Flush scanout too panfrost: Remove

[Mesa-dev] [PATCH 3/6] panfrost: Improve viewport (clipping) robustness

2019-06-14 Thread Alyssa Rosenzweig
On more complex apps (possibly using desktop GL specific extensions?), our viewport code was getting wacky results for unclear reasons. Let's be a little less wacky. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 41 ++ 1 file change

[Mesa-dev] [PATCH 2/6] panfrost: Disable the tiler for clear-only jobs

2019-06-14 Thread Alyssa Rosenzweig
To do so, we route some basic information through to the FBD creation routines (currently just a binary toggle of "has draws?"). Eventually, more refactoring will enable dynamic hierarchy mask selection, but right now we do the most basic. Signed-off-by: Alyssa Rosenzweig --- s

[Mesa-dev] [PATCH 6/6] panfrost: Handle missing texture case

2019-06-14 Thread Alyssa Rosenzweig
In some cases, Gallium can give us bad info about the texture count, counting some NULL textures. We pass Gallium's info to the hardware blindly, which can confuse the hardware in edge cases. This patch adjusts accordingly. --- src/gallium/drivers/panfrost/pan_context.c | 47 +-

[Mesa-dev] [PATCH 5/6] panfrost: Remove forced flush on clears

2019-06-14 Thread Alyssa Rosenzweig
This worked around a bug in ld versions of Panfrost. Nowadays, its presence is, at best, *creating* bugs. Let's wack it. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 4 1 file changed, 4 deletions(-) diff --git a/src/gallium/drivers/pan

[Mesa-dev] [PATCH 1/6] panfrost: Identify and decode mfbd_flags

2019-06-14 Thread Alyssa Rosenzweig
Previously known as the unk3 field. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/include/panfrost-job.h | 4 ++-- src/gallium/drivers/panfrost/pan_mfbd.c | 12 ++-- src/gallium/drivers/panfrost/pandecode/decode.c | 16 ++-- 3 files changed, 22

[Mesa-dev] [PATCH 4/6] panfrost: Flush scanout too

2019-06-14 Thread Alyssa Rosenzweig
In a poorly coded app, the framebuffer can be partially drawn, an FBO switched, switch back to the framebuffer and keep drawing, etc. Reordering would fix this, but for now we need to just be careful about flushing scanout too. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost

Re: [Mesa-dev] [PATCH 1/2] util: Add util_is_power_of_two_minus_one

2019-06-14 Thread Alyssa Rosenzweig
> Except it would have to be util_is_power_of_two_or_zero because > util_is_power_of_two(0x + 1) is false. :) Corner cases, corner cases! > Is there actually a 2/2 for this? We usually wouldn't land something > like this without a caller. The 1/2 on there was accidentally, sorry. The us

Re: [Mesa-dev] [PATCH 1/2] util: Add util_is_power_of_two_minus_one

2019-06-14 Thread Alyssa Rosenzweig
Honestly, maybe I should just retract the patch. What's the lingo for that? :P signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH 7/8] panfrost/midgard: Adjust swizzles for 2D arrays

2019-06-14 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/midgard/midgard_compile.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c index 7d7bda6ee12

[Mesa-dev] [PATCH 0/8] panfrost: 2D array and 3D textures

2019-06-14 Thread Alyssa Rosenzweig
Exactly what it says on the tin. Decode them and implement them. Alyssa Rosenzweig (8): panfrost/midgard: Add swizzle_of/mask_of helpers panfrost/midgard: Fix 3D texture masks/swizzles panfrost: Specify 3D in texture descriptor panfrost: Implement 3D texture resource management panfrost

[Mesa-dev] [PATCH 6/8] panfrost: Set array_size to permit array textures

2019-06-14 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 11 +++ 1 file changed, 11 insertions(+) diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c index 4541b84754c..ec0e4ef7876 100644 --- a/src/gallium

[Mesa-dev] [PATCH 8/8] panfrost: Resource management for linear 2D texture arrays

2019-06-14 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_resource.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers/panfrost/pan_resource.c index 7c0d54a1f9f..81a74735592 100644 --- a/src

[Mesa-dev] [PATCH 5/8] panfrost: Decode array textures

2019-06-14 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/include/panfrost-job.h | 3 +-- src/gallium/drivers/panfrost/pandecode/decode.c | 6 -- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/panfrost/include/panfrost-job.h b/src/gallium

[Mesa-dev] [PATCH 2/8] panfrost/midgard: Fix 3D texture masks/swizzles

2019-06-14 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/midgard/midgard_compile.c| 11 --- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c index

[Mesa-dev] [PATCH 4/8] panfrost: Implement 3D texture resource management

2019-06-14 Thread Alyssa Rosenzweig
Passes dEQP-GLES3.functional.texture.format.unsized.*3d* Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_resource.c | 47 ++--- 1 file changed, 42 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers

[Mesa-dev] [PATCH 3/8] panfrost: Specify 3D in texture descriptor

2019-06-14 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/include/panfrost-job.h | 3 +++ src/gallium/drivers/panfrost/pan_context.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/include/panfrost-job.h b/src/gallium/drivers

[Mesa-dev] [PATCH 1/8] panfrost/midgard: Add swizzle_of/mask_of helpers

2019-06-14 Thread Alyssa Rosenzweig
These make manipulating vectors in the Midgard compiler easier. Signed-off-by: Alyssa Rosenzweig --- .../panfrost/midgard/midgard_compile.c| 36 +++ 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b

[Mesa-dev] [PATCH] panfrost: Don't align to tile either for non-alignable textures

2019-06-14 Thread Alyssa Rosenzweig
Tag to the 3D texture series. With this it passes 100% of dEQP-GLES3.functional.texture.format.unsized.* I plan to squash this in but don't want to resend the whole series just for this. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_resource.c | 2 ++ 1 file chang

Re: [Mesa-dev] [PATCH 1/6] nir/builder: Add the nir_imm_ivec3() helper

2019-06-17 Thread Alyssa Rosenzweig
Reviewed-by, seems like a good idea to have the full set :) ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH 2/6] nir/lower_tex: Add a way to lower TXS(non-0-LOD) instructions

2019-06-17 Thread Alyssa Rosenzweig
I'm not sure if there is a more idiomatic "NIR" way to express the body of nir_lower_txs_lod, so let's wait to hear some feedback. In principle, I think this is a great idea :) signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@

Re: [Mesa-dev] [PATCH 3/6] panfrost: Control texop value earlier

2019-06-17 Thread Alyssa Rosenzweig
This conflicts with texture bias/LOD work (in a functional sense, not a git sense). We can probably reuse the switch from the previous function rather than duplicating the op list :) signature.asc Description: PGP signature ___ mesa-dev mailing list mes

Re: [Mesa-dev] [PATCH 5/6] panfrost: Move sysval upload logic out of panfrost_emit_for_draw()

2019-06-17 Thread Alyssa Rosenzweig
Reviewed-by: Alyssa Rosenzweig , thank you! signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH 6/6] panfrost: Add support for TXS instructions

2019-06-17 Thread Alyssa Rosenzweig
> +/* > + * Note: the first call is here to lower RECT and TXP, the second one > + * to lower the TXS(lod) instructions generated by the RECT lowering > + * done in the first pass. > + * > + * FIXME: we should probably have a > + * > +

Re: [Mesa-dev] [PATCH 3/6] panfrost: Control texop value earlier

2019-06-17 Thread Alyssa Rosenzweig
> No problem, I'll rebase once this work has landed. I thought it has? > Hm, the list of allowed ops is likely to differ (doesn't make sense to > allow txs instructions when building a midgard tex instruction) so I'm > not sure it's a good idea to share this switch statement. Well, I was maybe m

Re: [Mesa-dev] [PATCH 4/6] panfrost: Make the sysval logic more generic

2019-06-17 Thread Alyssa Rosenzweig
Reviewed-by, thank you! signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH RFC 2/2] nir/lower_tex: Update ->sampler_dim value before calling get_texture_size()

2019-06-17 Thread Alyssa Rosenzweig
> Note that I don't have write permissions to the mesa tree, so I'll need > someone to apply the patch once it's considered ready to be merged. I can apply v2 once it has the necessary R-b's (Jason's will do, of course :) ) signature.asc Description: PGP signature ___

[Mesa-dev] [PATCH 1/2] nir: add a vectorization pass

2019-06-17 Thread Alyssa Rosenzweig
From: Connor Abbott This effectively does the opposite of nir_lower_alus_to_scalar, trying to combine per-component ALU operations with the same sources but different swizzles into one larger ALU operation. It uses a similar model as CSE, where we do a depth-first approach and keep around a hash

[Mesa-dev] [PATCH 2/2] panfrost/midgard: Enable autovectorization

2019-06-17 Thread Alyssa Rosenzweig
Enable nir_opt_vectorize. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/midgard/midgard_compile.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard

Re: [Mesa-dev] [PATCH] panfrost: Adapt to constant name change in UABI

2019-06-18 Thread Alyssa Rosenzweig
Reviewed-by: Alyssa Rosenzweig , thank you! signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH] panfrost: ci: Update results

2019-06-18 Thread Alyssa Rosenzweig
Not sure what would have fixed any of these but sure, A-b, I won't say no to fixed tests ^_^ What about the fragment_ops.scissor.* tests? signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.fr

Re: [Mesa-dev] [PATCH] panfrost: ci: Update results

2019-06-18 Thread Alyssa Rosenzweig
> Don't know, what about them? They seem to pass. There were a few that were failing before and have now been fixe-- oh wait, I remember to update the expectations myself. Never mind! :) signature.asc Description: PGP signature ___ mesa-dev mailing lis

Re: [Mesa-dev] [PATCH] panfrost: Move to use ralloc for some allocations

2019-06-18 Thread Alyssa Rosenzweig
Woah :) I'm okay with this if CI is. I recall having issues when I tried this but maybe I'm just bad at memory. Actually, maybe I don't recall issues. Did I even try this? Like I said. Bad at memory. R-b, thank you ^^ signature.asc Description: PGP signature __

[Mesa-dev] [PATCH 0/9] panfrost: Initial sRGB support

2019-06-18 Thread Alyssa Rosenzweig
2.x, which matters for glamor. Alyssa Rosenzweig (9): panfrost: Refactor texture targets panfrost: Decode rendering block type panfrost: Implement tiled rendering panfrost: Add sRGB render target flag panfrost: Implement sRGB texturing panfrost: Specify sRGB in the render target panfro

[Mesa-dev] [PATCH 1/9] panfrost: Refactor texture targets

2019-06-18 Thread Alyssa Rosenzweig
otice the sRGB enable bit, which we document and decode as well here so we don't forget about it. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/include/panfrost-job.h | 23 +- .../drivers/panfrost/midgard/disassemble.c| 12 .../drivers/panfrost/midgard/mi

[Mesa-dev] [PATCH 3/9] panfrost: Implement tiled rendering

2019-06-18 Thread Alyssa Rosenzweig
We already can sample from Mali's linear/tiled encoding (the one from Utgard -- AFBC is mostly unrelated); let's be able to render to it as well. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_mfbd.c | 4 1 file changed, 4 insertions(+) diff --git a/s

[Mesa-dev] [PATCH 4/9] panfrost: Add sRGB render target flag

2019-06-18 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/include/panfrost-job.h | 1 + src/gallium/drivers/panfrost/pandecode/decode.c | 1 + 2 files changed, 2 insertions(+) diff --git a/src/gallium/drivers/panfrost/include/panfrost-job.h b/src/gallium/drivers/panfrost/include

[Mesa-dev] [PATCH 8/9] panfrost: Disable AFBC on sRGB buffers

2019-06-18 Thread Alyssa Rosenzweig
The performance impact is slightly mitigated by tiling the render target, but it's undeniably still slow compared to AFBC. Unfortunately, it doesn't look like AFBC and sRGB play nice... Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_afbc.c | 7 +++ 1 file

[Mesa-dev] [PATCH 5/9] panfrost: Implement sRGB texturing

2019-06-18 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c index 4d9705671bd..5dac0820920 100644 --- a/src/gallium

[Mesa-dev] [PATCH 9/9] panfrost: Enable sRGB

2019-06-18 Thread Alyssa Rosenzweig
Now that sRGB formats are supported for both rendering and sampling, advertise support. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_screen.c | 4 1 file changed, 4 deletions(-) diff --git a/src/gallium/drivers/panfrost/pan_screen.c b/src/gallium/drivers/panfrost

[Mesa-dev] [PATCH 6/9] panfrost: Specify sRGB in the render target

2019-06-18 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_mfbd.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/pan_mfbd.c b/src/gallium/drivers/panfrost/pan_mfbd.c index f9a69e47e45..c082d0b91a3 100644 --- a/src/gallium/drivers

[Mesa-dev] [PATCH 2/9] panfrost: Decode rendering block type

2019-06-18 Thread Alyssa Rosenzweig
A mode for rendering tiled/uncompressed was noticed, so we reshuffle the MFBD render target definitions to explicitly include block type. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/include/panfrost-job.h | 14 +--- src/gallium/drivers/panfrost/pan_mfbd.c | 8

[Mesa-dev] [PATCH 7/9] panfrost: Enable sRGB fixed-function blending

2019-06-18 Thread Alyssa Rosenzweig
For fixed-function, we have hardware to handle sRGB so we just set a flag. For blend shaders, it's rather more involved; this is currently unimplemented. Assert it out for now; we don't need it quite yet. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/include/panf

[Mesa-dev] [PATCH 0/3] panfrost/midgard: Pack constant bias/lod

2019-06-18 Thread Alyssa Rosenzweig
Midgard texture ops taking bias/LOD(/offset) have both immediate and register modes, depending on whether the argument is constant or not. Rather than always using register mode and emitting dumb modes all over the place, support packing constant bias/LOD. Alyssa Rosenzweig (3): panfrost

[Mesa-dev] [PATCH 2/3] panfrost/midgard: Add helper to encode constant bias

2019-06-18 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- .../panfrost/midgard/midgard_compile.c| 34 +++ 1 file changed, 34 insertions(+) diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c index 1cc551b603c

[Mesa-dev] [PATCH 1/3] panfrost/midgard: Handle negative immediate bias

2019-06-18 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/midgard/disassemble.c | 7 --- src/gallium/drivers/panfrost/midgard/midgard.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/panfrost/midgard/disassemble.c b/src/gallium/drivers

[Mesa-dev] [PATCH 3/3] panfrost/midgard: Reorder to permit constant bias

2019-06-18 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- .../panfrost/midgard/midgard_compile.c| 97 +-- 1 file changed, 48 insertions(+), 49 deletions(-) diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c index

[Mesa-dev] [PATCH] panfrost: Skip shading unaffected tiles

2019-06-18 Thread Alyssa Rosenzweig
Looking at the scissor, we can discard some tiles. We specifially don't care about the scissor on the wallpaper, since that's a no-op if the entire tile is culled. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 9 + src/gallium/driver

Re: [Mesa-dev] [PATCH 9/9] panfrost: Enable sRGB

2019-06-19 Thread Alyssa Rosenzweig
> Actually, I think this is the commit that introduced these regressions: > > panfrost: Figure out job requirements in pan_job.c ...Hmm. signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.fr

[Mesa-dev] [PATCH 00/10] panfrost: Decode improvements for compute

2019-06-19 Thread Alyssa Rosenzweig
This series includes a number of assorted improvements to the decode infrastructure to make compute shaders easier to read. Alyssa Rosenzweig (10): panfrost/decode: Identify "compute FBD" panfrost/decode: Expand pointers in compute descriptor panfrost/decode: Show int uniforms

[Mesa-dev] [PATCH 02/10] panfrost/decode: Expand pointers in compute descriptor

2019-06-19 Thread Alyssa Rosenzweig
Just as an aid. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/include/panfrost-job.h | 11 ++- .../drivers/panfrost/pandecode/decode.c | 30 +++ 2 files changed, 34 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/panfrost/include/panfrost

[Mesa-dev] [PATCH 04/10] panfrost/decode: Print COMPUTE uniforms as pointers

2019-06-19 Thread Alyssa Rosenzweig
In OpenGL, uniforms generally represent fp32 vec4s (at least in highp mode). In OpenCL, they represent vec2s of 64-bit pointers. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/pandecode/decode.c | 25 ++- 1 file changed, 24 insertions(+), 1 deletion(-) diff

[Mesa-dev] [PATCH 05/10] panfrost/decode: Clip mali_compute_fbd at 64-bytes

2019-06-19 Thread Alyssa Rosenzweig
Looking at internal evidence (later fields including a literal other compute job inception-style, seeming memory corruption, no clear function, and the field after this being a pointer to *itself*), it looks like this is really a much smaller descriptor. Signed-off-by: Alyssa Rosenzweig --- src

[Mesa-dev] [PATCH 03/10] panfrost/decode: Show int uniforms

2019-06-19 Thread Alyssa Rosenzweig
Float is ambiguous. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pandecode/decode.c | 12 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/panfrost/pandecode/decode.c b/src/gallium/drivers/panfrost/pandecode/decode.c index

[Mesa-dev] [PATCH 06/10] panfrost/decode: Skip decode of fragment backend in non-fragment

2019-06-19 Thread Alyssa Rosenzweig
This is all zero for anything but fragment shaders. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/pandecode/decode.c | 72 --- 1 file changed, 48 insertions(+), 24 deletions(-) diff --git a/src/gallium/drivers/panfrost/pandecode/decode.c b/src/gallium/drivers

[Mesa-dev] [PATCH 01/10] panfrost/decode: Identify "compute FBD"

2019-06-19 Thread Alyssa Rosenzweig
There is fundamentally not a framebuffer associated with a compute job. Allocate a new structure for it so we don't mess up graphics when decoding. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/include/panfrost-job.h | 7 ++ .../drivers/panfrost/pandecode/decode.c

[Mesa-dev] [PATCH 07/10] panfrost: Add missing 0x in invocation_count

2019-06-19 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pandecode/decode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/pandecode/decode.c b/src/gallium/drivers/panfrost/pandecode/decode.c index 76baa06dda2..2c74d807d63 100644 --- a

[Mesa-dev] [PATCH 09/10] panfrost/decode: Elide more zero fields

2019-06-19 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/pandecode/decode.c | 22 ++- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/panfrost/pandecode/decode.c b/src/gallium/drivers/panfrost/pandecode/decode.c index 9b04646f43f

[Mesa-dev] [PATCH 08/10] panfrost/decode: Remove memory comments

2019-06-19 Thread Alyssa Rosenzweig
These do more harm than good at this point. Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/pandecode/decode.c | 20 --- 1 file changed, 20 deletions(-) diff --git a/src/gallium/drivers/panfrost/pandecode/decode.c b/src/gallium/drivers/panfrost/pandecode

[Mesa-dev] [PATCH 10/10] panfrost: Remove other commented pointers

2019-06-19 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pandecode/decode.c | 4 1 file changed, 4 deletions(-) diff --git a/src/gallium/drivers/panfrost/pandecode/decode.c b/src/gallium/drivers/panfrost/pandecode/decode.c index ce948f9ce02..5bc6dd84c60 100644 --- a/src/gallium

Re: [Mesa-dev] [PATCH 1/3] Revert "panfrost/midgard: Enable autovectorization"

2019-06-20 Thread Alyssa Rosenzweig
NAK. There's a patch for this I pushed to your repo which should fix these regressions (they were legitimate bugs that had nothing to do with autovectorization and would have cropped up anyhow). signature.asc Description: PGP signature ___ mesa-dev mail

Re: [Mesa-dev] [PATCH 2/3] Revert "panfrost: Figure out job requirements in pan_job.c"

2019-06-20 Thread Alyssa Rosenzweig
How about a partial revert: call panfrost_job_set_requirements() in emit_for_draw(), so the flow is the same, but we still have the code logically with the other panfrost_job code? signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-

Re: [Mesa-dev] [PATCH 3/3] panfrost: ci: Exclude flip-flops from results

2019-06-20 Thread Alyssa Rosenzweig
> dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_vec4_vertex No clue what's up here, but I suppose A-b for the moment :( signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freede

Re: [Mesa-dev] [PATCH 1/3] panfrost: Move ra_regs to the screen context

2019-06-20 Thread Alyssa Rosenzweig
Oh, this looks lovely! Thank you! One concern I have is that we're leaking work_vec* for REGS_VARIANTS_COUNT-1 variants, since we reinitialize those classes for each RA variant (I believe that is correct behaviour) but only store the last one (I believe that is incorrect). Perhaps we should make

Re: [Mesa-dev] [PATCH 2/3] panfrost: Release transient pools

2019-06-20 Thread Alyssa Rosenzweig
Makes sense, R-b :) signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH 3/3] panfrost: Allocate panfrost_job in panfrost_context

2019-06-20 Thread Alyssa Rosenzweig
R-b, good one :) signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH] panfrost: Set job requirements during draw

2019-06-20 Thread Alyssa Rosenzweig
R-b, though let's wait for Rohan :) signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH] panfrost/midgard: Broadcast swizzle

2019-06-20 Thread Alyssa Rosenzweig
Fixes regression in shaders using ball/etc. v2: Don't also regress every other swizzle in Equestria. Signed-off-by: Alyssa Rosenzweig --- .../panfrost/midgard/midgard_compile.c| 55 +-- 1 file changed, 39 insertions(+), 16 deletions(-) diff --git a/src/gallium/dr

[Mesa-dev] [PATCH] panfrost: Skip shading unaffected tiles

2019-06-20 Thread Alyssa Rosenzweig
Looking at the scissor, we can discard some tiles. We specifially don't care about the scissor on the wallpaper, since that's a no-op if the entire tile is culled. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 9 + src/gallium/driver

Re: [Mesa-dev] [PATCH] panfrost: Skip shading unaffected tiles

2019-06-20 Thread Alyssa Rosenzweig
> Isn't enough with ctx->blitter->running ? What if we're legitimately blitting something? ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH] panfrost: Implement command stream scoreboarding

2019-06-20 Thread Alyssa Rosenzweig
st). Incidentally, this moves quite a bit of state from the driver context to the batch, which helps with Rohan's refactor to eventually permit pipelining across framebuffers (one important outstanding optimization for FBO-heavy workloads). Signed-off-by: Alyssa Rosenzweig --- src/g

Re: [Mesa-dev] [PATCH] panfrost: ci: Fix parsing of crashed tests

2019-06-21 Thread Alyssa Rosenzweig
A-b ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH] panfrost: Track buffer initialization

2019-06-21 Thread Alyssa Rosenzweig
operations (like wallpaper blits) when reading from an uninitialized buffer; since it's uninitialized, the results of these operations are undefined, and it's legal to take the fast path ^_^ Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 9 + s

[Mesa-dev] [PATCH 0/3] panfrost/midgard: Merge constants

2019-06-21 Thread Alyssa Rosenzweig
Just a fun optimization, shaves some cycles off glmark shaders. Alyssa Rosenzweig (3): panfrost/midgard: Share swizzle/mask code panfrost/midgard: Share swizzle compose panfrost/midgard: Merge embedded constants .../drivers/panfrost/midgard/helpers.h| 60

[Mesa-dev] [PATCH 2/3] panfrost/midgard: Share swizzle compose

2019-06-21 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/midgard/helpers.h| 29 +++ .../drivers/panfrost/midgard/midgard_ra.c | 9 +- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/panfrost/midgard/helpers.h b/src/gallium

[Mesa-dev] [PATCH 0/2] panfrost: Implement rasterizer discard

2019-06-21 Thread Alyssa Rosenzweig
Now that scoreboarding is working, this is trivial. Alyssa Rosenzweig (2): panfrost: Implement rasterizer discard panfrost: Conditionally submit fragment job src/gallium/drivers/panfrost/pan_context.c | 14 -- src/gallium/drivers/panfrost/pan_drm.c | 5 - 2 files

[Mesa-dev] [PATCH 1/3] panfrost/midgard: Share swizzle/mask code

2019-06-21 Thread Alyssa Rosenzweig
Signed-off-by: Alyssa Rosenzweig --- .../drivers/panfrost/midgard/helpers.h| 31 +++ .../panfrost/midgard/midgard_compile.c| 29 - 2 files changed, 31 insertions(+), 29 deletions(-) diff --git a/src/gallium/drivers/panfrost/midgard/helpers.h b

[Mesa-dev] [PATCH 2/2] panfrost: Conditionally submit fragment job

2019-06-21 Thread Alyssa Rosenzweig
If there are no tiling jobs and no clears, there is no need to submit a fragment job (relevant for transform feedback). Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_drm.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers

[Mesa-dev] [PATCH 3/3] panfrost/midgard: Merge embedded constants

2019-06-21 Thread Alyssa Rosenzweig
fuse into a single (pipelined!) bundle: vmul.fmul [temp], [a], r26.xyyz vadd.fadd [out], [temp], r26.zwwy fconstants 1.5, 0.5, 1.0, 2.3 Signed-off-by: Alyssa Rosenzweig --- .../panfrost/midgard/midgard_schedule.c | 85 ++- 1 file changed, 66 insertions(+), 19 dele

[Mesa-dev] [PATCH 1/2] panfrost: Implement rasterizer discard

2019-06-21 Thread Alyssa Rosenzweig
D'aww, look cute that is now that scoreboarding is setup. Signed-off-by: Alyssa Rosenzweig --- src/gallium/drivers/panfrost/pan_context.c | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/dr

Re: [Mesa-dev] [PATCH] panfrost: Implement command stream scoreboarding

2019-06-21 Thread Alyssa Rosenzweig
> Very nice, this will fix a few tests. Ah, of course :) > Good riddance! To be fair, a lot of that just got moved in with panfrost_job.. :) > Can we remove now the has_draws arg? Maybe? The has_draws arg controls a lot of things beyond just, you know, having draws. The whole API there nee

Re: [Mesa-dev] [PATCH 1/2] panfrost: Kill the perf counters interface

2019-06-21 Thread Alyssa Rosenzweig
R-b, that's long overdue seeing as the DRM driver has a totally different (better? :) ) interface anyway (Thank you!) signature.asc Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailma

Re: [Mesa-dev] [PATCH 2/2] panfrost: Kill the panfrost_driver abstraction

2019-06-21 Thread Alyssa Rosenzweig
Oh, nice! I'm going to give this a tentative Reviewed-by. The changes themselves look good (and there shouldn't be functional changes). I do want this to happen; I just need to give some thought to ensuring that yes, this is really what we want to do. I'm having troubles thinking of when we might

<    5   6   7   8   9   10