summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* swr/rast: Split backend.cpp to improve compile timeTim Rowley2017-06-3013-1832/+2146
| | | | | | | Hardcode split to four files currently. Decreases swr build time on a quad-core by ~10%. Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>
* swr/rast: gen_backends.py removal of commented debug printsTim Rowley2017-06-301-4/+1
| | | | Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>
* swr/rast: gen_backends.py quote cleanupTim Rowley2017-06-301-8/+8
| | | | Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>
* swr/rast: generators will create target directoriesTim Rowley2017-06-301-0/+7
| | | | Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>
* Android: fix typo in symlink for driver loading and 32 bit buildsMauro Rossi2017-06-301-2/+2
| | | | | | | | | | | | There is typo in the mkdir command path, the correct one is $(TARGET_OUT)/$(l)/$(MESA_DRI_MODULE_REL_PATH) The other issue is in 32bit builds, because lib64 does not exist there, we can use TARGET_IS_64_BIT to refine the post install command. Fixes: a3d98ca62f ("Android: use symlinks for driver loading") Signed-off-by: Rob Herring <[email protected]>
* svga: update a few surface format namesBrian Paul2017-06-303-24/+24
| | | | | | To sync with in-house changes. Reviewed-by: Neha Bhende <[email protected]>
* svga: whitespace fixes in svga_resource_buffer_upload.cBrian Paul2017-06-301-15/+14
| | | | Trivial.
* svga: add mksstats for surface view emulationCharmaine Lee2017-06-301-10/+17
| | | | | | | Add mksstats for surface view emulation and also tighten the stat CreateBackedView for the actual creation of backed view. Reviewed-by: Brian Paul <[email protected]>
* svga: change error handling convention for svga_set_stream_output()Brian Paul2017-06-303-12/+18
| | | | | | | | | | | | | | | | | | In general, the functions which emit commands to the command buffer check for failure and return a PIPE_ERROR_x code. It's up to the caller to flush the buffer and retry the command. But svga_set_stream_output() did its own flushing and the callers never checked the return value (though, it would always be PIPE_OK) in practice. This patch changes svga_set_stream_output() so that it does not call svga_context_flush() when the buffer is full. And we update the callers to check the return value as we do for other functions, like svga_set_shader(). No Piglit regressions. Also tested w/ Nature demo. Reviewed-by: Charmaine Lee <[email protected]>
* svga: fixed surface size to include array sizeCharmaine Lee2017-06-301-1/+2
| | | | | | | | | This patch fixes the total surface size in surface cache to include array size as well. Tested with MTT glretrace. Reviewed-by: Brian Paul <[email protected]>
* svga: loop over box.depth for ReadBack_image on each sliceNeha Bhende2017-06-301-7/+8
| | | | | | | | piglit test ext_texture_array-gen-mipmap is fixed with this patch. Tested with mtt piglit, glretrace, viewperf and conform. No regression. Reviewed-by: Brian Paul <[email protected]>
* svga: add mksstats for context creationCharmaine Lee2017-06-301-2/+7
| | | | Reviewed-by: Brian Paul <[email protected]>
* svga: re-validate sampler view at draw time if neededCharmaine Lee2017-06-304-2/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch validates those sampler views with backing copy of texture whose original copy has been updated since the view is last validated. This is done here at draw time because the texture binding might not have modified, hence validation is not triggered at state update time, and yet the texture might have been updated in another context, so we need to re-validate the sampler view in order to update the backing copy of the updated texture. This fixes a rendering flickering issue with Photoshop running in Linux VM with HWversion 11. The problem is Photoshop renders to texture A in context X, and then bind texture A to context Y. The first time when texture A is bound to context Y, cso calls pipe->set_sampler_views(). Validation of sampler views is done, rendering is fine. But when texture A is rendered to again in context X, and rebound in context Y, cso skips pipe->set_sampler_views() because texture A is already bound in context Y. SVGA driver is not given a chance to re-validate the texture binding, the backing copy of the texture is not updated, and hence causes black image. Tested with Photoshop, MTT glretrace, piglit. Fixes VMware bug 1769103. Reviewed-by: Jose Fonseca <[email protected]>
* Update Khronos-supplied headersNicolai Hähnle2017-06-301-587/+1573
| | | | | | | | | | | Taken from commit 676834dd529d620ee25090e738d2607dfde003d8 of https://github.com/KhronosGroup/OpenGL-Registry.git v2: - keep the BUILDING_MESA bits (Matt) Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* i965/i915: Add UYVY as the supported formatJohnson Lin2017-06-305-18/+33
| | | | | | Trigger the correct sampler options for it. Similar with YUYV Reviewed-by: Kristian H. Kristensen <[email protected]>
* nir: Add a lowering pass for UYVY texturesJohnson Lin2017-06-302-0/+19
| | | | | | Similar with support for YUYV but with byte order difference in sampler Reviewed-by: Kristian H. Kristensen <[email protected]>
* gbm: add XBGR8888 support for dumb buffersRob Herring2017-06-301-1/+1
| | | | | | | | | Add GBM_FORMAT_XBGR8888 format support which is needed for Android. Signed-off-by: Rob Herring <[email protected]> Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Daniel Stone <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* gallium: os_process fixes for AndroidRob Herring2017-06-301-2/+2
| | | | | | | | | The function getprogname() is available on Android, since it reuses various BSD solutions C runtime. Signed-off-by: Rob Herring <[email protected]> Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* etnaviv: Add unreachable statement to etna_amode to fix compilation warningsTomeu Vizoso2017-06-301-0/+2
| | | | | | Signed-off-by: Robert Foss <[email protected]> Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* swr: Remove need to allocate vertex buffer scratch space all in one gocros-mesa-17.1.1-r14-vanillachadv/cros-mesa-17.1.1-r14-vanillaBruce Cherniak2017-06-291-23/+2
| | | | | | | | Deferred deletion (via "fence_work") has obsoleted the need to allocate all client vertex buffer scratch space in a single chunk. Scratch allocations are now valid until the referenced fence is complete. Reviewed-by: Tim Rowley <[email protected]>
* swr: conditionally validate vertex buffer stateBruce Cherniak2017-06-291-4/+5
| | | | | | | | | | | Vertex buffer state doesn't need to be validated on every call, only on dirty _NEW_VERTEX or indexed draws. Unconditional validation was introduced as part of patch 330d0607ed6, "remove pipe_index_buffer and set_index_buffer", with the expectation we'd optimize later. Reviewed-by: Tim Rowley <[email protected]>
* swr: set dynamic vertex sizeTim Rowley2017-06-291-2/+4
| | | | | | | Reduces the memory footprint of the frontend processing by packing vertices. Reviewed-by: Bruce Cherniak <[email protected]>
* scons: wait on subprocess' completionEric Engestrom2017-06-291-1/+1
| | | | | | | | | | Windows doesn't allow you to move a file that's opened, and Popen() doesn't wait on its subprocess' completion before returning, which leads to broken Windows build. Fixes: 3fd425aed764fb771f2f "build systems: uniformize git_sha1.h generation" Suggested-by: Scott D Phillips <[email protected]> Signed-off-by: Eric Engestrom <[email protected]>
* build systems: uniformize git_sha1.h generationEric Engestrom2017-06-293-38/+10
| | | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* radeonsi: set COMPUTE_DISPATCH_INITIATOR.ORDER_MODE = 1Marek Olšák2017-06-291-1/+4
| | | | Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi: use the DISPATCH packets to force COMPUTE_START_X/Y/Z = 0Marek Olšák2017-06-291-7/+6
| | | | Reviewed-by: Nicolai Hähnle <[email protected]>
* Android: use symlinks for driver loadingRob Herring2017-06-2914-18/+21
| | | | | | | | | Instead of having special driver loading logic for Android, create symlinks to gallium_dri.so so we can use the standard loading logic. Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Signed-off-by: Rob Herring <[email protected]>
* Android: i965: remove libdrm_intel dependencyRob Herring2017-06-291-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | Commit 7dd20bc3ee8f ("anv/i965: drop libdrm_intel dependency completely") removed the libdrm_intel dependency for automake, but Android builds still depended on it. Now the build requires a newer version of i915_drm.h and fails on Android builds: src/mesa/drivers/dri/i965/brw_performance_query.c:616:9: error: use of undeclared identifier 'I915_OA_FORMAT_A32u40_A4u32_B8_C8' case I915_OA_FORMAT_A32u40_A4u32_B8_C8: ^ src/mesa/drivers/dri/i965/brw_performance_query.c:1887:18: error: use of undeclared identifier 'I915_PARAM_SLICE_MASK' gp.param = I915_PARAM_SLICE_MASK; ^ src/mesa/drivers/dri/i965/brw_performance_query.c:1893:18: error: use of undeclared identifier 'I915_PARAM_SUBSLICE_MASK' gp.param = I915_PARAM_SUBSLICE_MASK; ^ Remove the libdrm_intel dependency for Android builds and add the necessary include paths for the local copy of i915_drm.h. Fixes: 7dd20bc ("anv/i965: drop libdrm_intel dependency completely") Signed-off-by: Rob Herring <[email protected]> Reviewed-by: Juan A. Suarez Romero <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* android: anv: drop libdrm_intel dependencyMauro Rossi2017-06-291-1/+2
| | | | | | | | | | | In addition to Rob Herring "Android: i965: remove libdrm_intel dependency", we can drop libdrm_intel dependency in anv for Android. Please check if libdrm has to stay as shared dependency and drop this comment line. Fixes: 7dd20bc ("anv/i965: drop libdrm_intel dependency completely") Acked-by: Lionel Landwerlin <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* etnaviv: fix memory leak when BO allocation failsLucas Stach2017-06-291-1/+5
| | | | | | | | | | The resource struct is already allocated at this point and should be freed properly. Signed-off-by: Lucas Stach <[email protected]> Reviewed-by: Philipp Zabel <[email protected]> Reviewed-by: Christian Gmeiner <[email protected]> Reviewed-by: Wladimir J. van der Laan <[email protected]>
* etnaviv: fill in layer_stride for imported resourcesLucas Stach2017-06-291-0/+2
| | | | | | | | | | | The layer stride information is used in various parts of the driver, so it needs to be present regardless if the driver allocated the buffer itself or merely imported it from an external source. Signed-off-by: Lucas Stach <[email protected]> Reviewed-by: Philipp Zabel <[email protected]> Reviewed-by: Christian Gmeiner <[email protected]> Reviewed-by: Wladimir J. van der Laan <[email protected]>
* anv: use devinfo for number of thread/euLionel Landwerlin2017-06-291-2/+3
| | | | | | | It turns out Gen9LP has fewer threads per EU (6 vs 7). Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Plamena Manolova <[email protected]>
* intel: tools: add intel_aub.h as part of aubinatorJuan A. Suarez Romero2017-06-291-1/+2
| | | | | | Include intel_aub.h in the Makefile.tools.am Reviewed-by: Lionel Landwerlin <[email protected]>
* intel: automake: include Makefile.drm.amJuan A. Suarez Romero2017-06-291-0/+1
| | | | Reviewed-by: Lionel Landwerlin <[email protected]>
* mesa: Require mipmap completeness for glCopyImageSubData() at times.Kenneth Graunke2017-06-281-2/+57
| | | | | | | | | | | | | | | | | | | | | | | | This patch makes glCopyImageSubData require mipmap completeness when the texture object's built-in sampler object has a mipmapping MinFilter. This is apparently the de facto behavior and mandated by Android's CTS. One exception is that we ignore format based completeness rules (specifically integer formats with linear filtering), as this is also the de facto behavior that until recently was mandated by the OpenGL 4.5 CTS. This was discussed with both the OpenGL and OpenGL ES working groups, and while everyone agrees this behavior is unfortunate and complicated, it is what it is at this point. There was little appetite for relaxing restrictions given that all conformant Android drivers followed the mipmapping rule, and all conformant GL 4.5 implementations ignored the integer/linear rule. Fixes (on i965): dEQP-GLES31.functional.debug.negative_coverage.*.buffer.copy_image_sub_data Bugzilla: https://cvs.khronos.org/bugzilla/show_bug.cgi?id=16224 Reviewed-by: Roland Scheidegger <[email protected]>
* mesa: tidy up white space in pixelstore.cTimothy Arceri2017-06-291-6/+6
|
* mesa: Refactor error checking for GL_TEXTURE_BASE_LEVEL vs texture targetsIan Romanick2017-06-281-7/+19
| | | | | | | | | | Add a big spec quotation justifying the error generated, which has changed over the GL versions. v2: Compact the spec quote based on a Khronos bug and discussion with Jason. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
* i965: Drop index buffer re-alignment code.Kenneth Graunke2017-06-281-30/+8
| | | | | | | | | | | | | | | | This shouldn't ever happen - GL requires it to be aligned: "Clients must align data elements consistent with the requirements of the client platform, with an additional base-level requirement that an offset within a buffer to a datum comprising N basic machine units be a multiple of N." Mesa should reject unaligned index buffers for us - we shouldn't have to handle them in the driver. Note that Gallium already makes this assumption. Reviewed-by: Ian Romanick <[email protected]>
* mesa: add KHR_no_error support for glBlendFunc*()Timothy Arceri2017-06-293-2/+32
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: create some glBlendFunc*() helper functionsTimothy Arceri2017-06-291-50/+81
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: add KHR_no_error support for glBindFragDataLocation*()Timothy Arceri2017-06-294-2/+40
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: add bind_frag_data_location() helperTimothy Arceri2017-06-291-11/+19
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: add KHR_no_error support for glGetUniformLocation()Timothy Arceri2017-06-293-1/+14
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: inline _mesa_finish()Timothy Arceri2017-06-292-19/+8
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: add KHR_no_error support for glDisableVertexA*A*()Timothy Arceri2017-06-294-2/+25
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: move error handling into disable_vertex_array_attrib() callersTimothy Arceri2017-06-291-10/+14
| | | | | | | This will let us just call disable_vertex_array_attrib() for KHR_no_error support. Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: add KHR_no_error support for glEnableVertexA*A*()Timothy Arceri2017-06-294-2/+27
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: add KHR_no_error support for glLogicOp()Timothy Arceri2017-06-293-1/+13
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: add logic_op() helperTimothy Arceri2017-06-291-9/+16
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* mesa: add KHR_no_error support for glPixelStore*()Timothy Arceri2017-06-293-2/+23
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>