<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Oct 12, 2017 at 11:38 AM, Jose Maria Casanova Crespo <span dir="ltr"><<a href="mailto:jmcasanova@igalia.com" target="_blank">jmcasanova@igalia.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">From: Alejandro Piñeiro <<a href="mailto:apinheiro@igalia.com">apinheiro@igalia.com</a>><br>
<br>
It uses VK_KHR_get_physical_device_<wbr>properties2 functionality to expose<br>
if the extension is supported or not.<br>
<br>
v2: update due rebase against master (Alejandro)<br>
<br>
Signed-off-by: Jose Maria Casanova Crespo <<a href="mailto:jmcasanova@igalia.com">jmcasanova@igalia.com</a>><br>
Signed-off-by: Alejandro Piñeiro <<a href="mailto:apinheiro@igalia.com">apinheiro@igalia.com</a><br>
---<br>
src/intel/vulkan/anv_device.c | 13 +++++++++++++<br>
src/intel/vulkan/anv_<wbr>extensions.py | 1 +<br>
2 files changed, 14 insertions(+)<br>
<br>
diff --git a/src/intel/vulkan/anv_device.<wbr>c b/src/intel/vulkan/anv_device.<wbr>c<br>
index 70db6f88be..44be45d37c 100644<br>
--- a/src/intel/vulkan/anv_device.<wbr>c<br>
+++ b/src/intel/vulkan/anv_device.<wbr>c<br>
@@ -710,6 +710,19 @@ void anv_<wbr>GetPhysicalDeviceFeatures2KHR(<br>
break;<br>
}<br>
<br>
+ case VK_STRUCTURE_TYPE_PHYSICAL_<wbr>DEVICE_16BIT_STORAGE_FEATURES_<wbr>KHR: {<br>
+ ANV_FROM_HANDLE(anv_physical_<wbr>device, pdevice, physicalDevice);<br>
+<br>
+ VkPhysicalDevice16BitStorageFe<wbr>aturesKHR *features =<br>
+ (<wbr>VkPhysicalDevice16BitStorageFe<wbr>aturesKHR *)ext;<br>
+<br>
+ features-><wbr>storageBuffer16BitAccess = pdevice->info.gen >= 8;<br>
+ features-><wbr>uniformAndStorageBuffer16BitAc<wbr>cess = pdevice->info.gen >= 8;<br>
+ features-><wbr>storagePushConstant16 = pdevice->info.gen >= 8;<br>
+ features->storageInputOutput16 = pdevice->info.gen >= 8;<br></blockquote><div><br></div><div>Would you mind breaking this patch up and moving it up in the series a bit? In particular, can we enable SSBO and UBO 16-bit storage early and enable push constants and inputs/outputs later on. From my reading of things, I think UBO and SSBO 16-bit storage is pretty close to ready but the others may take more review (I haven't read the input/output bits much yet).<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
+ break;<br>
+ }<br>
+<br>
default:<br>
anv_debug_ignored_stype(ext-><wbr>sType);<br>
break;<br>
diff --git a/src/intel/vulkan/anv_<wbr>extensions.py b/src/intel/vulkan/anv_<wbr>extensions.py<br>
index a828a668d6..714c034839 100644<br>
--- a/src/intel/vulkan/anv_<wbr>extensions.py<br>
+++ b/src/intel/vulkan/anv_<wbr>extensions.py<br>
@@ -50,6 +50,7 @@ class Extension:<br>
# the those extension strings, then tests dEQP-VK.api.info.instance.<wbr>extensions<br>
# and dEQP-VK.api.info.device fail due to the duplicated strings.<br>
EXTENSIONS = [<br>
+ Extension('VK_KHR_16bit_<wbr>storage', 1, True),<br></blockquote><div><br></div><div>We probably want to make this "device->info.gen >= 8" instead of "True"<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Extension('VK_KHR_bind_<wbr>memory2', 1, True),<br>
Extension('VK_KHR_dedicated_<wbr>allocation', 1, True),<br>
Extension('VK_KHR_descriptor_<wbr>update_template', 1, True),<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.13.6<br>
<br>
______________________________<wbr>_________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
</font></span></blockquote></div><br></div></div>