summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* gallium/radeon: clear dirty_level_mask when discarding CMASKMarek Olšák2016-08-291-0/+1
| | | | | | This fixes: GL45-CTS.texture_barrier.* Tested-by: Michel Dänzer <[email protected]>
* tgsi/scan: remember sampler view typesMarek Olšák2016-08-292-0/+5
| | | | Reviewed-by: Brian Paul <[email protected]>
* st/vdpau: use temporary buffers while applying filtersNayan Deshmukh2016-08-291-18/+57
| | | | | | | | | | | Use temporary buffers so that we don't read and write to the same surface at the same time. We don't need to use linear layout now. v2: rebase the patch against reverted change Signed-off-by: Nayan Deshmukh <[email protected]> Reviewed-by: Christian König <[email protected]>
* st/vdpau: Revert "change the order in which filters are applied(v3)"Christian König2016-08-291-18/+10
| | | | | | | | | | This reverts commit 09dff7ae2e179d5a3490481762c6bd3d50430c9f. Turned out this can cause some artifacts in the output. Let's revert it for now until we have sorted out all issues. Signed-off-by: Christian König <[email protected]> Reviewed-by: Nayan Deshmukh <[email protected]>
* svga: minor whitespace, etc clean-ups in svga_pipe_misc.cBrian Paul2016-08-261-26/+23
| | | | Reviewed-by: Neha Bhende <[email protected]>
* svga: move some code in svga_propagate_surface()Brian Paul2016-08-261-18/+19
| | | | | | | Move computation of zslice, layer inside the conditional where they're used. Reviewed-by: Neha Bhende <[email protected]>
* svga: simplify surface propagation code in svga_set_framebuffer_state()Brian Paul2016-08-261-12/+4
| | | | | | Rewrite the comment too. Reviewed-by: Neha Bhende <[email protected]>
* svga: add some comments in the svga_surface structBrian Paul2016-08-261-0/+16
| | | | | | Give more info about backing resources/surfaces. Reviewed-by: Neha Bhende <[email protected]>
* svga: use new svga_check_sampler_framebuffer_resource_collision()Brian Paul2016-08-261-18/+3
| | | | Reviewed-by: Neha Bhende <[email protected]>
* svga: add new svga_check_sampler_framebuffer_resource_collision()Brian Paul2016-08-262-1/+36
| | | | Reviewed-by: Neha Bhende <[email protected]>
* svga: remove assertions in svga_surface cast wrappersBrian Paul2016-08-261-2/+0
| | | | | | | We don't do this for other cast wrappers. And this will simplify some code at call sites. Reviewed-by: Neha Bhende <[email protected]>
* svga: minor code simplification in svga_texture_transfer_unmap()Brian Paul2016-08-261-2/+1
| | | | | | Use the tex variable instead of using svga_texture() again. Reviewed-by: Neha Bhende <[email protected]>
* svga: reformat some expressions in svga_texture_transfer_map()Brian Paul2016-08-261-3/+3
| | | | Reviewed-by: Neha Bhende <[email protected]>
* svga: remove duplicated variable in svga_texture_transfer_map()Brian Paul2016-08-261-1/+0
| | | | | | tex was already declared at the function body scope. Reviewed-by: Neha Bhende <[email protected]>
* svga: move some assignments in svga_texture_transfer_map()Brian Paul2016-08-261-4/+4
| | | | | | Put near other assignments to the svga_transfer variable. Reviewed-by: Neha Bhende <[email protected]>
* svga: minor simplifications in svga_texture_transfer_map()Brian Paul2016-08-261-9/+9
| | | | | | Use local vars instead of jumping through a pointer. Reviewed-by: Neha Bhende <[email protected]>
* svga: minor reformatting of svga_texture() cast wrapperBrian Paul2016-08-261-1/+2
| | | | Reviewed-by: Neha Bhende <[email protected]>
* svga: rewrite svga_buffer() cast wrapperBrian Paul2016-08-261-6/+4
| | | | | | To make it symmetric with the svga_texture() cast wrapper. Reviewed-by: Neha Bhende <[email protected]>
* svga: remove local variable in create_backed_surface_view()Brian Paul2016-08-261-7/+4
| | | | | | To simplify the code a bit. Reviewed-by: Neha Bhende <[email protected]>
* r600: increase performance for DRI PRIME offloading if 2nd GPU is Evergreen+Mario Kleiner2016-08-261-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a direct port of Marek Olšáks patch "radeonsi: increase performance for DRI PRIME offloading if 2nd GPU is CIK or VI" to r600. It uses SDMA for the detiling blit from renderoffload VRAM to GTT, as SDMA is much faster for tiled->linear blits from VRAM to GTT. Testing on a dual Radeon HD-5770 setup reduced the time for the render offload gpu to get its rendering into system RAM from approximately 16 msecs for simple rendering at 1920x1080 pixel 32 bpp to 5 msecs, a > 3x speedup! This was measured using ftrace to trace the time the radeon kms driver waited on the dmabuf fence of the renderoffload gpu to complete. All in all this brought the time for a flip down from 20 msecs to 9 msecs, so the prime setup can display at full 60 fps instead of barely 30 fps vsync'ed. The current r600 implementation supports SDMA on Evergreen and later, but not R600/R700 due to some bugs apparently present in their SDMA implementation. Signed-off-by: Mario Kleiner <[email protected]> Cc: Marek Olšák <[email protected]> Signed-off-by: Marek Olšák <[email protected]>
* svga: add guest statistic gathering interfaceCharmaine Lee2016-08-261-0/+49
| | | | | | | This file was supposed to be added with the previous "svga: add guest statistic gathering interface" patch but went MIA for some reason. Reviewed-by: Brian Paul <[email protected]>
* radeonsi: disable CE on SI + AMDGPUMarek Olšák2016-08-261-1/+3
| | | | | Reviewed-by: Edward O'Callaghan <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* winsys/amdgpu: disable IB chaining on SIMarek Olšák2016-08-261-5/+6
| | | | | Reviewed-by: Edward O'Callaghan <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* winsys/amdgpu: finish up SI addrlib integrationMarek Olšák2016-08-261-5/+25
| | | | Reviewed-by: Edward O'Callaghan <[email protected]>
* winsys/amdgpu: initial SI supportRonie Salgado2016-08-263-6/+46
| | | | | Signed-off-by: Marek Olšák <[email protected]> Reviewed-by: Edward O'Callaghan <[email protected]>
* gallium/radeon: add a driver query for AMDGPU_INFO_NUM_EVICTIONSMarek Olšák2016-08-265-2/+17
| | | | | | If the kernel driver doesn't support it, it returns 0. Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* radeonsi: fix printing shaders and states on a VM faultMarek Olšák2016-08-261-1/+3
| | | | | | This was missed while rewriting the PIPE_DUMP flags. Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* radeonsi: increase performance for DRI PRIME offloading if 2nd GPU is CIK or VIMarek Olšák2016-08-261-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | SDMA is much faster for tiled->linear blits from VRAM to GTT. I have Bonaire in my second PCIe slot. $ glxinfo | grep OpenGL.renderer OpenGL renderer string: Gallium 0.4 on AMD TONGA ... $ DRI_PRIME=1 glxinfo | grep OpenGL.renderer OpenGL renderer string: Gallium 0.4 on AMD BONAIRE ... Without SDMA: $ DRI_PRIME=1 glxgears 8796 frames in 5.0 seconds = 1759.074 FPS 8899 frames in 5.0 seconds = 1779.672 FPS With SDMA: $ DRI_PRIME=1 glxgears 12765 frames in 5.0 seconds = 2552.788 FPS 12888 frames in 5.0 seconds = 2577.495 FPS The 1st GPU is irrelevant. The improvement should be much lower at 60 fps, but definitely measurable. SI will get this once we add SDMA blit support for it. Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* radeonsi: enable SDMA on CIKMarek Olšák2016-08-261-4/+0
| | | | | | It passes R600_DEBUG=testdma on Bonaire/radeon. Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* gallium/radeon: increase priority for shader binariesMarek Olšák2016-08-262-2/+2
| | | | Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* gallium/radeon: merge USER_SHADER and INTERNAL_SHADER priority flagsMarek Olšák2016-08-268-15/+13
| | | | | | there's no reason to separate these Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* svga: fix regression related to srgbNeha Bhende2016-08-261-0/+12
| | | | | | | | | This regression is caused because of commit 3190c7ee9727161d627f107c2e7f8ec3a11941c1 Regression caused by following OpenGL 4.4 spec rules relates to GL_FRAMEBUFFER_SRGB in Mesa. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Charmaine Lee <[email protected]>
* svga: use local variable blit instead of pointerNeha Bhende2016-08-261-29/+30
| | | | | Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Charmaine Lee <[email protected]>
* svga: s/INDEX_0D/INDEX_IMMEDIATE32/Brian Paul2016-08-261-1/+1
| | | | Both are zero, but the later is the right token.
* svga: add comment about unsupported blend modesBrian Paul2016-08-261-0/+3
|
* svga: fix ordering of mksstats counter stringsCharmaine Lee2016-08-261-1/+1
| | | | | | | String for SVGA_STATS_COUNT_TEXREADBACK was swapped with the string for SVGA_STATS_COUNT_SURFACEWRITEFLUSH. Trivial fix.
* svga: avoid emitting redundant SetShaderResource commandCharmaine Lee2016-08-264-34/+63
| | | | | | Tested with Lightsmark2008, Heaven, MTT piglit, glretrace, viewperf, conform. Reviewed-by: Brian Paul <[email protected]>
* svga: add a cleanup function to clean up sampler stateCharmaine Lee2016-08-263-11/+22
| | | | | | | This patch adds a cleanup function to clean up sampler state at context destruction time. Reviewed-by: Brian Paul <[email protected]>
* svga: loosen the condition to flush in get_query_result_vgpu10()Brian Paul2016-08-261-1/+1
| | | | | | | | | Fixes piglit spec/ext_transform_feedback/overflow-edge-cases segfaults because the query's fence pointer was null. Tested with Piglit, Sauerbraten, ETQW. Reviewed-by: Charmaine Lee <[email protected]>
* svga: fix vgpu10 query fencingBrian Paul2016-08-261-11/+11
| | | | | | | | | | | We don't want to flush the command buffer or sync on the fence when ending a query (that kind of defeats the whole purpose of async queries). Do that instead in get_query_result(). Tested with Piglit, arbocclude, Sauerbraten game, Nobel Clinician Viewer, ETQW. Reviewed-by: Charmaine Lee <[email protected]>
* svga: avoid emitting redundant DXSetSamplers commandCharmaine Lee2016-08-262-8/+25
| | | | | | | | This patch avoid emitting redundant DXSetSamplers command. Tested with Lightsmark2008, Heaven, MTT piglit, glretrace, viewperf. Reviewed-by: Brian Paul <[email protected]>
* svga: enable ARB_clear_texture extension in the driver.Neha Bhende2016-08-261-1/+2
| | | | | Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Charmaine Lee <[email protected]>
* svga: define svga_clear() in svga_init_clear_functions()Neha Bhende2016-08-263-11/+2
| | | | | | | Put all the clearing related functions in svga_init_clear_functions() Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Charmaine Lee <[email protected]>
* svga: add svga_init_clear_functions()Neha Bhende2016-08-263-0/+6
| | | | | | | | | define svga_init_clear_functions() and svga_clear_texture as svga->pipe.clear_texture. This is part of ARB_clear_texture extension Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Charmaine Lee <[email protected]>
* svga: add new function svga_clear_texture()Neha Bhende2016-08-261-0/+188
| | | | | | | | | To clear texture this function can be used. This is part of ARB_clear_texture extension. Basically this extension allows you to clear texture with given color values. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Charmaine Lee <[email protected]>
* svga: add new begin_blit()Neha Bhende2016-08-261-9/+18
| | | | | | | | Saving all blitter states will be done in begin_blit() so that begin_blit() can be used before performing any blit operation. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Charmaine Lee <[email protected]>
* svga: add opt to the list of valid build typesCharmaine Lee2016-08-261-0/+2
| | | | | | For opt build, add VMX86_STATS to the list of cpp defines. Reviewed-by: Brian Paul <[email protected]>
* svga: add guest statistic gathering interfaceCharmaine Lee2016-08-2631-85/+468
| | | | | | | | | | | | With this patch, guest statistic gathering interface is added to svga winsys interface that can be used to gather svga driver statistic. The winsys module can then share the statistic info with the VMX host via the mksstats interface. The statistic enums used in the svga driver are defined in svga_stats_count and svga_stats_time in svga_winsys.h Reviewed-by: Brian Paul <[email protected]>
* svga: fix indirect non-indexable temp accessCharmaine Lee2016-08-261-2/+25
| | | | | | | | | | | If the shader has indirect access to non-indexable temporaries, convert these non-indexable temporaries to indexable temporary array. This works around a bug in the GLSL->TGSI translator. Fixes glsl-1.20/execution/fs-const-array-of-struct-of-array.shader_test on DX11Renderer. Reviewed-by: Brian Paul <[email protected]>
* gallium/hud: move signo declaration inside PIPE_OS_UNIX blockBrian Paul2016-08-261-1/+1
| | | | | | To silence unused var warning with MSVC, MinGW. Reviewed-by: Marek Olšák <[email protected]>