Re: [Mesa-dev] [PATCH] docs: Add Vulkan to features.txt

2017-08-01 Thread Jason Ekstrand
On Tue, Aug 1, 2017 at 4:29 AM, Bas Nieuwenhuizen 
wrote:

> On Tue, Aug 1, 2017 at 1:27 AM, Jordan Justen 
> wrote:
> > On 2017-07-31 16:08:51, Bas Nieuwenhuizen wrote:
> >> On Tue, Aug 1, 2017 at 12:32 AM, Jordan Justen
> >> > +Vulkan 1.0 -- all DONE: anv
> >>
> >> So while we don't have conformance, we have at several times had local
> >> conformance suite runs pass all tests, so I think we can write up radv
> >> as all done here too?
> >
> > Ok, I can add radv here if you recommend it.
> >
> >> > +
> >> > +Khronos and EXT extensions that are not part of any Vulkan version:
> >> > +  VK_EXT_acquire_xlib_display   not started
> >> > +  VK_EXT_blend_operation_advanced   not started
> >> > +  VK_EXT_debug_marker   not started
> >>
> >> Do we even want to implement this as driver, or let this be for the
> layers?
> >
> > I just used grep to find the extensions. If the consensus is to drop
> > this, I can do that.
>
> So the question here is do we want to have a generic list of supported
> features or more like a TODO list. if its the former, adding it would
> be ok, if its the latter I'd think adding this (and the win32 exts are
> for mesa also unlikely) extension to the list would be kind of
> misleading.
>

That's a very good question.  Here's what I see in GL and I think it's
probably reasonable:

 1) There is a section for each OpenGL version 3.0 and above with what
extensions are required by that version.  We only have Vulkan 1.0 today but
I'm sure new versions are coming.

 2) Theree is a section for all KHR, ARB, and OES extensions not yet tied
to any particular OpenGL version

 3) The only EXTs listed are those which got promoted directly to core
without going through ARB first.  There are not many of these but they
happen.  Mesa supports piles of EXTs which are not in features.txt.

I think we should follow a similar pattern.  I really don't want this to
come back and bite us.  Lists of features have this nasty tendency to turn
into ToDo lists.


> >
> >> > +  VK_KHX_multiview  DONE (anv)
>

I'd be a fan of not listing KHX extensions in features.txt.  They're
experimental and guaranteed just to go away at some point.


> >> I started this one for radv too, not sure if we put those in if one
> >> driver already has them though.
> >
> > Based on GL, I don't think we have a way to indicate that it is
> > started for another driver after one has completed it. Do you have a
> > recommendation?
>
> If GL doesn't do it, lets leave it alone for vulkan.
>
> >
> > Side note: Looking at the header of the file, it looks like I should
> > use 'in progress' rather than 'started'.
> >
> >> btw, no vendor extensions?
> >
> > Looking at the 'Khronos, ARB, and OES extensions that are not part of
> > any OpenGL or OpenGL ES version' section, it doesn't seem to include
> > vendor extensions. I did see a few 'NV' extensions in other sections
> > of the file, but I think in those cases they were rolled into the core
> > versions.
> >
> > Should we add another section for extensions that at least 1 driver
> > has implemented or started to implement?
>
> I think that would be nice as some of the AMD/NV exts seem to be
> implementable cross-vendor. Not a blocker though for adding this.
> >
> > -Jordan
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH] docs: Add Vulkan to features.txt

2017-08-01 Thread Bas Nieuwenhuizen
On Tue, Aug 1, 2017 at 1:27 AM, Jordan Justen  wrote:
> On 2017-07-31 16:08:51, Bas Nieuwenhuizen wrote:
>> On Tue, Aug 1, 2017 at 12:32 AM, Jordan Justen
>> > +Vulkan 1.0 -- all DONE: anv
>>
>> So while we don't have conformance, we have at several times had local
>> conformance suite runs pass all tests, so I think we can write up radv
>> as all done here too?
>
> Ok, I can add radv here if you recommend it.
>
>> > +
>> > +Khronos and EXT extensions that are not part of any Vulkan version:
>> > +  VK_EXT_acquire_xlib_display   not started
>> > +  VK_EXT_blend_operation_advanced   not started
>> > +  VK_EXT_debug_marker   not started
>>
>> Do we even want to implement this as driver, or let this be for the layers?
>
> I just used grep to find the extensions. If the consensus is to drop
> this, I can do that.

