summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* radv: use WAIT_REG_MEM_GREATER_OR_EQUAL instead of a magic valueSamuel Pitoiset2018-10-312-1/+2
| | | | | Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* radv: use pool->stride when calling radv_query_shader()Samuel Pitoiset2018-10-311-2/+2
| | | | | | | Not needed to recompute the stride. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* radv: rename some parameters in Cmd{Begin,End}TransformFeedbackEXT()Samuel Pitoiset2018-10-311-8/+8
| | | | | | | To match latest spec. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* radv/winsys: do not assign last submission when chained path failedSamuel Pitoiset2018-10-311-1/+4
| | | | | | | | I don't think we want to wait for something that hasn't been correctly submitted. This is similar to the fallback path. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* radv/winsys: fix buffer deletion in the sysmem pathSamuel Pitoiset2018-10-311-2/+3
| | | | | | | In case we failed to submit the CS correctly. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* radv/winsys: cleanup the chained submission pathSamuel Pitoiset2018-10-311-11/+17
| | | | | Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* radv/winsys: remove unused surface_best()Samuel Pitoiset2018-10-312-10/+0
| | | | | Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Dave Airlie <[email protected]>
* intel/compiler: Stop assuming the entrypoint is called "main"Jason Ekstrand2018-10-304-23/+5
| | | | | | | | | | | This isn't true for Vulkan so we have to whack it to "main" in anv which is silly. Instead of walking the list of functions and asserting that everything is named "main" and hoping there's only one function named "main", just use the nir_shader_get_entrypoint() helper which has better assertions anyway. Reviewed-by: Lionel Landwerlin <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* st/glsl_to_nir: fix next_stage gatheringTimothy Arceri2018-10-311-1/+1
| | | | | | | | ffs() just returns the bit that is set, we need to know what stage that bit represents so use u_bit_scan() instead. Fixes: 2ca5d9548fc4 ("st/glsl_to_nir: gather next_stage in shader_info") Reviewed-by: Marek Olšák <[email protected]>
* st/mesa: calculate buffer size correctly for packed uniformsTimothy Arceri2018-10-311-1/+1
| | | | | | Fixes: edded1237607 ("mesa: rework ParameterList to allow packing") Reviewed-by: Marek Olšák <[email protected]>
* util: move u_cpu_detect to utilDylan Baker2018-10-306-4/+4
| | | | | | | | | CC: [email protected] Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107870 Fixes: 80825abb5d1a7491035880253ffd531c55acae6b ("move u_math to src/util") Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* util: Move u_debug to utilsDylan Baker2018-10-3011-9/+8
| | | | | Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* util: Move os_misc to utilDylan Baker2018-10-3012-10/+10
| | | | | | | this is needed by u_debug Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/util: remove u_inlines.h from u_debug.cDylan Baker2018-10-301-1/+0
| | | | | | | It's not used, and I'm not pulling u_inlines into src/util. Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/util: remove p_format.h from u_debug.hDylan Baker2018-10-302-1/+1
| | | | | Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/util: move memory debug declarations into u_debug_galliumDylan Baker2018-10-305-8/+8
| | | | | Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/util: move debug_print_tranfer_flags to u_debug_galilumDylan Baker2018-10-304-21/+16
| | | | | | | This also appears to be unused. Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/util: move debug_print_bind_flags to u_debug_galliumDylan Baker2018-10-304-37/+36
| | | | | | | This also appears to be unused. Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/util: move debug_print_usage_enum to the u_debug_galliumDylan Baker2018-10-304-22/+28
| | | | | | | | This isn't used in mesa, maybe vmware uses this in a closed source state tracker? Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/util: start splitting u_debug into generic and gallium specific ↵Dylan Baker2018-10-307-16/+93
| | | | | | | | | | components In order to pull u_debug into src/util we need to break the generically useful bits from the bits that are tightly coupled to gallium. Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium: split u_prim_name out of u_debug.hDylan Baker2018-10-304-26/+50
| | | | | | | This allows us to pull u_prim.h out of u_debug.h Tested-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/hud: fix power sensor readings for amdgpu usersAndre Heider2018-10-301-0/+3
| | | | | | | | | | | | | | amdgpu doesn't use the INPUT but the AVERAGE subfeature: $ sensors -u amdgpu-pci-0100 Adapter: PCI adapter power1: power1_average: 17.233 power1_cap: 180.000 Signed-off-by: Andre Heider <[email protected]> Signed-off-by: Marek Olšák <[email protected]>
* glsl_to_tgsi: don't create 64-bit integer MAD/FMARhys Perry2018-10-301-0/+4
| | | | | | | | TGSI has no I64MAD/U64MAD opcode. Fixes: 278580729a5 ('st/glsl_to_tgsi: add support for 64-bit integers') Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* radeonsi: add support for Raven2 (v2)Marek Olšák2018-10-3010-6/+29
| | | | | | v2: fix enabling primitive binning Reviewed-by: Samuel Pitoiset <[email protected]>
* radeonsi: clean up decompress flags in fast color clearMarek Olšák2018-10-301-11/+7
|
* radeonsi/gfx9: set optimal OVERWRITE_COMBINER_WATERMARKMarek Olšák2018-10-302-1/+14
|
* gallium: rework PIPE_HANDLE_USAGE_* flagsMarek Olšák2018-10-3018-42/+35
| | | | Only radeonsi uses them, so adjust them to match its needs.
* anv: Disable dual source blending when shader doesn't support it on gen8+Danylo Piliaiev2018-10-301-10/+36
| | | | | | | | | | | | | | | | | | | | | | | | | Dual source blending behaviour is undefined when shader doesn't have second color output. "If SRC1 is included in a src/dst blend factor and a DualSource RT Write message is not used, results are UNDEFINED. (This reflects the same restriction in DX APIs, where undefined results are produced if “o1” is not written by a PS – there are no default values defined)." Dismissing fragment in such situation leads to a hang on gen8+ if depth test in enabled. Since blending cannot be gracefully fixed in such case and the result is undefined - blending is simply disabled. v2 (Jason Ekstrand): - Apply the workaround to each individual entry - Emit a warning through debug_report Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Disable dual source blending when shader doesn't support it on gen8+Danylo Piliaiev2018-10-301-3/+42
| | | | | | | | | | | | | | | | | | | Dual source blending behaviour is undefined when shader doesn't have second color output, dismissing fragment in such situation leads to a hang on gen8+ if depth test in enabled. Since blending cannot be gracefully fixed in such case and the result is undefined - blending is simply disabled. v2 (Kenneth Graunke): - Listen to BRW_NEW_FS_PROG_DATA in 3DSTATE_PS_BLEND - Also whack BLEND_STATE[] to keep the two in sync, since we're not sure exactly which copy of the redundant info the hardware will use. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107088 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Respect GL_TEXTURE_SRGB_DECODE_EXT in GenerateMipmaps()Kenneth Graunke2018-10-301-1/+18
| | | | | | | | | | | Apparently, we're supposed to look at the texture object's built-in sampler object's sRGB decode setting in order to decide whether to decode/downsample/re-encode, or simply downsample as-is. Previously, I had always done the decoding/encoding. Fixes SKQP's Skia_Unit_Tests.SRGBMipMaps test. Reviewed-by: Tapani Pälli <[email protected]>
* i965/batch: don't ignore the 'brw_new_batch' call for a 'new batch'Andrii Simiklit2018-10-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | If we restore the 'new batch' using 'intel_batchbuffer_reset_to_saved' function we must restore the default state of the batch using 'brw_new_batch' function because the 'intel_batchbuffer_flush' function will not do it for the 'new batch' again. At least the following fields of the batch 'state_base_address_emitted','aperture_space', 'state_used' should be restored to default values to avoid: 1. the aperture_space overflow 2. the missed STATE_BASE_ADDRESS commad in the batch 3. the memory overconsumption of the 'statebuffer' due to uncleared 'state_used' field. etc. v2: merge with new commits, changes was minimized, added the 'fixes' tag v3: added in to patch series Fixes: 3faf56ffbdeb "intel: Add an interface for saving/restoring the batchbuffer state." Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107626 Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965/batch: avoid reverting batch buffer if saved state is an emptyAndrii Simiklit2018-10-305-3/+14
| | | | | | | | | | | | There's no point reverting to the last saved point if that save point is the empty batch, we will just repeat ourselves. CC: Chris Wilson <[email protected]> Fixes: 3faf56ffbdeb "intel: Add an interface for saving/restoring the batchbuffer state." Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107626 Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* egl: add messages to a few assert() and turn a couple into unreachable()Eric Engestrom2018-10-302-6/+6
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* util: s/0/NULL/ for pointerEric Engestrom2018-10-301-1/+1
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* i965: add missing case to fix -WswitchEric Engestrom2018-10-301-2/+3
| | | | | | | While at it, turn "unreachable" assert() into unreachable(). Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* mesa: fix struct/class mismatchEric Engestrom2018-10-304-5/+5
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* mesa: fix memcpy() and memset(0) of non-trivial structsEric Engestrom2018-10-303-7/+12
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* nouveau: remove unused class memberEric Engestrom2018-10-301-1/+0
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Ilia Mirkin <[email protected]>
* scons: drop unused HAVE_STDINT_H macroEric Engestrom2018-10-303-11/+0
| | | | | | | | | This was required back when MSVC didn't support C99 and was missing this header, but since MSVC 2013 (or maybe earlier?) this isn't it does and this code isn't doing anything anymore. Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* aub_viewer: show vertex buffer pitchEric Engestrom2018-10-301-1/+1
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]>
* vl: drop left-over variableEric Engestrom2018-10-301-1/+0
| | | | | | Fixes: 6ccc435e7ad92bb0ba77d "pipe-loader: move dup(fd) within pipe_loader_drm_probe_fd" Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* vc4: Fix unused variable warning.Eric Anholt2018-10-301-1/+0
| | | | Fixes: bb84fa146f22 ("util: use C99 declaration in the for-loop hash_table_foreach() macro")
* v3d: Use nir_remove_unused_io_vars to handle binner shader output DCEEric Anholt2018-10-303-46/+14
| | | | | | We were doing this late after nir_lower_io, but we can just reuse the core code. By doing it at this stage, we won't even set up the VS attributes as inputs, reducing our VPM size.
* v3d: Only add output slot tracking for the current varying slot.Eric Anholt2018-10-301-1/+1
| | | | | | | | We always emit 4 slots per slot because things like color output and position processing in the epilogue will potentially look up more values than the variable declaration had. However, when we get a .location_frac != 0, we don't want to overwrite components of the following .driver_location.
* v3d: Use nir_lower_io_to_scalar_early to DCE unused VS input components.Eric Anholt2018-10-302-1/+20
| | | | | This lets us trim unused trailing components in the vertex attributes, reducing the size of our VPM allocations.
* v3d: Don't rely on sorting input vars for VPM read setup.Eric Anholt2018-10-301-28/+20
| | | | | | | For supporting scalar VPM i/o at the NIR level, we need to do a pass over the vars to figure out how big each attribute is after DCE. Once we've done that, we can just walk over c->vattr_sizes[] instead of bothering with vars.
* v3d: Split out NIR input setup between FS and VPM.Eric Anholt2018-10-301-47/+80
| | | | | They don't share much code, and I'm about to rewrite the remaining shared code for the VPM case.
* nir: Allow using nir_lower_io_to_scalar_early on VS input vars.Eric Anholt2018-10-301-1/+3
| | | | | | | This will be used on V3D to cut down the size of the VS inputs in the VPM (memory area for sharing data between shader stages). Reviewed-by: Timothy Arceri <[email protected]>
* anv: Bump the advertised patch version to 90Jason Ekstrand2018-10-301-1/+1
| | | | Reviewed-by: Lionel Landwerlin <[email protected]>
* vulkan/wsi: use the drmGetDevice2() APIEmil Velikov2018-10-301-1/+1
| | | | | | | | | | | | On older kernels, the drmGetDevice() call will wake up all the GPUs on the system, while fetching the PCI revision. Use the 2 version of the API and pass flags == 0, so we don't fetch the device PCI revision, since we don't need that information. Fixes: baa38c144f6 ("vulkan/wsi: Use VK_EXT_pci_bus_info for DRM fd matching") Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>