summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mesa: move DispatchCompute() validation to compute.cTimothy Arceri2017-05-173-252/+229
| | | | | | | This is the only place it is used so there is no reason for it to be in api_validate.c Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glBlendEquationSeparateiARB()Timothy Arceri2017-05-173-1/+13
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add blend_equation_separatei() helperTimothy Arceri2017-05-171-9/+17
| | | | | | Will be used to add KHR_no_error support. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glBlendFunc*iARB()Timothy Arceri2017-05-173-2/+26
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add blend_func_separatei() helperTimothy Arceri2017-05-171-17/+28
| | | | | | This will be used to add KHR_no_error support. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glBufferSubData()Timothy Arceri2017-05-173-4/+22
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glNamedBufferSubData()Timothy Arceri2017-05-173-8/+24
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add buffer_sub_data() helperTimothy Arceri2017-05-171-17/+24
| | | | | | | This will allow us to share code between the dsa, non-dsa and no_error variants. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: create validate_buffer_sub_data() helperTimothy Arceri2017-05-174-40/+45
| | | | | | | This change assumes meta will always pass valid arguments to _mesa_buffer_sub_data(). Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glBufferStorage()Timothy Arceri2017-05-173-4/+21
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glNamedBufferStorage()Timothy Arceri2017-05-173-8/+28
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add inlined_buffer_storage() helperTimothy Arceri2017-05-171-20/+27
| | | | | | | This will allow us to share code between the dsa, non-dsa and no_error variants. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add validate_buffer_storage() helperTimothy Arceri2017-05-171-15/+27
| | | | | | This will allow use to add KHR_no_error support. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glCompressedTex*SubImage3D()Timothy Arceri2017-05-174-3/+44
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add 3D support to compressed_tex_sub_image() helperTimothy Arceri2017-05-171-119/+66
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glCompressedTex*SubImage2D()Timothy Arceri2017-05-174-2/+42
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add 2D support to compressed_tex_sub_image() helperTimothy Arceri2017-05-171-67/+16
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for CompressedTex*SubImage1D()Timothy Arceri2017-05-174-11/+53
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add compressed_tex_sub_image() helperTimothy Arceri2017-05-171-44/+38
| | | | | | | | This reduces duplication between the dsa and non-dsa function and will also be used in the following commit to add KHR_no_error support. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: make _mesa_compressed_texture_sub_image() staticTimothy Arceri2017-05-172-51/+30
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for NamedFramebufferTextureTimothy Arceri2017-05-173-1/+12
| | | | | | V3: use frame_buffer_texture() helper Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for FramebufferTextureTimothy Arceri2017-05-173-1/+13
| | | | | | V3: use the frame_buffer_texture() helper Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add *FramebufferTexture() support to frame_buffer_texture helperTimothy Arceri2017-05-171-100/+41
| | | | | | V2: call check_layered_texture_target() even for no_error Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for NamedFramebufferTextureLayerTimothy Arceri2017-05-173-1/+18
| | | | | | v3: use frame_buffer_texture_layer() helper Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for FramebufferTextureLayerTimothy Arceri2017-05-173-1/+14
| | | | | | V3: use frame_buffer_texture_layer() helper Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add no error support to frame_buffer_texture_layer() helperTimothy Arceri2017-05-171-27/+43
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add frame_buffer_texture_layer() helperTimothy Arceri2017-05-171-54/+31
| | | | | | | To be used to add KHR_no_error support while sharing code between the DSA and non-DSA OpenGL function. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: add KHR_no_error support for glUseProgramTimothy Arceri2017-05-173-21/+48
| | | | | | V3: use always_inline attribute (Suggested by Nicolai) Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa: move use_program() inside _mesa_use_program()Timothy Arceri2017-05-171-29/+21
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* intel/isl/gen6: Fix combined depth stencil alignmentJason Ekstrand2017-05-161-7/+7
| | | | | | | | All combined depth stencil buffers (even those with just stencil) require a 4x4 alignment on Sandy Bridge. The only depth/stencil buffer type that requires 4x2 is separate stencil. Reviewed-by: Chad Versace <chadversary@chromium.org>
* intel/isl: Refactor gen8_choose_image_alignment_elJason Ekstrand2017-05-161-140/+49
| | | | | Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Reviewed-by: Chad Versace <chadversary@chromium.org>
* intel/isl: Refactor gen6_choose_image_alignment_elJason Ekstrand2017-05-161-18/+14
| | | | | Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Reviewed-by: Chad Versace <chadversary@chromium.org>
* intel/isl: Refactor gen7_choose_image_alignment_elJason Ekstrand2017-05-161-83/+74
| | | | | | | | | | | | | | | The Ivy Bridge PRM provides a nice table that handles most of the alignment cases in one place. For standard color buffers we have a little freedom of choice but for most depth, stencil and compressed it's hard-coded. Chad's original functions split halign and valign apart and implemented them almost entirely based on restrictions and not the table. This makes things way more confusing than they need to be. This commit gets rid of the split and makes us implement the exact table up-front. If our surface isn't one of the ones in the table then we have to make real choices. Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Reviewed-by: Chad Versace <chadversary@chromium.org>
* intel/isl/gen7: Use stencil vertical alignment of 8 instead of 4Pohjolainen, Topi2017-05-161-23/+5
| | | | | | | | | | | | | | | | | | | | | The reasoning Chad gave in the comment for choosing a valign of 4 is entirely bunk. The fact that you have to multiply pitch by 2 is completely unrelated to the halign/valign parameters used for texture layout. (Not completely unrelated. W-tiling is just Y-tiling with a bit of extra swizzling which turns 8x8 W-tiled chunks into 16x4 y-tiled chunks so it makes everything easier if miplevels are always aligned to 8x8.) The fact that RENDER_SURFACE_STATE::SurfaceVerticalAlignmet doesn't have a VALIGN_8 option doesn't matter since this is gen7 and you can't do stencil texturing anyway. v2 (Jason Ekstrand): - Delete most of Chad's comment and add a more descriptive commit message. Signed-off-by: Topi Pohjolainen <topi.pohjolainen@intel.com> Cc: "17.0 17.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Chad Versace <chadversary@chromium.org>
* freedreno/gmem: fix hw binning hangs with large render targetsRob Clark2017-05-163-3/+13
| | | | | | | | On all 3 gens, we have 4 bits for width and height in the VSC pipe config. And overflow results in setting width and/or height to zero which causes hangs. Signed-off-by: Rob Clark <robdclark@gmail.com>
* freedreno/ir3: fix crash with atomicsRob Clark2017-05-161-2/+9
| | | | | | Atomics can have a result value. And sometimes it is even used. Signed-off-by: Rob Clark <robdclark@gmail.com>
* mesa/st: fix yuv EGLImage'sRob Clark2017-05-161-2/+30
| | | | | | | | | | | | Don't reject YUV formats that the driver doesn't handle natively, since mesa/st already knows how to lower this in shader. Reported-by: Nicolas Dechesne <ndec@linaro.org> Fixes: 83e9de2 ("st/mesa: EGLImageTarget* error handling") Cc: 17.1 <mesa-stable@lists.freedesktop.org Signed-off-by: Rob Clark <robdclark@gmail.com> Tested-by: Nicolas Dechesne <ndec@linaro.org> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* ttn: fix dest size for some texture instructionsRob Clark2017-05-161-1/+3
| | | | | | | Some, like lod, don't return 4 components. Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Eric Anholt <eric@anholt.net>
* ttn: fix txd src sizesRob Clark2017-05-161-4/+6
| | | | | Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Eric Anholt <eric@anholt.net>
* ttn: fix txs dest sizeRob Clark2017-05-161-1/+2
| | | | | Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Eric Anholt <eric@anholt.net>
* freedreno/a5xx: remove unneeded assertRob Clark2017-05-161-3/+0
| | | | Signed-off-by: Rob Clark <robdclark@gmail.com>
* freedreno/a5xx: fallback to slow-clear for z32Rob Clark2017-05-164-11/+36
| | | | | | | We probably *could* do this with blit path, but I think it would involve clobbering settings from batch->gmem (see emit_zs()). Signed-off-by: Rob Clark <robdclark@gmail.com>
* etnaviv: increment the resource seqno in resource_changedPhilipp Zabel2017-05-161-5/+1
| | | | | | | | | | Just increment the resource seqno instead of setting the texture seqno to be lower by one than the resource seqno. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-By: Wladimir J. van der Laan <laanwj@gmail.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
* etnaviv: clean up sampler view reference countingLucas Stach2017-05-161-3/+3
| | | | | | | | Use the proper pipe_resource_reference function instead of rolling our own. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
* etnaviv: apply feature overrides in one central locationLucas Stach2017-05-165-10/+19
| | | | | | | | | This way we can just test the feature bits and don't need to spread the debug overrides to all locations touching a feature. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-By: Wladimir J. van der Laan <laanwj@gmail.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
* etnaviv: allow R/B swapped surfaces to be clearedLucas Stach2017-05-161-0/+2
| | | | | | | Fixes: 7f62ffb68ad ("etnaviv: add support for rb swap") Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
* etnaviv: stop oversizing buffer resourcesLucas Stach2017-05-161-1/+1
| | | | | | | | | | | | | | PIPE_BUFFER is a target enum, not a binding. This caused the driver to up-align the height of buffer resources, leading to largely oversizing those resources. This is especially bad, as the buffer resources used by the upload manager are already 1MB in size. Height alignment meant that those would result in 4 to 8MB big BOs. Fixes: c9e8b49b885 ("etnaviv: gallium driver for Vivante GPUs") Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-By: Wladimir J. van der Laan <laanwj@gmail.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
* i965: Fix test_eu_validate.cppMatt Turner2017-05-161-1/+1
| | | | | | | Broken by commit a7217e909ce6 ("i965: Pass pointer and end of assembly to brw_validate_instructions"). Reported-by: Aaron Watry <awatry@gmail.com>
* anv: Implement VK_KHR_get_surface_capabilities2Jason Ekstrand2017-05-163-0/+32
| | | | Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
* vulkan/wsi/wayland: Add support for VK_KHR_get_surface_capabilities2Jason Ekstrand2017-05-161-0/+38
| | | | Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>