So the question here is do we want to have a generic list of supported
features or more like a TODO list. if its the former, adding it would
be ok, if its the latter I'd think adding this (and the win32 exts are
for mesa also unlikely) extension to the list would be kind of
misleading.

>
>> > +  VK_KHX_multiview  DONE (anv)
>>
>> I started this one for radv too, not sure if we put those in if one
>> driver already has them though.
>
> Based on GL, I don't think we have a way to indicate that it is
> started for another driver after one has completed it. Do you have a
> recommendation?

If GL doesn't do it, lets leave it alone for vulkan.

>
> Side note: Looking at the header of the file, it looks like I should
> use 'in progress' rather than 'started'.
>
>> btw, no vendor extensions?
>
> Looking at the 'Khronos, ARB, and OES extensions that are not part of
> any OpenGL or OpenGL ES version' section, it doesn't seem to include
> vendor extensions. I did see a few 'NV' extensions in other sections
> of the file, but I think in those cases they were rolled into the core
> versions.
>
> Should we add another section for extensions that at least 1 driver
> has implemented or started to implement?

I think that would be nice as some of the AMD/NV exts seem to be
implementable cross-vendor. Not a blocker though for adding this.
>
> -Jordan
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH] docs: Add Vulkan to features.txt

2017-07-31 Thread Jordan Justen
On 2017-07-31 16:08:51, Bas Nieuwenhuizen wrote:
> On Tue, Aug 1, 2017 at 12:32 AM, Jordan Justen
> > +Vulkan 1.0 -- all DONE: anv
> 
> So while we don't have conformance, we have at several times had local
> conformance suite runs pass all tests, so I think we can write up radv
> as all done here too?

Ok, I can add radv here if you recommend it.

> > +
> > +Khronos and EXT extensions that are not part of any Vulkan version:
> > +  VK_EXT_acquire_xlib_display   not started
> > +  VK_EXT_blend_operation_advanced   not started
> > +  VK_EXT_debug_marker   not started
> 
> Do we even want to implement this as driver, or let this be for the layers?

I just used grep to find the extensions. If the consensus is to drop
this, I can do that.

> > +  VK_KHX_multiview  DONE (anv)
> 
> I started this one for radv too, not sure if we put those in if one
> driver already has them though.

Based on GL, I don't think we have a way to indicate that it is
started for another driver after one has completed it. Do you have a
recommendation?

Side note: Looking at the header of the file, it looks like I should
use 'in progress' rather than 'started'.

> btw, no vendor extensions?

Looking at the 'Khronos, ARB, and OES extensions that are not part of
any OpenGL or OpenGL ES version' section, it doesn't seem to include
vendor extensions. I did see a few 'NV' extensions in other sections
of the file, but I think in those cases they were rolled into the core
versions.

Should we add another section for extensions that at least 1 driver
has implemented or started to implement?

-Jordan
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH] docs: Add Vulkan to features.txt

2017-07-31 Thread Bas Nieuwenhuizen
On Tue, Aug 1, 2017 at 12:32 AM, Jordan Justen
 wrote:
> To get the extension list:
>
> $ git grep -hE "extension name=\"VK_(EXT|KHR|KHX)" src/vulkan/registry/vk.xml 
> | \
>   grep -v disabled | awk '{print $2}' | sed -E 's/(name=)?"//g' | sort
>
> To find anv(il) and radv supported extensions:
>
> $ git grep -hE "'VK_([A-Z]+)_[a-z]" src/intel/
>
> $ git grep -hE "'VK_([A-Z]+)_[a-z]" src/amd/
>
> Signed-off-by: Jordan Justen 
> Cc: Jason Ekstrand 
> Cc: Dave Airlie 
> ---
>  docs/features.txt | 58 
> +++
>  1 file changed, 58 insertions(+)
>
> diff --git a/docs/features.txt b/docs/features.txt
> index 1f628e1c030..5ec1591540a 100644
> --- a/docs/features.txt
> +++ b/docs/features.txt
> @@ -333,6 +333,64 @@ we DO NOT WANT implementations of these extensions for 
> Mesa.
>GL_ARB_shadow_ambient Superseded by 
> GL_ARB_fragment_program
>GL_ARB_vertex_blend   Superseded by 
> GL_ARB_vertex_program
>
> +Vulkan 1.0 -- all DONE: anv

