summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* anv/pipeline: Follow push constant alignment restrictions on BDW+ and HSW gt3Jason Ekstrand2016-02-291-1/+8
|
* anv/pipeline: Avoid a division by zeroJason Ekstrand2016-02-291-1/+1
|
* anv/pipeline: Use dynamic checks for max push constantsJason Ekstrand2016-02-291-7/+8
| | | | | The GEN_GEN macros aren't available in anv_pipeline since it only gets compiled once for the whold driver.
* isl/surface_state: Fix array spacing on Gen7Nanley Chery2016-02-291-0/+5
| | | | | | | v2: Don't cast the enum to a boolean (Jason) Signed-off-by: Nanley Chery <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
* anv: Don't advertise pipelineStatisticsQueryKristian Høgsberg Kristensen2016-02-291-1/+1
| | | | | | We don't support that just yet. Reported-by: Jacek Konieczny <[email protected]>
* anv: Set CURBEAllocationSize in MEDIA_VFE_STATEJordan Justen2016-02-281-13/+22
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/gen7: Enable SLM in L3 cache control registerJordan Justen2016-02-281-0/+62
| | | | | | Port 1983003 to gen7. Signed-off-by: Jordan Justen <[email protected]>
* nir/spirv: Use the new bare sampler typeKristian Høgsberg Kristensen2016-02-281-5/+1
|
* anv/pipeline: Set URB offset to zero if size is zeroJordan Justen2016-02-281-2/+3
| | | | | | | | | | | | | After 3ecd357d816dc71b2c6ebd6ace38c76ebb25674e, it may be possible for the VS to get assigned all of the URB space. On Ivy Bridge, this will cause the offset for the other stages to be 16, which cannot be packed into the ConstantBufferOffset field of 3DSTATE_PUSH_CONSTANT_ALLOC_*. Instead we can set the offset to zero if the stage size is zero. Signed-off-by: Jordan Justen <[email protected]>
* anv/pipeline: Set FS URB space to zero if the FS is unusedJordan Justen2016-02-281-1/+4
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/pipeline: Set stage URB size to zero if it is unusedJordan Justen2016-02-281-1/+1
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/gen7: Clean up the dummy PS caseJason Ekstrand2016-02-271-19/+13
| | | | Fix whitespace and remove dead comments
* anv/gen7: Set MaximumNumberofThreads in the dummy PS packetJason Ekstrand2016-02-271-1/+5
|
* anv/gen7: Only try to get the depth format the surface has depthJason Ekstrand2016-02-271-1/+4
|
* anv/image: Use isl for filling brw_image_paramJason Ekstrand2016-02-271-111/+6
|
* isl: Add helpers for filling out brw_image_paramJason Ekstrand2016-02-272-1/+118
|
* anv: Fill out image_param structs at view creation timeJason Ekstrand2016-02-273-4/+12
|
* anv/image: Add a ussage_mask field to image_view_initJason Ekstrand2016-02-275-19/+21
| | | | | | | | This allows us to avoid doing some unneeded work on the meta paths where we know that the image view will be used for exactly one thing. The meta paths also sometimes do things that aren't quite valid like setting the array slice on a 3-D texture and we want to limit the number of paths that need to be able to sensibly handle the lies.
* isl: Move isl_image.c to isl_storage_image.cJason Ekstrand2016-02-272-1/+1
|
* anv: Use isl to fill buffer surface statesJason Ekstrand2016-02-273-81/+6
|
* isl: Add a helper for filling a buffer surface stateJason Ekstrand2016-02-274-0/+121
|
* anv: Remove unneeded fiels from anv_image_viewJason Ekstrand2016-02-272-8/+6
|
* anv/state: Remove unused fill_surface_state functionsJason Ekstrand2016-02-273-419/+0
|
* anv: Use ISL to fill out surface statesJason Ekstrand2016-02-271-71/+79
|
* anv/device: Store the default MOCS in the deviceJason Ekstrand2016-02-273-7/+15
|
* isl: Add a function for filling out a surface stateJason Ekstrand2016-02-275-4/+567
|
* isl: Create per-gen helper libraries for gens 7, 8, and 9Jason Ekstrand2016-02-271-2/+23
|
* genxml: Add MOCS fields to RENDER_SURFACE_STATEJason Ekstrand2016-02-274-0/+4
| | | | This allows us to set MOCS as a single uint32_t on all platforms.
* gen/genX_pack: Add genxml to the pack header pathJason Ekstrand2016-02-272-5/+4
| | | | | | | | If you have an out-of-tree build, gen8_pack.h and friends will not be in the same folder as genX_pack.h so this will be a problem. We fixed out-of-tree earlier by adding the genxml folder to the includes for the vulkan driver. However, this is not a good long-term solution because we want to use it in ISL as well.
* isl: Fix isl_surf_get_image_intratile_offset_el()Nanley Chery2016-02-262-36/+36
| | | | | | | | | | | | Consecutive tiles are separated by the size of the tile, not by the logical tile width. v2: Remove extra subtraction (Ville) Add parenthesis (Jason) v3: Update the unit tests for the function Signed-off-by: Nanley Chery <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
* anv: remove stray ; after ifThomas Hindoe Paaboel Andersen2016-02-261-2/+2
| | | | | | | Both logic and indentation suggests that the ; were not intended here. Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
* anv/gen8: Emit the 3DSTATE_PS_BLEND packetJason Ekstrand2016-02-261-0/+23
|
* anv/device: Properly handle apiVersion == 0Jason Ekstrand2016-02-251-3/+8
| | | | | | From the Vulkan 1.0 spec section 3.2: "If apiVersion is 0 the implementation must ignore it"
* Merge remote-tracking branch 'origin/master' into vulkanKristian Høgsberg Kristensen2016-02-24358-4764/+12445
|\
| * mesa: replace for loop with bitshifting in supported_buffer_bitmask()Brian Paul2016-02-241-4/+1
| | | | | | | | | | Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * mesa: updates some comments in buffers.cBrian Paul2016-02-241-3/+6
| | | | | | | | | | Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * mesa: make _mesa_draw_buffers() staticBrian Paul2016-02-242-11/+7
| | | | | | | | | | Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * mesa: make _mesa_draw_buffer() staticBrian Paul2016-02-242-9/+6
| | | | | | | | | | Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * mesa: make _mesa_read_buffer() staticBrian Paul2016-02-242-10/+7
| | | | | | | | | | | | | | Not called from any other file. Remove _mesa_ prefix and update comments. Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * mesa: move declaration of buffer var in handle_first_current()Brian Paul2016-02-241-2/+4
| | | | | | | | | | | | | | Declare the var in the scopes where it's used. Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * mesa: use gl_buffer_index in a few placesBrian Paul2016-02-243-5/+6
| | | | | | | | | | Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * st/mesa: remove useless break statementBrian Paul2016-02-241-1/+0
| | | | | | | | | | Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * st/mesa: rename st_readpixels to st_ReadPixelsBrian Paul2016-02-241-2/+2
| | | | | | | | | | | | | | To match the convention of other device driver functions. Reviewed-by: Rob Clark <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
| * st/mesa: fix frontbuffer glReadPixels regressionsBrian Paul2016-02-241-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change "mesa/readpix: Don't clip in _mesa_readpixels()" caused a few piglit regressions. The failing tests use glReadPixels to read from the front color buffer. The problem is we were trying to read from a non-existant front color buffer. The front color buffer is created on demand in st/mesa. Since the missing buffer bounds were effectively 0 x 0 the glReadPixels was totally clipped and returned early. The fix involves creating the real front color buffer when we're about to try reading from it. Tested with llvmpipe and VMware driver on Linux, Windows. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94253 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94254 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94257 Cc: [email protected] Reviewed-by: Roland Scheidegger <[email protected]>
| * gallium/radeon: Correctly translate colorswaps for big endianOded Gabbay2016-02-231-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current code in r600_translate_colorswap uses the swizzle information to determine which colorswap to use. This works for BE & LE when the nr_channels is <4, but when nr_channels==4 (e.g. PIPE_FORMAT_A8R8G8B8_UNORM), this method can not be used for both BE and LE, because the swizzle info is the same for both of them. As a result, r600g doesn't support 24bit color formats, only 16bit, which forces the user to choose 16bit color in X server. This patch fixes this bug by separating the checks for LE and BE and adapting the swizzle conditions in the BE part of the checks. Tested on an Evergreen GPU (Cedar GL FirePro 2270) running inside POWER7 Big-Endian Machine. Signed-off-by: Oded Gabbay <[email protected]> CC: "11.2" "11.1" <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
| * mesa: use sizeof on the correct typeThomas Hindoe Paaboel Andersen2016-02-231-1/+1
| | | | | | | | | | | | | | | | Before the luminance stride was based on the size of GL_FLOAT which is just the type constant (0x1406). Change it to use the size of GLfloat. Reviewed-by: Brian Paul <[email protected]>
| * tgsi/scan: handle holes between VS inputs, assert-fail in other casesMarek Olšák2016-02-231-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "st/mesa: overhaul vertex setup for clearing, glDrawPixels, glBitmap" added a vertex shader declaring IN[0] and IN[2], but not IN[1]. Drivers relying on tgsi_shader_info can't handle holes in declarations, because tgsi_shader_info doesn't track that. This is just a quick workaround meant for stable that will work for vertex shaders. This fixes radeonsi DrawPixels and CopyPixels crashes. Cc: [email protected] Reviewed-by: Brian Paul <[email protected]>
| * docs: Mark off GL_OES_shader_image_atomic as done.Francisco Jerez2016-02-222-1/+2
| | | | | | | | Reviewed-by: Ilia Mirkin <[email protected]>
| * i965/fs: Return result of image atomic in a register of the expected type.Francisco Jerez2016-02-221-1/+1
| | | | | | | | | | | | | | | | So the result is of float type if we're implementing the float overload of imageAtomicExchange. This is the only back-end change required to support OES_shader_image_atomic AFAICT. Reviewed-by: Ilia Mirkin <[email protected]>
| * glsl: Implement the required built-in functions when OES_shader_image_atomic ↵Francisco Jerez2016-02-221-18/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | is enabled. This is basically just the same atomic functions exposed by ARB_shader_image_load_store, with one exception: "highp float imageAtomicExchange( coherent IMAGE_PARAMS, float data);" There's no float atomic exchange overload in the original ARB_shader_image_load_store or GL 4.2, so this seems like new functionality that requires specific back-end support and a separate availability condition in the built-in function generator. v2: Move image availability predicate logic into a separate static function for clarity. Had to pull out the image_function_flags enum from the builtin_builder class for that to be possible. Reviewed-by: Ilia Mirkin <[email protected]>