summaryrefslogtreecommitdiffstats
path: root/src/intel
Commit message (Collapse)AuthorAgeFilesLines
* gen8/cmd_buffer: Properly return flushed push constant stagesJason Ekstrand2016-03-021-1/+3
| | | | | This is required on SKL so that we can properly re-emit binding table pointers commands.
* anv/meta_blit: Use unorm formats for 8 and 16-bit RGB and RGBA valuesJason Ekstrand2016-03-011-7/+16
| | | | | | While Broadwell is very good about UINT formats, HSW is more restrictive. Neither R8G8B8_UINT nor R16G16B16_UINT really exist on HSW. It should be safe to just use the unorm formats.
* Merge remote-tracking branch 'origin/master' into vulkanKenneth Graunke2016-03-011-7/+2
|
* genxml: Make the border color pointer consistent across gensJason Ekstrand2016-03-013-7/+3
|
* gen7/pipeline: Add competent blendingJason Ekstrand2016-03-011-43/+45
| | | | | This is mostly a copy-and-paste from gen8. Blending still isn't 100% but it fixes about 1100 CTS blend tests on HSW.
* anv: Unify gen7 and gen8 stateJason Ekstrand2016-03-014-202/+72
| | | | | Now that we've pulled surface state setup into ISL, there's not much to do here.
* anv/cmd_buffer: Look at both sides for stencil enableJason Ekstrand2016-03-012-6/+4
| | | | Now it's all consistent with gen9
* anv/cmd_buffer: Clean up stencil state setup on gen7Jason Ekstrand2016-03-011-12/+8
|
* anv/cmd_buffer: Clean up stencil state setup on gen8Jason Ekstrand2016-03-011-16/+11
|
* anv: Add in image->offset when setting up depth bufferKristian Høgsberg Kristensen2016-03-011-1/+1
| | | | | | Fix from Neil Roberts. https://bugs.freedesktop.org/show_bug.cgi?id=94348
* anv/pipeline: Pull 3DSTATE_SBE into a shared helperJason Ekstrand2016-03-013-111/+111
|
* genxml: Break output detail of 3DSTATE_SBE on gen7 into a structJason Ekstrand2016-02-292-70/+46
| | | | | This makes it work like 3DSTATE_SBE_SWIZ on gen8+ which is much more convenient.
* anv/cmd_buffer: Dirty push constants when changing pipelines.Jason Ekstrand2016-02-292-0/+22
|
* anv/cmd_buffer: Re-emit push constants packets for all stagesJason Ekstrand2016-02-292-24/+24
|
* 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]>
* 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"
* anv: Set max_hs_threads/max_ds_threadsKristian Høgsberg Kristensen2016-02-241-2/+2
|
* anv: Allocate more push constant space.Kenneth Graunke2016-02-241-5/+11
| | | | | | | | | | | | | | | Previously we allocated 4kB of push constant space for VS, GS, and PS (for a total of 12kB) no matter what. This works, but doesn't fully utilize the space - we have 16kB or 32kB of space. This makes anv use the same method as brw - divide up the space evenly among all active shader stages. This means HS and DS would get space, if those shader stages existed. In the future, we can probably do better by inspecting how many push constants each shader stage uses, and weight things accordingly. But this is strictly better than the old code, and ideally we'd justify a fancier solution with actual performance data.
* anv: Properly size the push constant L3 area.Kenneth Graunke2016-02-241-3/+8
| | | | | We were assuming it was 32kB everywhere, reducing the available URB space. It's actually 16kB on Ivybridge, Baytrail, and Haswell GT1-2.
* anv: Emit 3DSTATE_PUSH_CONSTANT_ALLOC_* via a loop.Kenneth Graunke2016-02-243-9/+15
| | | | Now we're emitting HS and DS packets as well.