So while we don't have conformance, we have at several times had local
conformance suite runs pass all tests, so I think we can write up radv
as all done here too?
> +
> +Khronos and EXT extensions that are not part of any Vulkan version:
> +  VK_EXT_acquire_xlib_display   not started
> +  VK_EXT_blend_operation_advanced   not started
> +  VK_EXT_debug_marker   not started

Do we even want to implement this as driver, or let this be for the layers?

> +  VK_EXT_debug_report   not started
> +  VK_EXT_direct_mode_displaynot started
> +  VK_EXT_discard_rectangles not started
> +  VK_EXT_display_controlnot started
> +  VK_EXT_display_surface_counternot started
> +  VK_EXT_hdr_metadata   not started
> +  VK_EXT_sampler_filter_minmax  not started
> +  VK_EXT_shader_subgroup_ballot not started
> +  VK_EXT_shader_subgroup_vote   not started
> +  VK_EXT_swapchain_colorspace   not started
> +  VK_EXT_validation_flags   not started
> +  VK_KHR_16bit_storage  started (Alejandro)
> +  VK_KHR_android_surfacenot started
> +  VK_KHR_dedicated_allocation   DONE (anv, radv)
> +  VK_KHR_descriptor_update_template DONE (anv, radv)
> +  VK_KHR_displaynot started
> +  VK_KHR_display_swapchain  not started
> +  VK_KHR_external_fence not started
> +  VK_KHR_external_fence_capabilitiesnot started
> +  VK_KHR_external_fence_fd  not started
> +  VK_KHR_external_fence_win32   not started
> +  VK_KHR_external_memoryDONE (anv, radv)
> +  VK_KHR_external_memory_capabilities   DONE (anv, radv)
> +  VK_KHR_external_memory_fd DONE (anv, radv)
> +  VK_KHR_external_memory_win32  not started
> +  VK_KHR_external_semaphore DONE (radv)
> +  VK_KHR_external_semaphore_capabilitiesDONE (radv)
> +  VK_KHR_external_semaphore_fd  DONE (radv)
> +  VK_KHR_external_semaphore_win32   not started
> +  VK_KHR_get_memory_requirements2   DONE (anv, radv)
> +  VK_KHR_get_physical_device_properties2DONE (anv, radv)
> +  VK_KHR_get_surface_capabilities2  DONE (anv)
> +  VK_KHR_incremental_presentDONE (anv, radv)
> +  VK_KHR_maintenance1   DONE (anv, radv)
> +  VK_KHR_mir_surfacenot started
> +  VK_KHR_push_descriptorDONE (anv, radv)
> +  VK_KHR_sampler_mirror_clamp_to_edge   DONE (anv, radv)
> +  VK_KHR_shader_draw_parameters DONE (anv, radv)
> +  VK_KHR_shared_presentable_image   not started
> +  VK_KHR_storage_buffer_storage_class   DONE (anv, radv)
> +  VK_KHR_surfaceDONE (anv, radv)
> +  VK_KHR_swapchain  DONE (anv, radv)
> +  VK_KHR_variable_pointers  DONE (anv, radv)
> +  VK_KHR_wayland_surfaceDONE (anv, radv)
> +  VK_KHR_win32_keyed_mutex  not started
> +  

Re: [Mesa-dev] [PATCH] docs: Add Vulkan to features.txt

2017-07-31 Thread Connor Abbott
On Mon, Jul 31, 2017 at 3:32 PM, Jordan Justen
 wrote:
