Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | gen8/cmd_buffer: Properly return flushed push constant stages | Jason Ekstrand | 2016-03-02 | 1 | -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 values | Jason Ekstrand | 2016-03-01 | 1 | -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 vulkan | Kenneth Graunke | 2016-03-01 | 1 | -7/+2 |
| | |||||
* | genxml: Make the border color pointer consistent across gens | Jason Ekstrand | 2016-03-01 | 3 | -7/+3 |
| | |||||
* | gen7/pipeline: Add competent blending | Jason Ekstrand | 2016-03-01 | 1 | -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 state | Jason Ekstrand | 2016-03-01 | 4 | -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 enable | Jason Ekstrand | 2016-03-01 | 2 | -6/+4 |
| | | | | Now it's all consistent with gen9 | ||||
* | anv/cmd_buffer: Clean up stencil state setup on gen7 | Jason Ekstrand | 2016-03-01 | 1 | -12/+8 |
| | |||||
* | anv/cmd_buffer: Clean up stencil state setup on gen8 | Jason Ekstrand | 2016-03-01 | 1 | -16/+11 |
| | |||||
* | anv: Add in image->offset when setting up depth buffer | Kristian Høgsberg Kristensen | 2016-03-01 | 1 | -1/+1 |
| | | | | | | Fix from Neil Roberts. https://bugs.freedesktop.org/show_bug.cgi?id=94348 | ||||
* | anv/pipeline: Pull 3DSTATE_SBE into a shared helper | Jason Ekstrand | 2016-03-01 | 3 | -111/+111 |
| | |||||
* | genxml: Break output detail of 3DSTATE_SBE on gen7 into a struct | Jason Ekstrand | 2016-02-29 | 2 | -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 Ekstrand | 2016-02-29 | 2 | -0/+22 |
| | |||||
* | anv/cmd_buffer: Re-emit push constants packets for all stages | Jason Ekstrand | 2016-02-29 | 2 | -24/+24 |
| | |||||
* | anv/pipeline: Follow push constant alignment restrictions on BDW+ and HSW gt3 | Jason Ekstrand | 2016-02-29 | 1 | -1/+8 |
| | |||||
* | anv/pipeline: Avoid a division by zero | Jason Ekstrand | 2016-02-29 | 1 | -1/+1 |
| | |||||
* | anv/pipeline: Use dynamic checks for max push constants | Jason Ekstrand | 2016-02-29 | 1 | -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 Gen7 | Nanley Chery | 2016-02-29 | 1 | -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 pipelineStatisticsQuery | Kristian Høgsberg Kristensen | 2016-02-29 | 1 | -1/+1 |
| | | | | | | We don't support that just yet. Reported-by: Jacek Konieczny <[email protected]> | ||||
* | anv: Set CURBEAllocationSize in MEDIA_VFE_STATE | Jordan Justen | 2016-02-28 | 1 | -13/+22 |
| | | | | Signed-off-by: Jordan Justen <[email protected]> | ||||
* | anv/gen7: Enable SLM in L3 cache control register | Jordan Justen | 2016-02-28 | 1 | -0/+62 |
| | | | | | | Port 1983003 to gen7. Signed-off-by: Jordan Justen <[email protected]> | ||||
* | anv/pipeline: Set URB offset to zero if size is zero | Jordan Justen | 2016-02-28 | 1 | -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 unused | Jordan Justen | 2016-02-28 | 1 | -1/+4 |
| | | | | Signed-off-by: Jordan Justen <[email protected]> | ||||
* | anv/pipeline: Set stage URB size to zero if it is unused | Jordan Justen | 2016-02-28 | 1 | -1/+1 |
| | | | | Signed-off-by: Jordan Justen <[email protected]> | ||||
* | anv/gen7: Clean up the dummy PS case | Jason Ekstrand | 2016-02-27 | 1 | -19/+13 |
| | | | | Fix whitespace and remove dead comments | ||||
* | anv/gen7: Set MaximumNumberofThreads in the dummy PS packet | Jason Ekstrand | 2016-02-27 | 1 | -1/+5 |
| | |||||
* | anv/gen7: Only try to get the depth format the surface has depth | Jason Ekstrand | 2016-02-27 | 1 | -1/+4 |
| | |||||
* | anv/image: Use isl for filling brw_image_param | Jason Ekstrand | 2016-02-27 | 1 | -111/+6 |
| | |||||
* | isl: Add helpers for filling out brw_image_param | Jason Ekstrand | 2016-02-27 | 2 | -1/+118 |
| | |||||
* | anv: Fill out image_param structs at view creation time | Jason Ekstrand | 2016-02-27 | 3 | -4/+12 |
| | |||||
* | anv/image: Add a ussage_mask field to image_view_init | Jason Ekstrand | 2016-02-27 | 5 | -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.c | Jason Ekstrand | 2016-02-27 | 2 | -1/+1 |
| | |||||
* | anv: Use isl to fill buffer surface states | Jason Ekstrand | 2016-02-27 | 3 | -81/+6 |
| | |||||
* | isl: Add a helper for filling a buffer surface state | Jason Ekstrand | 2016-02-27 | 4 | -0/+121 |
| | |||||
* | anv: Remove unneeded fiels from anv_image_view | Jason Ekstrand | 2016-02-27 | 2 | -8/+6 |
| | |||||
* | anv/state: Remove unused fill_surface_state functions | Jason Ekstrand | 2016-02-27 | 3 | -419/+0 |
| | |||||
* | anv: Use ISL to fill out surface states | Jason Ekstrand | 2016-02-27 | 1 | -71/+79 |
| | |||||
* | anv/device: Store the default MOCS in the device | Jason Ekstrand | 2016-02-27 | 3 | -7/+15 |
| | |||||
* | isl: Add a function for filling out a surface state | Jason Ekstrand | 2016-02-27 | 5 | -4/+567 |
| | |||||
* | isl: Create per-gen helper libraries for gens 7, 8, and 9 | Jason Ekstrand | 2016-02-27 | 1 | -2/+23 |
| | |||||
* | genxml: Add MOCS fields to RENDER_SURFACE_STATE | Jason Ekstrand | 2016-02-27 | 4 | -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 path | Jason Ekstrand | 2016-02-27 | 2 | -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 Chery | 2016-02-26 | 2 | -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 if | Thomas Hindoe Paaboel Andersen | 2016-02-26 | 1 | -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 packet | Jason Ekstrand | 2016-02-26 | 1 | -0/+23 |
| | |||||
* | anv/device: Properly handle apiVersion == 0 | Jason Ekstrand | 2016-02-25 | 1 | -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_threads | Kristian Høgsberg Kristensen | 2016-02-24 | 1 | -2/+2 |
| | |||||
* | anv: Allocate more push constant space. | Kenneth Graunke | 2016-02-24 | 1 | -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 Graunke | 2016-02-24 | 1 | -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 Graunke | 2016-02-24 | 3 | -9/+15 |
| | | | | Now we're emitting HS and DS packets as well. |