summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
Commit message (Collapse)AuthorAgeFilesLines
* panfrost: Add PAN_MESA_DEBUG=gles3 optionAlyssa Rosenzweig2020-02-272-7/+15
| | | | | | | | This enables experimental GLES3.0 support without ES3.1/2 hacks. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3950>
* panfrost: Expose PIPE_CAP_PRIMITIVE_RESTARTAlyssa Rosenzweig2020-02-271-0/+1
| | | | | | | | It works just fine, we just forgot to expose the CAP. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3950>
* panfrost: Don't set shared->unk0Alyssa Rosenzweig2020-02-271-1/+0
| | | | | | | | | | | | | | | This field controls the size of per-thread temporaries (somehow this is separate from the regular stack for register spilling..), though I'm not certain on the details. Regardless this value of 0x1e despite being used in places by the blob seems wrong and is interfering with correct sizing of the stack. We don't use non-spilling scratchpad yet, so this is just here to fix some details of spilling. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3950>
* panfrost: Fix gl_VertexID/InstanceIDAlyssa Rosenzweig2020-02-273-4/+7
| | | | | | | | | | | Fixes a bunch of tests in dEQP-GLES3.functional.instanced.*. Fixes: 027944c7c8c ("panfrost: Avoid reading GPU memory when packing vertices") Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3950>
* panfrost: Implement index buffer cacheAlyssa Rosenzweig2020-02-273-1/+114
| | | | | | | | | | | | | | | | | | | For index bufer resources (not user index buffers), we're able to cache results. In practice, the cache works pretty dang well. It's still important that the min/max computation is efficient (since when the cache misses it'll run at draw-time and we don't want jank), but this can eliminate a lot of computations entirely. We use a custom data structure for caching. Search is O(N) to the size but sizes are capped so it's effectively O(1). Insertion is O(1) with automatic oldest eviction, on the assumption that the oldest results are the least likely to still be useful. We might also experiment with other heuristics based on actual usage later. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3880> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3880>
* panfrost: Combine get_index_buffer with bound computationAlyssa Rosenzweig2020-02-271-16/+25
| | | | | | | | | | | These operations are intertwined since there are optimizations that will want to "double dip". In particular for user index buffers we'd want to upload simultaneous with index computation. For resources we'd like to keep resource related code together. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3880>
* radeon/jpeg: fix the jpeg dt_pitch with YUYV formatLeo Liu2020-02-271-5/+2
| | | | | | | | | | | The dt_pitch should be same as NV12 format from decoder views, and it finally got corrected with gfx9 surface's fixes from MR https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3738 Signed-off-by: Leo Liu <[email protected]> Acked-by: Pierre-Eric Pelloux-Prayer <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3738> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3738>
* radeonsi: fix surf_pitch for subsampled surfacePierre-Eric Pelloux-Prayer2020-02-271-10/+10
| | | | | | | | | | | | | | gfx9.surf_pitch is supposed to be in blocks (or elements) but addrlib returns a pitch in pixels. This cause a mismatch between surface->bpe and surface.u.gfx9.surf_pitch. For subsampled formats like uyvy (bpe is 2) this breaks in various places: - sdma copy - video rendering (see issue https://gitlab.freedesktop.org/mesa/mesa/issues/2363) when the vl_compositor_gfx_render method is used Reviewed-by: Marek Olšák <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3738>
* gallium/video: remove pipe_video_buffer.chroma_formatPierre-Eric Pelloux-Prayer2020-02-277-10/+3
| | | | | | | | | | chroma_format depends on buffer_format so use the format_to_chroma_format helper instead of storing it next to buffer_format. This avoids bugs where one value is changed without updating the other. Reviewed-by: Marek Olšák <[email protected]> Acked-by: Leo Liu <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3738>
* radeonsi: test subsampled format in testdmaPierre-Eric Pelloux-Prayer2020-02-271-30/+31
| | | | | | Reviewed-by: Marek Olšák <[email protected]> Acked-by: Leo Liu <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3738>
* iris: Apply the flushes when switching pipelines.Rafael Antognolli2020-02-261-12/+4
| | | | | | | | | | | | | | | | | | | | | | Even though the workaround description says: "all the listed commands are non-pipelined and hence flush caused due to pipeline mode change must not cause performance issues..." My understanding is that we still need to have the flushes. Also, the flushes are required not only to stall the pipeline, but also to clear caches, so I don't think they can simply be discarded. Additionally, while doing some testing that increased the number of surface STATE_BASE_ADDRESS emitted, I got a lot more GPU hangs. Adding these flushes fixes those hangs. Fixes: b8fbb39a (iris: Implement Gen12 workaround for non pipelined state) Reviewed-by: Lionel Landwerlin <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3908> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3908>
* gallium/hash_table: remove some function wrappersMarek Olšák2020-02-267-18/+18
| | | | | | Reviewed-by: Kristian H. Kristensen <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3722> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3722>
* gallium/hash_table: turn it into a wrapper around util/hash_tableMarek Olšák2020-02-263-4/+4
| | | | | Reviewed-by: Kristian H. Kristensen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3722>
* gallium/hash_table: consolidate hash tables with pointer keysMarek Olšák2020-02-263-40/+4
| | | | | Reviewed-by: Kristian H. Kristensen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3722>
* panfrost: Remove some more prints to stdoutTomeu Vizoso2020-02-261-2/+2
| | | | | | | | They can confuse test runners. Signed-off-by: Tomeu Vizoso <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3876>
* ac,radeonsi: add ac_gpu_info::lds_size_per_cuSamuel Pitoiset2020-02-261-7/+1
| | | | | | | | | Both RadeonSI and RADV use the WGP mode, so we can assume 128KB on GFX10. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3899>
* lima: expose fragment shader derivatives capabilityIcenowy Zheng2020-02-261-0/+3
| | | | | | | | | | | | | Support for fragment shader derivatives has landed in the Lima PP compiler for a long time, but its capability is not exposed yet. Expose the support now. Signed-off-by: Icenowy Zheng <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Vasily Khoruzhick <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3944> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3944>
* v3d: Sync on last CS when non-compute stage uses resource written by CSJose Maria Casanova Crespo2020-02-256-25/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a resource is written by a compute shader and then used by a non-compute stage we sync on last compute job to guarantee that the resource has been completely written when the next stage reads resources. In the other cases how flushes are done guarantee the serialization of the writes and reads. To reproduce the failure the following tests should be executed in batch as last test don't fail when run isolated: KHR-GLES31.core.shader_image_load_store.basic-allFormats-load-fs KHR-GLES31.core.shader_image_load_store.basic-allFormats-loadStoreComputeStage KHR-GLES31.core.shader_image_load_store.basic-allTargets-load-cs KHR-GLES31.core.shader_image_load_store.advanced-sync-vertexArray v2: Use fence dep instead of bo_wait (Eric Anholt) v3: Rename struct names (Iago Toral) Document why is not needed on graphics->compute case. (Iago Toral) Follow same code pattern of the other update of in_sync_bcl. v4: Fixed comments style. (Iago Toral) Fixes KHR-GLES31.core.shader_image_load_store.advanced-sync-vertexArray Reviewed-by: Iago Toral Quiroga <[email protected]> CC: 19.3 20.0 <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/2700> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/2700>
* lima: remove its hash table entry when invalidating a resourceIcenowy Zheng2020-02-241-0/+2
| | | | | | | | | | | | | | | | When a resouce is already invalidated, its hash table entry becomes useless. In addition, the lima_job_free() function won't remove the hash table entry for invalidated resource. So the hash entry should be removed when invalidating the resource, otherwise bogus hash entry might be left in the table, and when the resource is reused in another job, the code will find the freed job when invalidating and thus result in crash. Fixes: c64994433c0d ("lima: track write submits of context (v3)") Signed-off-by: Icenowy Zheng <[email protected]> Reviewed-by: Vasily Khoruzhick <[email protected]> Reviewed-by: Qiang Yu <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3917> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3917>
* freedreno: Switch to using lowered image intrinsics.Eric Anholt2020-02-241-0/+3
| | | | | | | | | This cuts out a bunch of deref chain walking that the compiler can do for us. Reviewed-by: Kenneth Graunke <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3728> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3728>
* v3d: Ask the state tracker to lower image accesses off of derefs.Eric Anholt2020-02-241-0/+3
| | | | | | | | This saves a bunch of hassle in handling derefs in the backend, and would be needed for reasonable handling of dynamic indexing of image arrays. Reviewed-by: Kenneth Graunke <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3728>
* iris: Use isl_aux_state_transition_write()Nanley Chery2020-02-241-182/+13
| | | | | Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2957>
* iris: Use ISL's access preparation functionsNanley Chery2020-02-241-256/+34
| | | | | Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2957>
* iris: Use isl_aux_usage_has_fast_clear()Nanley Chery2020-02-243-5/+5
| | | | | | | Make sure fast-clears aren't attempted or allowed for ISL_AUX_USAGE_MC. Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2957>
* iris: Fix import sync-file into syncobjChris Wilson2020-02-241-0/+2
| | | | | | | | | | | | | When importing a sync-file, the kernel expects to be told which syncobj to replace with the new fence -- it does not automatically create a new handle for us. Abide by this rule and create a new syncobj for the imported sync-file. Fixes: f459c56be6bf ("iris: Add fence support using drm_syncobj") Cc: Lionel Landwerlin <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3919> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3919>
* gallium/swr: Fix min/max range index drawKrzysztof Raszkowski2020-02-241-2/+7
| | | | | | Reviewed-by: Jan Zielinski <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3905> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3905>
* iris: Set MOCS for constant packets on Gen12+Kenneth Graunke2020-02-211-0/+7
| | | | | | | | | | It seems to be back, and we shouldn't use 0, as that's now considered an error. Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3720> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3720>
* iris: Fix BLORP vertex buffers to respect ISL MOCS settingsKenneth Graunke2020-02-211-7/+1
| | | | | | | Fixes: a4da6008b6a ("iris: Use mocs from isl_dev.") Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3720>
* iris: Make mocs an inline helper in iris_resource.hKenneth Graunke2020-02-216-23/+22
| | | | | | | | | | | | Now that it uses ISL rather than genxml code, there's no need for it to live as a vtable function inside the state module. We can just make it a static inline helper in iris_resource.h so it's available throughout the codebase. Fixes: a4da6008b6a ("iris: Use mocs from isl_dev.") Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3720>
* nir/builder: Return an integer from nir_get_texture_sizeJason Ekstrand2020-02-211-1/+1
| | | | | | | | | | It's convenient in a bunch of cases for nir_get_texture_size to return a float but it's very unexpected. This fixes a bug in the R600 NIR code. Fixes: f718ac62688b "r600/sfn: Add a basic nir shader backend" Reviewed-by: Eric Anholt <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3897> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3897>
* panfrost: Rewrite texture descriptor creation logicAlyssa Rosenzweig2020-02-213-168/+45
| | | | | | | | | | | | | | | | | | Rather than creating partially within the Gallium create function and monkeypatching on draw time with code split across N different files with tight Gallium dependencies, let's streamline everything into a series of maintainable routines in mesa/src/panfrost with no Gallium dependencies, doing the entire texture creation in one-shot and thus adding absolutely zero draw-time overhead (since we can allocate a BO for the descriptor and upload ahead-of-time, so switching textures is as cheap as switching pointers). Was this worth it? You know, I'm not sure :| Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858>
* panfrost: Move format translation to rootAlyssa Rosenzweig2020-02-2111-369/+1
| | | | | | | | | | Since PIPE formats are now shared across Mesa we can do this, and the routines themselves are good enough code that I'm happy to move them here. We'll use them momentarily. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858>
* panfrost: Move pan_afbc.c to rootAlyssa Rosenzweig2020-02-213-136/+0
| | | | | | | | | | Now that PIPE formats are shared across Mesa, this well-documented piece of code is a good fit for root panfrost, let's move it and get a little closer to taming the mess of resources. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858>
* panfrost: Move checksum routines to root panfrostAlyssa Rosenzweig2020-02-212-42/+2
| | | | | | | | | | These are Gallium-independent and clean code; as is tradition, let's hoist them up out of the Gallium driver as a bit of yak shaving as we prepare to untangle the monster that is pan_resource.c Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3858>
* lima: implement PLB PP stream cacheVasily Khoruzhick2020-02-216-120/+121
| | | | | | | | | | | | | | | Generating PLB PP stream is expensive. PLB PP stream content depends on damage, and if damage consists of several rects it's impossible to come up with a simple key. Simplify damage to a single bounding box so we have a simple key and cache PLB PP stream. Cache size is limited to 0.1% of system RAM and once limit is reached least recently used entries are dropped. Reviewed-by: Qiang Yu <[email protected]> Signed-off-by: Vasily Khoruzhick <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3834> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3834>
* panfrost: Remove flush_frontbufferAlyssa Rosenzweig2020-02-201-11/+0
| | | | | | | | | | A relic from software rasterizers. Hardware drivers generally don't need to implement this. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Erik Faye-Lund <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3878> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3878>
* panfrost: LogicOp supportIcecream952020-02-204-9/+88
| | | | | | | | | | | | | | The generated shaders are definitely not optimal, but for a feature hardly anyone uses, it's probably good enough. The XScreensaver demos quasicrystal, blitspin, bouboule, crystal and munch now seem to work, with no obvious problems. Currently this only works for 8-bit textures. Reviewed-by: Alyssa Rosenzweig <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3887> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3887>
* radeonsi: Fix compute copies for subsampled formats.Bas Nieuwenhuizen2020-02-191-3/+18
| | | | | | | | | | | | | | | | | | | | | We cannot do image stores (or render) to subsampled formats. Reinterpret as R32_UINT instead. si_set_shader_image_desc already uses the blockwidth from the view formats, so the image width adjustments are already implemented. This is still icky with mipmapping on GFX9+ though, but since it is mostly a video format I don't think that will be much of an issue and broken mipmapping is still better than broken everything. Fixes: e5167a9276d "radeonsi: disable SDMA on gfx8 to fix corruption on RX 580" Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2535 Reviewed-by: Marek Olšák <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3853> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3853>
* panfrost: Remove old hackAlyssa Rosenzweig2020-02-191-3/+2
| | | | | | | | | I don't know why I thought this was needed. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3855> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3855>
* panfrost: Remove old commentAlyssa Rosenzweig2020-02-191-2/+0
| | | | | | | | We already handle primitive restart earlier in the function. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3855>
* panfrost: Remove dirty trackingAlyssa Rosenzweig2020-02-193-57/+6
| | | | | | | | | | We never really respected it and it doesn't quite make sense for Mali the way it was previously setup. The correct solution is to do push as much code into CSO creation as possible. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3855>
* iris: Do not dereference nullptr with pipe_referenceDanylo Piliaiev2020-02-192-2/+4
| | | | | | | | | | | ../src/gallium/drivers/iris/iris_fence.h:54:8: runtime error: member access within null pointer of type 'struct iris_syncpt' ../src/gallium/drivers/iris/iris_fence.c:136:8: runtime error: member access within null pointer of type 'struct pipe_fence_handle' Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825>
* intel/bufmgr: Cast bitshift to unsignedDanylo Piliaiev2020-02-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | ../src/mesa/drivers/dri/i965/intel_buffer_objects.c:405:4: runtime error: left shift of 255 by 24 places cannot be represented in type 'int' #0 0x7f9404ac4ae1 in brw_map_buffer_range ../src/mesa/drivers/dri/i965/intel_buffer_objects.c:405 #1 0x7f9405a9cb13 in vbo_save_map_vertex_store ../src/mesa/vbo/vbo_save_api.c:261 #2 0x7f9405b6a89d in vbo_save_NewList ../src/mesa/vbo/vbo_save_api.c:1774 #3 0x7f94051aba3d in _mesa_NewList ../src/mesa/main/dlist.c:14172 ../src/gallium/drivers/iris/iris_resource.c:1725:61: runtime error: left shift of 255 by 24 places cannot be represented in type 'int' #0 0x7fe51c820c8e in iris_map_direct ../src/gallium/drivers/iris/iris_resource.c:1725 #1 0x7fe51c82322c in iris_transfer_map ../src/gallium/drivers/iris/iris_resource.c:1895 #2 0x7fe5202628be in u_transfer_helper_transfer_map ../src/gallium/auxiliary/util/u_transfer_helper.c:243 #3 0x7fe51997c508 in pipe_buffer_map_range ../src/gallium/auxiliary/util/u_inlines.h:344 #4 0x7fe51997ec8d in u_upload_alloc_buffer ../src/gallium/auxiliary/util/u_upload_mgr.c:221 #5 0x7fe51997f24f in u_upload_alloc ../src/gallium/auxiliary/util/u_upload_mgr.c:254 #6 0x7fe51ccf43af in upload_state ../src/gallium/drivers/iris/iris_state.c:323 #7 0x7fe51d06963a in gen9_init_state ../src/gallium/drivers/iris/iris_state.c:7516 #8 0x7fe51c7c2ea0 in iris_create_context ../src/gallium/drivers/iris/iris_context.c:294 #9 0x7fe519dc729b in st_api_create_context ../src/mesa/state_tracker/st_manager.c:921 #10 0x7fe5198c47ea in dri_create_context ../src/gallium/state_trackers/dri/dri_context.c:161 #11 0x7fe519898aac in driCreateContextAttribs ../src/mesa/drivers/dri/common/dri_util.c:475 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3825>
* llvmpipe: Silence uninitialized variable warning about "scissor"Eric Anholt2020-02-181-1/+1
| | | | | | | nr_planes is only > 3 when scissor is enabled, but gcc doesn't see it. Reviewed-by: Roland Scheidegger <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3867>
* freedreno/registers: cleanup CP_SET_MARKERRob Clark2020-02-183-7/+7
| | | | | | | | | | | 1) Name RM6_COMPUTE, and rename RM6_ENDVIS (from RM6_BLIT) to better reflect what it actually does 2) Cleanup open-coded mode enum values 3) Removed unused 0x10 Signed-off-by: Rob Clark <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3833> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3833>
* panfrost: Remove enum panfrost_memory_layoutAlyssa Rosenzweig2020-02-185-50/+28
| | | | | | | | | | It duplicates mali_texture_layout. Let's use the native hardware enum and spare a pointless translation. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3854> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3854>
* panfrost: Debitfieldize mali_uniform_buffer_metaAlyssa Rosenzweig2020-02-181-11/+5
| | | | | | | | | | | It fits snugly in a u64, just give a macro for direct computation rather than fudging around with bitfields. Not sure if this actually matters with well-optimized compilers but it makes the code subjectively cleaner so it's worth it for that if nothing else. Signed-off-by: Alyssa Rosenzweig <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3838> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3838>
* panfrost: Avoid reading GPU memory when packing verticesAlyssa Rosenzweig2020-02-181-17/+18
| | | | | | | These occurred unintentionally as a byproduct of bitfields, etc. Whoops. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3838>
* panfrost: Cleanup transfer_mapAlyssa Rosenzweig2020-02-181-22/+1
| | | | | | | | | | A lot of these checks are obsolete since we've started tracking BO accesses correctly. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3849> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3849>
* panfrost: Update scoreboarding notesAlyssa Rosenzweig2020-02-181-10/+6
| | | | | | | | | | Our understanding of the set/write value jobs has evolved, so let's update the rules. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3836> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3836>