> To get the extension list:
>
> $ git grep -hE "extension name=\"VK_(EXT|KHR|KHX)" src/vulkan/registry/vk.xml 
> | \
>   grep -v disabled | awk '{print $2}' | sed -E 's/(name=)?"//g' | sort
>
> To find anv(il) and radv supported extensions:
>
> $ git grep -hE "'VK_([A-Z]+)_[a-z]" src/intel/
>
> $ git grep -hE "'VK_([A-Z]+)_[a-z]" src/amd/
>
> Signed-off-by: Jordan Justen 
> Cc: Jason Ekstrand 
> Cc: Dave Airlie 
> ---
>  docs/features.txt | 58 
> +++
>  1 file changed, 58 insertions(+)
>
> diff --git a/docs/features.txt b/docs/features.txt
> index 1f628e1c030..5ec1591540a 100644
> --- a/docs/features.txt
> +++ b/docs/features.txt
> @@ -333,6 +333,64 @@ we DO NOT WANT implementations of these extensions for 
> Mesa.
>GL_ARB_shadow_ambient Superseded by 
> GL_ARB_fragment_program
>GL_ARB_vertex_blend   Superseded by 
> GL_ARB_vertex_program
>
> +Vulkan 1.0 -- all DONE: anv
> +
> +Khronos and EXT extensions that are not part of any Vulkan version:
> +  VK_EXT_acquire_xlib_display   not started
> +  VK_EXT_blend_operation_advanced   not started
> +  VK_EXT_debug_marker   not started
> +  VK_EXT_debug_report   not started
> +  VK_EXT_direct_mode_displaynot started
> +  VK_EXT_discard_rectangles not started
> +  VK_EXT_display_controlnot started
> +  VK_EXT_display_surface_counternot started
> +  VK_EXT_hdr_metadata   not started
> +  VK_EXT_sampler_filter_minmax  not started
> +  VK_EXT_shader_subgroup_ballot not started
> +  VK_EXT_shader_subgroup_vote   not started

I'm about to send out an updated series for these two, so you can mark
them as started. My series only enables them for radv, but they should
be trivial to enable for anv after my series too.

> +  VK_EXT_swapchain_colorspace   not started
> +  VK_EXT_validation_flags   not started
> +  VK_KHR_16bit_storage  started (Alejandro)
> +  VK_KHR_android_surfacenot started
> +  VK_KHR_dedicated_allocation   DONE (anv, radv)
> +  VK_KHR_descriptor_update_template DONE (anv, radv)
> +  VK_KHR_displaynot started
> +  VK_KHR_display_swapchain  not started
> +  VK_KHR_external_fence not started
> +  VK_KHR_external_fence_capabilitiesnot started
> +  VK_KHR_external_fence_fd  not started
> +  VK_KHR_external_fence_win32   not started
> +  VK_KHR_external_memoryDONE (anv, radv)
> +  VK_KHR_external_memory_capabilities   DONE (anv, radv)
> +  VK_KHR_external_memory_fd DONE (anv, radv)
> +  VK_KHR_external_memory_win32  not started
> +  VK_KHR_external_semaphore DONE (radv)
> +  VK_KHR_external_semaphore_capabilitiesDONE (radv)
> +  VK_KHR_external_semaphore_fd  DONE (radv)
> +  VK_KHR_external_semaphore_win32   not started
> +  VK_KHR_get_memory_requirements2   DONE (anv, radv)
> +  VK_KHR_get_physical_device_properties2DONE (anv, radv)
> +  VK_KHR_get_surface_capabilities2  DONE (anv)
> +  VK_KHR_incremental_presentDONE (anv, radv)
> +  VK_KHR_maintenance1   DONE (anv, radv)
> +  VK_KHR_mir_surfacenot started
> +  VK_KHR_push_descriptorDONE (anv, radv)
> +  VK_KHR_sampler_mirror_clamp_to_edge   DONE (anv, radv)
> +  VK_KHR_shader_draw_parameters DONE (anv, radv)
> +  VK_KHR_shared_presentable_image   not started
> +  VK_KHR_storage_buffer_storage_class   DONE (anv, radv)
> +  VK_KHR_surfaceDONE (anv, radv)
> +  VK_KHR_swapchain  DONE (anv, radv)
> +  VK_KHR_variable_pointers  DONE (anv, radv)
> +  VK_KHR_wayland_surfaceDONE (anv, radv)
> +  VK_KHR_win32_keyed_mutex  not started
> +  VK_KHR_win32_surface  not 

[Mesa-dev] [PATCH] docs: Add Vulkan to features.txt

2017-07-31 Thread Jordan Justen
To get the extension list:

$ git grep -hE "extension name=\"VK_(EXT|KHR|KHX)" src/vulkan/registry/vk.xml | 
\
  grep -v disabled | awk '{print $2}' | sed -E 's/(name=)?"//g' | sort

