[Mesa-dev] [PATCH 11/11] anv: Enable tessellation shaders.

Eero Tamminen eero.t.tamminen at intel.com
Thu Jan 12 11:41:10 UTC 2017


Hi,

On 11.01.2017 20:07, Lionel Landwerlin wrote:
> On 11/01/17 17:02, Eero Tamminen wrote:
>> On 09.01.2017 07:26, Kenneth Graunke wrote:
>>> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
>>> ---
>>>  src/intel/vulkan/anv_device.c | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> I'm not clear whether we want to do this yet.
>>>
>>> On Skylake, the status is: 99.3% of the CTS passing, Sascha demos work.
>>
>> Tested on SKL GT2, now that this is in...
>>
>> Sascha's displacement mapping and PN-triangles tessellation demos work
>> now fine, but with terrain tessellation test I get:
>> ------------------
>> DL(ERROR): object: 0x0 type: 2 location: 4198 msgCode: 5: While
>> calling vkCreateDevice(), requesting feature #24 in
>> VkPhysicalDeviceFeatures struct, which is not available on this device.
>> DL(ERROR): object: 0x0 type: 2 location: 4209 msgCode: 5: You
>> requested features that are unavailable on this device. You should
>> first query feature availability by calling
>> vkGetPhysicalDeviceFeatures().
>> ...
>> Fatal : VkResult is "ERROR_INCOMPATIBLE_DRIVER" in
>> /home/testrunner/work/VulkanSachaWillems/terraintessellation/terraintessellation.cpp
>> at line 193
>> terraintessellation:
>> /home/testrunner/work/VulkanSachaWillems/terraintessellation/terraintessellation.cpp:193:
>> void VulkanExample::setupQueryResultBuffer(): Assertion `res ==
>> VK_SUCCESS' failed.
>> Aborted (core dumped)
>> ------------------
>>
>> Do you have some extra stuff in Mesa or some specific branch of the
>> demos?
>
> Looks like the demo is using query statistics.
> Mind adding the following patches from Ilia :
> https://patchwork.freedesktop.org/series/15841/ ?

Yes, with that the demo runs fine.

Now it gives only the same validation errors that all the other demos 
output:
---------------------
DS(ERROR): object: 0x11 type: 18 location: 9975 msgCode: 408: 
vkCreateFramebuffer(): VkFramebufferCreateInfo attachment #0 has format 
of VK_FORMAT_B8G8R8A8_SRGB that does not match the format of 
VK_FORMAT_B8G8R8A8_UNORM used by the corresponding attachment for 
renderPass (0x11). For more information refer to Vulkan Spec Section 
'7.3. Framebuffers' which states 'Any given element of pAttachments must 
have been created with an VkFormat value that matches the VkFormat 
specified by the corresponding VkAttachmentDescription in renderPass' 
(https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#renderpass-noattachments)
---------------------


	- Eero


>
>>
>>
>>     - Eero
>>
>>
>>> There are two remaining sets of failures:
>>>
>>>     - dEQP-VK.tessellation.primitive_discard.*_point_mode (20 failures)
>>>       (points appear in the wrong position - at least different than
>>> GLES)
>>>     -
>>> dEQP-VK.tessellation.user_defined_io.per_patch_block_array.vertex_io_array_size_*
>>> (9 failures)
>>>       (not sure what the problem is)
>>>
>>> On Haswell, the status is:
>>>
>>>     [6581/6581] skip: 4364, pass: 2217
>>>
>>> Most tests skip because we don't advertise image load/store and SSBOs in
>>> vec4 stages.  Notably, all failing tests on Gen8+ skip.  So, everything
>>> technically passes.  It probably has the same bugs.
>>>
>>> diff --git a/src/intel/vulkan/anv_device.c
>>> b/src/intel/vulkan/anv_device.c
>>> index a0240d289ba..34f267dff8b 100644
>>> --- a/src/intel/vulkan/anv_device.c
>>> +++ b/src/intel/vulkan/anv_device.c
>>> @@ -445,7 +445,7 @@ void anv_GetPhysicalDeviceFeatures(
>>>        .imageCubeArray                           = true,
>>>        .independentBlend                         = true,
>>>        .geometryShader                           = true,
>>> -      .tessellationShader                       = false,
>>> +      .tessellationShader                       = true,
>>>        .sampleRateShading                        = true,
>>>        .dualSrcBlend                             = true,
>>>        .logicOp                                  = true,
>>>
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
>



More information about the mesa-dev mailing list