aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
...
* intel/perf: create a vtable entry for bo_busyMark Janes2019-08-071-4/+5
| | | | | | | Iris and i965 variants of this method need to be called by perf routines. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entry for bo_wait_renderingMark Janes2019-08-071-1/+3
| | | | | | | Iris and i965 variants of this method need to be called by perf routines. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entry for batch_referencesMark Janes2019-08-071-6/+11
| | | | | | | Iris and i965 variants of this method need to be called by perf routines. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: refactor gen_perf_end_query into gen_perfMark Janes2019-08-071-45/+1
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: refactor gen_perf_begin_query into gen_perfMark Janes2019-08-071-247/+1
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move perf-related state into gen_perf_contextMark Janes2019-08-071-49/+29
| | | | | | | | | | | | To move more operations into intel/perf, several state items are needed. Save references to that state in the perf_ctxt, rather than passing them in for every operation. This commit includes an initializer for gen_perf_context, to set those references and also encapsulate the initialization of the sample buffer state. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entries for buffer object map/unmapMark Janes2019-08-071-6/+12
| | | | | | These operations are needed to refactor subsequent methods into perf Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move client reference counts into perfMark Janes2019-08-071-36/+5
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move open_perf into perfMark Janes2019-08-071-48/+2
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move close_perf into perfMark Janes2019-08-071-18/+2
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entry for emit_mi_flushMark Janes2019-08-071-2/+4
| | | | | | This method is needed to move subsequent methods into perf. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: use temporary pointers to simplify access to perf stateMark Janes2019-08-071-78/+92
| | | | | | | | | | | Most accesses to perf state were made through repeated dereferences of brw_context members. Prefering temporary variables of perf_ctx and perf_cfg has the following advantages: - more concise implementation - easier refactor when moving subsequent methods to perf Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move snapshot_statistics_registers into perfMark Janes2019-08-071-28/+3
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move query_object into perfMark Janes2019-08-073-158/+63
| | | | | | Query objects can now be encapsulated within the perf subsystem. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entry for store_register_mem64Mark Janes2019-08-071-3/+7
| | | | | | This method is needed to move subsequent methods into perf. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move free_sample_bufs into perfMark Janes2019-08-071-15/+1
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move reap_old_sample_buffers into perfMark Janes2019-08-071-25/+1
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move get_free_sample_buf into perfMark Janes2019-08-071-21/+2
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move the perf context into perfMark Janes2019-08-072-147/+92
| | | | | | | | | | | | The "context" that is necessary to submit and process perf commands to the hardware was previously present in the brw_context.perfquery struct. This commit moves it into perf and provides a more understandable name. The intention is for this struct to be private, when all methods that access it are migrated into perf. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move get_metric_id to perfMark Janes2019-08-071-36/+1
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move oa_sample_buf structure to perfMark Janes2019-08-071-139/+16
| | | | | | | | oa_sample_buf holds the data provided by the kernel that will be collated into performance metrics. Since this functionality will be implemented in perf, the struct needs to be defined there. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: enumerate query-based metrics in perfMark Janes2019-08-075-266/+4
| | | | | | | Iris and i965 both need to enumerate the available metrics, so these routines must be located in perf. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: move perf-related constants to common locationMark Janes2019-08-073-22/+1
| | | | | | | | The perf subsystem needs several macro definitions that were duplicated in Iris and i965 headers. Place these macros within perf, if the perf implementation contains the only references to the values. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entry for capture_frequency_stat_registerMark Janes2019-08-071-2/+9
| | | | | | In preparation for calling both Iris and i965 implementions from perf. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entry for batchbuffer_flushMark Janes2019-08-071-8/+18
| | | | | | In preparation for calling both Iris and i965 implementions from perf. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entry for emit_report_countMark Janes2019-08-071-2/+18
| | | | | | In preparation for calling both Iris and i965 implementions from perf. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable entry for bo_unreferenceMark Janes2019-08-071-4/+8
| | | | | | In preparation for calling both Iris and i965 implementions from perf. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: create a vtable for low-level driver functionsMark Janes2019-08-071-4/+15
| | | | | | | | | | | Performance metrics collections requires several actions (eg bo_map()) that have different implementations for Iris and i965. The perf subsystem needs a vtable for each of these actions, so it can invoke the corresponding implementation for each driver. The first call to be added to the table is bo_alloc. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: use common ioctl wrapperMark Janes2019-08-071-1/+1
| | | | | | | | There were multiple ioctl-wrapper functions, so a common implementation was put in gen_gem.h. With a common implementation, perf no longer needs the caller to configure one for it. Reviewed-by: Kenneth Graunke <[email protected]>
* intel/perf: rename gen_perf to gen_perf_configMark Janes2019-08-073-4/+4
| | | | | | | | | | | | | | | This structure contains the configurations of the metrics for the current platform, and the settings needed for the perf subsystem to query that configuration from the device. This data is available without a rendering context, and needed to support MDAPI metrics for Vulkan. A gen_perf_context struct will be added later, which holds additional state from the rendering context necessary for metric data collection. The gen_perf struct needs a more precise name to reduce confusion. Reviewed-by: Kenneth Graunke <[email protected]>
* gallium: redefine ATOMINC_WRAP to be more hardware-friendlyIlia Mirkin2019-08-071-1/+10
| | | | | | | | Both AMD and NVIDIA hardware define it this way. Instead of replicating the logic everywhere, just fix it up in one place. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* st/mesa: relax EXT_shader_image_load_store enableIlia Mirkin2019-08-071-3/+0
| | | | | | | | | | | | | | | | | | | | | There's no reason to bring format-less load requirement into this extension. It requires a size to be provided, and a compatible format is computed from the size + data type. For example layout(size1x32) uniform iimage1D image; becomes DCL IMAGE[0], 1D, PIPE_FORMAT_R32_SINT, WR whereas PIPE_CAP_IMAGE_LOAD_FORMATTED is designed to allow PIPE_FORMAT_NONE to be provided as a format and still enable LOAD operations to be performed. So the shader has all the information it needs about the format. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* i965/perf: restore mdapi statistics query metricsMark Janes2019-08-071-0/+1
| | | | | | | | | | | Registration of mdapi metrics based on statistics query registers was inadvertently removed in the commit that checks for OA kernel support. The statistics queries are not dependent on OA. Fixes: 96e1c945f2b ("i965: Move device info initialization to common code") Reviewed-by: Lionel Landwerlin <[email protected]>
* mesa: Use _mesa_delete_transform_feedback_object in driversYevhenii Kolesnikov2019-08-074-29/+29
| | | | | | | | | | | | | Function _mesa_delete_transform_feedback_object called from within drivers once driver-specific clean-up has been done. Brings into conformity with how other GL objects are handled. CC: Eric Anholt <[email protected]> CC: Kenneth Graunke <[email protected]> Signed-off-by: Yevhenii Kolesnikov <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]>
* mesa: use _mesa_delete_query in driversYevhenii Kolesnikov2019-08-075-7/+16
| | | | | | | | | | | | | | Now drivers can call _mesa_delete_query once driver-specific clean-up has been done. Brings into conformity with how other GL objects are handled. CC: Eric Anholt <[email protected]> CC: Kenneth Graunke <[email protected]> Suggested-by: Eric Anholt <[email protected]> Signed-off-by: Yevhenii Kolesnikov <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]>
* meson,i965: Link with android deps when building for android.Bas Nieuwenhuizen2019-08-071-3/+6
| | | | | | | | | | | The DBG marco in brw_blorp.c ends up calling an android log function: error: undefined reference to '__android_log_print' v2: On suggestion from Lionel, hang the Android dependency onto a new libintel_common dependency. Reviewed-by: Lionel Landwerlin <[email protected]>
* mesa: remove super old TODOs from shaderapi.cTimothy Arceri2019-08-071-5/+0
| | | | Reviewed-by: Marek Olšák <[email protected]>
* mesa/gallium: add dric option to allow overriding GL vendor stringTimothy Arceri2019-08-073-0/+8
| | | | | | | Will be used in the following patch. Reviewed-by: Marek Olšák <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93551
* glsl: add EXT_shader_image_load_store new image functionsPierre-Eric Pelloux-Prayer2019-08-061-0/+8
| | | | | | | | This extension has 2 functions that are missing from the ARB versions: - imageAtomicIncWrap - imageAtomicDecWrap Reviewed-by: Marek Olšák <[email protected]>
* mesa: add EXT_shader_image_load_store glBindImageTextureEXT functionPierre-Eric Pelloux-Prayer2019-08-063-9/+47
| | | | | | | The implementation is almost identical to glBindImageTexture except for error checking. Reviewed-by: Marek Olšák <[email protected]>
* glapi: add EXT_shader_image_load_storePierre-Eric Pelloux-Prayer2019-08-063-0/+6
| | | | Reviewed-by: Marek Olšák <[email protected]>
* tgsi: add ATOMICINC_WRAP/ATOMICDEC_WRAP opcodePierre-Eric Pelloux-Prayer2019-08-062-0/+4
| | | | Reviewed-by: Marek Olšák <[email protected]>
* mesa: add EXT_dsa glMultiTexCoordPointerEXT functionPierre-Eric Pelloux-Prayer2019-08-063-2/+30
| | | | Reviewed-by: Marek Olšák <[email protected]>
* mesa: add EXT_dsa glMultiTexGen* functionsPierre-Eric Pelloux-Prayer2019-08-063-145/+262
| | | | Reviewed-by: Marek Olšák <[email protected]>
* mesa: add EXT_dsa glCopyMultiTexImage* and glCopyMultiTexSubImage*Pierre-Eric Pelloux-Prayer2019-08-064-5/+308
| | | | Reviewed-by: Marek Olšák <[email protected]>
* mesa: add EXT_dsa glGetMultiTexParameteriv/fvEXTPierre-Eric Pelloux-Prayer2019-08-063-3/+49
| | | | Reviewed-by: Marek Olšák <[email protected]>
* mesa: add EXT_dsa glMultiTexSubImage1D/2D/3DEXTPierre-Eric Pelloux-Prayer2019-08-064-3/+231
| | | | Reviewed-by: Marek Olšák <[email protected]>
* mesa: add EXT_dsa glMultiTexImage1D/2D/3DEXT + glGetMultiTexImageEXTPierre-Eric Pelloux-Prayer2019-08-066-5/+299
| | | | Reviewed-by: Marek Olšák <[email protected]>
* mesa: add glBindMultiTextureEXT display list supportPierre-Eric Pelloux-Prayer2019-08-061-0/+23
| | | | | | Fixes: 0972b0b059d ("mesa: add support for glBindMultiTextureEXT") Reviewed-by: Marek Olšák <[email protected]>
* mesa: add EXT_dsa glMultiTexParameter* functionsPierre-Eric Pelloux-Prayer2019-08-064-4/+192
| | | | Reviewed-by: Marek Olšák <[email protected]>