To find anv(il) and radv supported extensions:

$ git grep -hE "'VK_([A-Z]+)_[a-z]" src/intel/

$ git grep -hE "'VK_([A-Z]+)_[a-z]" src/amd/

Signed-off-by: Jordan Justen 
Cc: Jason Ekstrand 
Cc: Dave Airlie 
---
 docs/features.txt | 58 +++
 1 file changed, 58 insertions(+)

diff --git a/docs/features.txt b/docs/features.txt
index 1f628e1c030..5ec1591540a 100644
--- a/docs/features.txt
+++ b/docs/features.txt
@@ -333,6 +333,64 @@ we DO NOT WANT implementations of these extensions for 
Mesa.
   GL_ARB_shadow_ambient Superseded by 
GL_ARB_fragment_program
   GL_ARB_vertex_blend   Superseded by 
GL_ARB_vertex_program
 
+Vulkan 1.0 -- all DONE: anv
+
+Khronos and EXT extensions that are not part of any Vulkan version:
+  VK_EXT_acquire_xlib_display   not started
+  VK_EXT_blend_operation_advanced   not started
+  VK_EXT_debug_marker   not started
+  VK_EXT_debug_report   not started
+  VK_EXT_direct_mode_displaynot started
+  VK_EXT_discard_rectangles not started
+  VK_EXT_display_controlnot started
+  VK_EXT_display_surface_counternot started
+  VK_EXT_hdr_metadata   not started
+  VK_EXT_sampler_filter_minmax  not started
+  VK_EXT_shader_subgroup_ballot not started
+  VK_EXT_shader_subgroup_vote   not started
+  VK_EXT_swapchain_colorspace   not started
+  VK_EXT_validation_flags   not started
+  VK_KHR_16bit_storage  started (Alejandro)
+  VK_KHR_android_surfacenot started
+  VK_KHR_dedicated_allocation   DONE (anv, radv)
+  VK_KHR_descriptor_update_template DONE (anv, radv)
+  VK_KHR_displaynot started
+  VK_KHR_display_swapchain  not started
+  VK_KHR_external_fence not started
+  VK_KHR_external_fence_capabilitiesnot started
+  VK_KHR_external_fence_fd  not started
+  VK_KHR_external_fence_win32   not started
+  VK_KHR_external_memoryDONE (anv, radv)
+  VK_KHR_external_memory_capabilities   DONE (anv, radv)
+  VK_KHR_external_memory_fd DONE (anv, radv)
+  VK_KHR_external_memory_win32  not started
+  VK_KHR_external_semaphore DONE (radv)
+  VK_KHR_external_semaphore_capabilitiesDONE (radv)
+  VK_KHR_external_semaphore_fd  DONE (radv)
+  VK_KHR_external_semaphore_win32   not started
+  VK_KHR_get_memory_requirements2   DONE (anv, radv)
+  VK_KHR_get_physical_device_properties2DONE (anv, radv)
+  VK_KHR_get_surface_capabilities2  DONE (anv)
+  VK_KHR_incremental_presentDONE (anv, radv)
+  VK_KHR_maintenance1   DONE (anv, radv)
+  VK_KHR_mir_surfacenot started
+  VK_KHR_push_descriptorDONE (anv, radv)
+  VK_KHR_sampler_mirror_clamp_to_edge   DONE (anv, radv)
+  VK_KHR_shader_draw_parameters DONE (anv, radv)
+  VK_KHR_shared_presentable_image   not started
+  VK_KHR_storage_buffer_storage_class   DONE (anv, radv)
+  VK_KHR_surfaceDONE (anv, radv)
+  VK_KHR_swapchain  DONE (anv, radv)
+  VK_KHR_variable_pointers  DONE (anv, radv)
+  VK_KHR_wayland_surfaceDONE (anv, radv)
+  VK_KHR_win32_keyed_mutex  not started
+  VK_KHR_win32_surface  not started
+  VK_KHR_xcb_surfaceDONE (anv, radv)
+  VK_KHR_xlib_surface   DONE (anv, radv)
+  VK_KHX_device_group   not started
+  VK_KHX_device_group_creation  not started
+  VK_KHX_multiview  DONE (anv)
+
 
 A graphical representation of this information can be found at