summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* anv: Drop anv_image::needs_*_surface_stateChad Versace2016-02-042-22/+6
| | | | | | anv_image::needs_sampler_surface_state was a redundant member, identical to (usage & VK_IMAGE_USAGE_SAMPLED_BIT). Likewise for the other needs_* members.
* anv/image: Rename nonrt_surface_stateChad Versace2016-02-043-11/+11
| | | | | Let's call it what it is, not what it is not. Rename it to 'sampler_surface_state'.
* anv/descriptor_set: Fix descriptor copiesJason Ekstrand2016-02-031-6/+16
| | | | | We weren't pulling the actual binding location information out of the set layout. The new code mirrors the descriptor write code.
* nir/spirv: fix build_mat4_det stack smasherMark Janes2016-02-021-2/+5
| | | | | | | | | | | When generating a sub-determinate matrix, a 3-element swizzle array was indexed with clever inline boolean logic. Unfortunately, when i and j are both 3, the index overruns the array, smashing the next variable on the stack. For 64 bit builds, the alignment of the 3-element unsigned array leaves 32 bits of spacing before the next local variable, hiding this bug. On i386, a subcolumn pointer was smashed then dereferenced.
* anv: Fix anv_descriptor_set reference error on deletionMark Janes2016-02-022-2/+4
| | | | | | | | | | anv_descriptor_set_destroy uses the descriptor sets's set_layout member to iterate the set's buffer views. However, the set_layout reference may have previously been freed. On 64 bit builds, this bug generated valgrind errors but did not affect CTS test results. On 32 bit builds, it reliably produces assertions and memory corruption.
* anv: Use @LIB_DIR@ in anv_icd.jsonKristian Høgsberg Kristensen2016-02-021-1/+1
| | | | Otherwise we may get a lib vs lib64 mismatch.
* anv/device: Improve version error reportingJason Ekstrand2016-02-021-1/+5
|
* anv/fence: Default to not readyJason Ekstrand2016-02-021-0/+2
| | | | | | | | This is kind-of silly. We *really* need to do a better job of making sure all objects have all their default values set. We probably also want to, eventually, put everything into the BO (to save memory) and, more specifically, make the GPU write the "ready" flag. That way GetFenceStatus won't ever have to call into the kernel.
* i965: fix unsigned long overflows for i386Mark Janes2016-02-014-12/+12
| | | | | bit-shifts on 32 bit unsigned longs overflow in several places. The intention was for 64 bit integers to be used.
* nir/spirv: Fix UBO loads of a single element of a row-major matrixJason Ekstrand2016-02-011-0/+2
|
* nir/spirv: Handle the LOD parameter of OpImageQuerySizeLodJason Ekstrand2016-02-011-0/+4
|
* nir/spirv: Add support for SpvOpImageJason Ekstrand2016-02-011-0/+12
|
* nir/spirv: Fix the UBO loading case of a single row-major matric columnJason Ekstrand2016-02-011-2/+5
|
* nir/spirv: Fix the UBO loading case of a single row-major matric columnJason Ekstrand2016-02-011-3/+7
|
* anv/wsi/wayland: Advertise sRGBJason Ekstrand2016-02-011-4/+4
|
* anv/wsi/x11: Expose SRGB all the timeJason Ekstrand2016-02-011-1/+1
| | | | | | | After a long discussion with Eric Anholt and Owen Taylor, I learned that X11 is basically always sRGB as that's what the scanout hardware does and X doesn't modify anything. Therefore, we should just always expose sRGB formats.
* anv: Structify a one-member unionChad Versace2016-02-011-3/+1
| | | | anv_descriptor contained a union with one member.
* anv: Advertise robustBufferAccessKristian Høgsberg Kristensen2016-02-011-1/+1
| | | | | | The GPU does most of this for us as long as we set up tight bounds for the buffers, which we do. Additionally, we range check dynamically buffers in the shader. With that it's safe to turn on robustBufferAccess.
* anv/meta: Strip trailing whitespaceChad Versace2016-02-011-5/+5
|
* wsi/x11: Remove B8G8R8_UNORMJason Ekstrand2016-02-011-1/+0
| | | | | | We don't actually support that format yet because ISL doesn't have an enum for it. We need to beef up the formats table to allow for tiled-only formats.
* anv/gen7: Rename gen7_batch_lr* to emit_lr*Jordan Justen2016-01-301-30/+30
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/gen7: Set BypassGatewayControl in MEDIA_VFE_STATEJordan Justen2016-01-301-1/+1
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/genX_pipeline: Remove unnecessary #include filesJordan Justen2016-01-301-8/+0
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/gen7: Set SLM size in interface descriptorJordan Justen2016-01-301-0/+11
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv: Support MEDIA_VFE_STATE for gen7Jordan Justen2016-01-301-3/+4
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/gen7: Subtract 1 from num_elements when setting up buffer surface stateJordan Justen2016-01-301-3/+3
| | | | | | e8f51fe4 for gen7 Signed-off-by: Jordan Justen <[email protected]>
* anv/gen7: Disable fs dispatch for depth/stencil only pipelinesJordan Justen2016-01-301-49/+55
| | | | | | 292031a for gen7 Signed-off-by: Jordan Justen <[email protected]>
* anv/gen7: Add support for gl_NumWorkGroupsJordan Justen2016-01-301-0/+19
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/gen7/compute: Setup push constants and local idsJordan Justen2016-01-301-0/+21
| | | | Signed-off-by: Jordan Justen <[email protected]>
* anv/genX: Add genX_pipeline.c for compute_pipeline_createJordan Justen2016-01-304-100/+137
| | | | | | Adds initial compute_pipeline_create implementation for gen7. Signed-off-by: Jordan Justen <[email protected]>
* Merge branch 'vulkan' into 'vulkan' Jason Ekstrand2016-01-301-2/+3
|\ | | | | | | | | | | | | Vulkan WSI Wayland fixes Two small fixes to make mailbox mode actually work again. See merge request !4
| * anv/wsi: Mark Wayland buffers as busyDaniel Stone2016-01-191-0/+1
| | | | | | | | | | | | | | | | | | We were diligently setting Wayland buffers as non-busy, but nowhere in the code did we set them to busy when submitted to the server. This meant that acquire_next_image would only ever find the same buffer in a loop, over and over. Signed-off-by: Daniel Stone <[email protected]>
| * anv/wsi: Avoid stuck Wayland connectionDaniel Stone2016-01-191-2/+2
| | | | | | | | | | | | | | | | | | In acquire_next_image, we are waiting for a wl_buffer::release to arrive and release one of the buffers in our swapchain. Most compositors don't explicitly flush release events, so we may need to perform a roundtrip instead, to ensure the event arrives. Signed-off-by: Daniel Stone <[email protected]>
* | anv/pass: Initialize has_resolveJason Ekstrand2016-01-301-0/+1
| |
* | anv/wsi: Set the platform field of VkIcdSurfaceBaseJason Ekstrand2016-01-302-0/+2
| |
* | anv/wsi/x11: Actually pull information from the window's visualJason Ekstrand2016-01-301-7/+143
| |
* | anv/wsi/x11: Actually check for DRI3Jason Ekstrand2016-01-301-15/+173
| |
* | anv/WSI: Support more usage bitsJason Ekstrand2016-01-292-0/+4
| | | | | | | | | | They're just images and we have no intention of stompping alpha channels (at least not yet), so there's no reason why you can't sample.
* | anv/formats: Add more compressed formatsJason Ekstrand2016-01-291-16/+16
| | | | | | | | | | This adds support for the DX compression formats. Given that ETC and EAC are working fine, these should be ok too.
* | anv/wsi: Rework to be compatable with the loaderJason Ekstrand2016-01-296-97/+94
| |
* | vulkan: Import vk_icd.hJason Ekstrand2016-01-291-7/+1
| |
* | anv/device: Fix version checkJason Ekstrand2016-01-291-1/+1
| | | | | | | | The bottom-end check was wrong so it was only working on <= 1.0.0. Oops.
* | anv: Don't disable snooping for mempoolsKristian Høgsberg Kristensen2016-01-291-0/+2
| | | | | | | | | | | | There's an intermittent flushing problem with VkEvent that we need to root cause. For now, using the snooping feature keeps the memory pools up to date with GPU writes and fixes the problem.
* | anv: clflush is only orderered against mfenceKristian Høgsberg Kristensen2016-01-293-11/+12
| | | | | | | | | | | | We can't use the more fine-grained load and store fence commands (lfence and mfence), since clflush is only guaranteed to be ordered with respect to mfence.
* | anv: Limit flushing to the range of mapped memoryKristian Høgsberg Kristensen2016-01-291-1/+6
| |
* | anv/cmd_buffer: Emit gen9 style SF state for CHVBen Widawsky2016-01-291-1/+23
| | | | | | | | | | The state for line width changes on Cherryview to use the GEN9 bits (for extra precision).
* | anv/gen8: Extract SF stateBen Widawsky2016-01-291-8/+15
| | | | | | | | For upcoming patch to address difference in Cherryview.
* | anv: Do resolves at end of subpassChad Versace2016-01-284-0/+68
| |
* | anv/meta: Remove unneeded resolve pipelineChad Versace2016-01-282-9/+16
| | | | | | | | | | Vulkan does not allow resolving a single-sample image. So remove that pipeline from anv_meta_state::resolve::pipelines.
* | anv/meta_resolve: Remove redundant initialization paramsChad Versace2016-01-281-18/+10
| |