Mesa (master): android: enable VK_ANDROID_native_buffer
Module: Mesa Branch: master Commit: 63525ba730e3d8a466d7f6382a2b91f4c75dd171 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=63525ba730e3d8a466d7f6382a2b91f4c75dd171 Author: Tapani Pälli Date: Wed May 16 08:38:50 2018 +0300 android: enable VK_ANDROID_native_buffer Patch changes entrypoints generator to not skip this extension even though it is set as disabled in the xml. We also need compilation flag VK_USE_PLATFORM_ANDROID_KHR to be enabled. It looks like this extension got disabled in commit 69f447553c. v2: just remove the whole 'supported' attrib check + remove vk_icd.h compilation fix (fix in VulkanHeaders instead) Signed-off-by: Tapani Pälli Reviewed-by: Jason Ekstrand --- Android.common.mk | 1 + src/intel/vulkan/anv_entrypoints_gen.py | 3 --- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/Android.common.mk b/Android.common.mk index e8aed48c31..999e17789b 100644 --- a/Android.common.mk +++ b/Android.common.mk @@ -73,6 +73,7 @@ LOCAL_CFLAGS += \ -DHAVE_ENDIAN_H \ -DHAVE_ZLIB \ -DMAJOR_IN_SYSMACROS \ + -DVK_USE_PLATFORM_ANDROID_KHR \ -fvisibility=hidden \ -Wno-sign-compare diff --git a/src/intel/vulkan/anv_entrypoints_gen.py b/src/intel/vulkan/anv_entrypoints_gen.py index d603ac1b20..230671d36a 100644 --- a/src/intel/vulkan/anv_entrypoints_gen.py +++ b/src/intel/vulkan/anv_entrypoints_gen.py @@ -495,9 +495,6 @@ def get_entrypoints(doc, entrypoints_to_defines, start_index): if ext_name not in supported_exts: continue -if extension.attrib['supported'] != 'vulkan': -continue - ext = supported_exts[ext_name] ext.type = extension.attrib['type'] ___ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit
Mesa (master): vulkan: update vk_icd.h to current upstream
Module: Mesa Branch: master Commit: 437acae704337120c23a365b3d9aad92213cf500 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=437acae704337120c23a365b3d9aad92213cf500 Author: Tapani Pälli Date: Fri May 18 08:01:39 2018 +0300 vulkan: update vk_icd.h to current upstream Import from commit eb0c1fd on branch 'master' of https://github.com/KhronosGroup/Vulkan-Headers.git. Signed-off-by: Tapani Pälli Acked-by: Jason Ekstrand --- include/vulkan/vk_icd.h | 67 ++--- 1 file changed, 53 insertions(+), 14 deletions(-) diff --git a/include/vulkan/vk_icd.h b/include/vulkan/vk_icd.h index 7b54fb5774..b935fa1786 100644 --- a/include/vulkan/vk_icd.h +++ b/include/vulkan/vk_icd.h @@ -24,13 +24,34 @@ #define VKICD_H #include "vulkan.h" - -/* - * Loader-ICD version negotiation API - */ -#define CURRENT_LOADER_ICD_INTERFACE_VERSION 3 +#include + +// Loader-ICD version negotiation API. Versions add the following features: +// Version 0 - Initial. Doesn't support vk_icdGetInstanceProcAddr +// or vk_icdNegotiateLoaderICDInterfaceVersion. +// Version 1 - Add support for vk_icdGetInstanceProcAddr. +// Version 2 - Add Loader/ICD Interface version negotiation +// via vk_icdNegotiateLoaderICDInterfaceVersion. +// Version 3 - Add ICD creation/destruction of KHR_surface objects. +// Version 4 - Add unknown physical device extension qyering via +// vk_icdGetPhysicalDeviceProcAddr. +// Version 5 - Tells ICDs that the loader is now paying attention to the +// application version of Vulkan passed into the ApplicationInfo +// structure during vkCreateInstance. This will tell the ICD +// that if the loader is older, it should automatically fail a +// call for any API version > 1.0. Otherwise, the loader will +// manually determine if it can support the expected version. +#define CURRENT_LOADER_ICD_INTERFACE_VERSION 5 #define MIN_SUPPORTED_LOADER_ICD_INTERFACE_VERSION 0 -typedef VkResult (VKAPI_PTR *PFN_vkNegotiateLoaderICDInterfaceVersion)(uint32_t *pVersion); +#define MIN_PHYS_DEV_EXTENSION_ICD_INTERFACE_VERSION 4 +typedef VkResult(VKAPI_PTR *PFN_vkNegotiateLoaderICDInterfaceVersion)(uint32_t *pVersion); + +// This is defined in vk_layer.h which will be found by the loader, but if an ICD is building against this +// file directly, it won't be found. +#ifndef PFN_GetPhysicalDeviceProcAddr +typedef PFN_vkVoidFunction(VKAPI_PTR *PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char *pName); +#endif + /* * The ICD must reserve space for a pointer for the loader's dispatch * table, at the start of . @@ -64,6 +85,9 @@ typedef enum { VK_ICD_WSI_PLATFORM_WIN32, VK_ICD_WSI_PLATFORM_XCB, VK_ICD_WSI_PLATFORM_XLIB, +VK_ICD_WSI_PLATFORM_ANDROID, +VK_ICD_WSI_PLATFORM_MACOS, +VK_ICD_WSI_PLATFORM_IOS, VK_ICD_WSI_PLATFORM_DISPLAY } VkIcdWsiPlatform; @@ -77,7 +101,7 @@ typedef struct { MirConnection *connection; MirSurface *mirSurface; } VkIcdSurfaceMir; -#endif // VK_USE_PLATFORM_MIR_KHR +#endif // VK_USE_PLATFORM_MIR_KHR #ifdef VK_USE_PLATFORM_WAYLAND_KHR typedef struct { @@ -85,7 +109,7 @@ typedef struct { struct wl_display *display; struct wl_surface *surface; } VkIcdSurfaceWayland; -#endif // VK_USE_PLATFORM_WAYLAND_KHR +#endif // VK_USE_PLATFORM_WAYLAND_KHR #ifdef VK_USE_PLATFORM_WIN32_KHR typedef struct { @@ -93,7 +117,7 @@ typedef struct { HINSTANCE hinstance; HWND hwnd; } VkIcdSurfaceWin32; -#endif // VK_USE_PLATFORM_WIN32_KHR +#endif // VK_USE_PLATFORM_WIN32_KHR #ifdef VK_USE_PLATFORM_XCB_KHR typedef struct { @@ -101,7 +125,7 @@ typedef struct { xcb_connection_t *connection; xcb_window_t window; } VkIcdSurfaceXcb; -#endif // VK_USE_PLATFORM_XCB_KHR +#endif // VK_USE_PLATFORM_XCB_KHR #ifdef VK_USE_PLATFORM_XLIB_KHR typedef struct { @@ -109,13 +133,28 @@ typedef struct { Display *dpy; Window window; } VkIcdSurfaceXlib; -#endif // VK_USE_PLATFORM_XLIB_KHR +#endif // VK_USE_PLATFORM_XLIB_KHR #ifdef VK_USE_PLATFORM_ANDROID_KHR typedef struct { -ANativeWindow* window; +VkIcdSurfaceBase base; +struct ANativeWindow *window; } VkIcdSurfaceAndroid; -#endif //VK_USE_PLATFORM_ANDROID_KHR +#endif // VK_USE_PLATFORM_ANDROID_KHR + +#ifdef VK_USE_PLATFORM_MACOS_MVK +typedef struct { +VkIcdSurfaceBase base; +const void *pView; +} VkIcdSurfaceMacOS; +#endif // VK_USE_PLATFORM_MACOS_MVK + +#ifdef VK_USE_PLATFORM_IOS_MVK +typedef struct { +VkIcdSurfaceBase base; +const void *pView; +} VkIcdSurfaceIOS; +#endif // VK_USE_PLATFORM_IOS_MVK typedef struct { VkIcdSurfaceBase base; @@ -128,4 +167,4 @@ typedef struct { VkExtent2D imageExtent; } VkIcdSurfaceDisplay; -#endif // VKICD_H +#endif // VKICD_H ___ mesa-commit mailing list mesa-commit@lists.freedesk
Mesa (master): virgl: set texture buffer offset alignment to disable ARB_texture_buffer_range.
Module: Mesa Branch: master Commit: bfa74bb44ddf3e81dedf9af28f86110dfd47dc45 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bfa74bb44ddf3e81dedf9af28f86110dfd47dc45 Author: Dave Airlie Date: Fri May 18 10:44:27 2018 +1000 virgl: set texture buffer offset alignment to disable ARB_texture_buffer_range. The host side hasn't got support for this feature yet, so don't enable it unless we get the caps from the host. This makes the texture buffer range piglit tests skip now. Fixes: fe0647df5a7 (virgl: add offset alignment values to to v2 caps struct) Reviewed-by: Gurchetan Singh --- src/gallium/drivers/virgl/virgl_winsys.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/virgl/virgl_winsys.h b/src/gallium/drivers/virgl/virgl_winsys.h index 99e98ad9c9..690e610e19 100644 --- a/src/gallium/drivers/virgl/virgl_winsys.h +++ b/src/gallium/drivers/virgl/virgl_winsys.h @@ -132,7 +132,7 @@ static inline void virgl_ws_fill_new_caps_defaults(struct virgl_drm_caps *caps) caps->caps.v2.max_texel_offset = 7; caps->caps.v2.min_texture_gather_offset = -8; caps->caps.v2.max_texture_gather_offset = 7; - caps->caps.v2.texture_buffer_offset_alignment = 32; + caps->caps.v2.texture_buffer_offset_alignment = 0; caps->caps.v2.uniform_buffer_offset_alignment = 256; } #endif ___ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit
Mesa (master): mesa: stop hiding query parameters from OpenGL compat
Module: Mesa Branch: master Commit: 2e6c987a85f96dd96da17b50526e7c0cb5adb5f1 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2e6c987a85f96dd96da17b50526e7c0cb5adb5f1 Author: Timothy Arceri Date: Fri May 18 12:36:05 2018 +1000 mesa: stop hiding query parameters from OpenGL compat Just let the extension detection do its job as we will be adding compat profile support in future, also we want these to work with compat profile version overrides. Reviewed-by: Marek Olšák --- src/mesa/main/get_hash_params.py | 21 +++-- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/src/mesa/main/get_hash_params.py b/src/mesa/main/get_hash_params.py index 4bbda93b31..7e14cf51f5 100644 --- a/src/mesa/main/get_hash_params.py +++ b/src/mesa/main/get_hash_params.py @@ -451,6 +451,11 @@ descriptor=[ [ "MAX_WINDOW_RECTANGLES_EXT", "CONTEXT_INT(Const.MaxWindowRectangles), extra_EXT_window_rectangles" ], [ "NUM_WINDOW_RECTANGLES_EXT", "CONTEXT_INT(Scissor.NumWindowRects), extra_EXT_window_rectangles" ], [ "WINDOW_RECTANGLE_MODE_EXT", "CONTEXT_ENUM16(Scissor.WindowRectMode), extra_EXT_window_rectangles" ], + + # GL_ARB_gpu_shader5 / GL_OES_shader_multisample_interpolation + [ "MIN_FRAGMENT_INTERPOLATION_OFFSET", "CONTEXT_FLOAT(Const.MinFragmentInterpolationOffset), extra_ARB_gpu_shader5_or_OES_sample_variables" ], + [ "MAX_FRAGMENT_INTERPOLATION_OFFSET", "CONTEXT_FLOAT(Const.MaxFragmentInterpolationOffset), extra_ARB_gpu_shader5_or_OES_sample_variables" ], + [ "FRAGMENT_INTERPOLATION_OFFSET_BITS", "CONST(FRAGMENT_INTERPOLATION_OFFSET_BITS), extra_ARB_gpu_shader5_or_OES_sample_variables" ], ]}, { "apis": ["GLES", "GLES2"], "params": [ @@ -558,18 +563,7 @@ descriptor=[ # GL_NUM_SHADING_LANGUAGE_VERSIONS [ "NUM_SHADING_LANGUAGE_VERSIONS", "LOC_CUSTOM, TYPE_INT, 0, extra_version_43" ], -]}, -# Enums in OpenGL Core profile and ES 3.0 -{ "apis": ["GL_CORE", "GLES3"], "params": [ - # GL_ARB_gpu_shader5 / GL_OES_shader_multisample_interpolation - [ "MIN_FRAGMENT_INTERPOLATION_OFFSET", "CONTEXT_FLOAT(Const.MinFragmentInterpolationOffset), extra_ARB_gpu_shader5_or_OES_sample_variables" ], - [ "MAX_FRAGMENT_INTERPOLATION_OFFSET", "CONTEXT_FLOAT(Const.MaxFragmentInterpolationOffset), extra_ARB_gpu_shader5_or_OES_sample_variables" ], - [ "FRAGMENT_INTERPOLATION_OFFSET_BITS", "CONST(FRAGMENT_INTERPOLATION_OFFSET_BITS), extra_ARB_gpu_shader5_or_OES_sample_variables" ], -]}, - -# Enums in OpenGL Core profile and ES 3.1 -{ "apis": ["GL_CORE", "GLES31"], "params": [ # GL_ARB_draw_indirect / GLES 3.1 [ "DRAW_INDIRECT_BUFFER_BINDING", "LOC_CUSTOM, TYPE_INT, 0, extra_ARB_draw_indirect" ], @@ -650,12 +644,11 @@ descriptor=[ [ "CONSERVATIVE_RASTERIZATION_INTEL", "CONTEXT_BOOL(IntelConservativeRasterization), extra_INTEL_conservative_rasterization" ], ]}, -{ "apis": ["GL_CORE", "GLES32"], "params": [ +# Enums in OpenGL and ES 3.2 +{ "apis": ["GL", "GL_CORE", "GLES32"], "params": [ [ "MULTISAMPLE_LINE_WIDTH_RANGE_ARB", "CONTEXT_FLOAT2(Const.MinLineWidthAA), extra_ES32" ], [ "MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB", "CONTEXT_FLOAT(Const.LineWidthGranularity), extra_ES32" ], -]}, -{ "apis": ["GL", "GL_CORE", "GLES32"], "params": [ # GL 3.0 or ES 3.2 [ "CONTEXT_FLAGS", "CONTEXT_INT(Const.ContextFlags), extra_version_30" ], ]}, ___ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit
Mesa (master): radv: fix VK_EXT_descriptor_indexing
Module: Mesa Branch: master Commit: 549e54270ba3a519b46a1fbffa4aa6b628a052d3 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=549e54270ba3a519b46a1fbffa4aa6b628a052d3 Author: Christoph Haag Date: Sun May 20 13:21:13 2018 +0200 radv: fix VK_EXT_descriptor_indexing GetPhysicalDeviceProperties2KHR() was crashing because features was null Fixes: 0e10790558b "radv: Enable VK_EXT_descriptor_indexing." CC: 18.1 Reviewed-by: Bas Nieuwenhuizen --- src/amd/vulkan/radv_device.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index c52b3a591f..d6abab338e 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -731,7 +731,7 @@ void radv_GetPhysicalDeviceFeatures2( } case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT: { VkPhysicalDeviceDescriptorIndexingFeaturesEXT *features = - (VkPhysicalDeviceDescriptorIndexingFeaturesEXT*)features; + (VkPhysicalDeviceDescriptorIndexingFeaturesEXT*)ext; features->shaderInputAttachmentArrayDynamicIndexing = true; features->shaderUniformTexelBufferArrayDynamicIndexing = true; features->shaderStorageTexelBufferArrayDynamicIndexing = true; ___ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit
Mesa (master): ac/surface: Only align linear power of two fmt textures.
Module: Mesa Branch: master Commit: a1c87235a9d077b32094725ad7ea3b9919743c9f URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a1c87235a9d077b32094725ad7ea3b9919743c9f Author: Bas Nieuwenhuizen Date: Sat May 19 01:03:57 2018 +0200 ac/surface: Only align linear power of two fmt textures. We're not sharing 32_32_32 formats between different GPUs, so we do not have to align for vega on pre-vega cards. Fixes: e361970ed73 "radv: Add support for IMG_DATA_FORMAT_32_32_32." Reviewed-by: Marek Olšák --- src/amd/common/ac_surface.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/amd/common/ac_surface.c b/src/amd/common/ac_surface.c index 9e742dc8a4..d7da995025 100644 --- a/src/amd/common/ac_surface.c +++ b/src/amd/common/ac_surface.c @@ -301,10 +301,10 @@ static int gfx6_compute_level(ADDR_HANDLE addrlib, */ if (config->info.levels == 1 && AddrSurfInfoIn->tileMode == ADDR_TM_LINEAR_ALIGNED && - AddrSurfInfoIn->bpp) { + AddrSurfInfoIn->bpp && + util_is_power_of_two_or_zero(AddrSurfInfoIn->bpp)) { unsigned alignment = 256 / (AddrSurfInfoIn->bpp / 8); - assert(util_is_power_of_two_or_zero(AddrSurfInfoIn->bpp)); AddrSurfInfoIn->width = align(AddrSurfInfoIn->width, alignment); } ___ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit
Mesa (master): amd/addrlib: Use defines in autotools build.
Module: Mesa Branch: master Commit: 62e0e089d710835d9f79138377bcc37147f75ebd URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=62e0e089d710835d9f79138377bcc37147f75ebd Author: Bas Nieuwenhuizen Date: Mon May 14 17:38:36 2018 +0200 amd/addrlib: Use defines in autotools build. Otherwise stuff like NDEBUG would not be passed through. CC: Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106479 Reviewed-by: Marek Olšák --- src/amd/Makefile.addrlib.am | 1 + 1 file changed, 1 insertion(+) diff --git a/src/amd/Makefile.addrlib.am b/src/amd/Makefile.addrlib.am index 322a5c8697..75ff7fbcf7 100644 --- a/src/amd/Makefile.addrlib.am +++ b/src/amd/Makefile.addrlib.am @@ -22,6 +22,7 @@ ADDRLIB_LIBS = addrlib/libamdgpu_addrlib.la addrlib_libamdgpu_addrlib_la_CPPFLAGS = \ + $(DEFINES) \ -I$(top_srcdir)/src/ \ -I$(srcdir)/common \ -I$(srcdir)/addrlib \ ___ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit