vulkan: Update from version 0.206.0 to 0.209.0

Change-Id: Ieaf1c4c01f3376cde407bef193a9aa33e77ca123
(cherry picked from commit 91b3c3599ea5095388c4bdeb14f09529f3fbb9cc)
diff --git a/vulkan/libvulkan/entry.cpp b/vulkan/libvulkan/entry.cpp
index 67b8c38..9c0444f 100644
--- a/vulkan/libvulkan/entry.cpp
+++ b/vulkan/libvulkan/entry.cpp
@@ -702,8 +702,8 @@
 }
 
 __attribute__((visibility("default")))
-VKAPI_ATTR void vkCmdPushConstants(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* values) {
-    GetVtbl(commandBuffer).CmdPushConstants(commandBuffer, layout, stageFlags, offset, size, values);
+VKAPI_ATTR void vkCmdPushConstants(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* pValues) {
+    GetVtbl(commandBuffer).CmdPushConstants(commandBuffer, layout, stageFlags, offset, size, pValues);
 }
 
 __attribute__((visibility("default")))
@@ -772,7 +772,7 @@
 }
 
 __attribute__((visibility("default")))
-VKAPI_ATTR VkResult vkQueuePresentKHR(VkQueue queue, VkPresentInfoKHR* pPresentInfo) {
+VKAPI_ATTR VkResult vkQueuePresentKHR(VkQueue queue, const VkPresentInfoKHR* pPresentInfo) {
     return GetVtbl(queue).QueuePresentKHR(queue, pPresentInfo);
 }
 
diff --git a/vulkan/libvulkan/loader.h b/vulkan/libvulkan/loader.h
index 35d0eaa..1f777fc 100644
--- a/vulkan/libvulkan/loader.h
+++ b/vulkan/libvulkan/loader.h
@@ -305,7 +305,7 @@
                                         VkSemaphore semaphore,
                                         uint32_t* image_index);
 VKAPI_ATTR VkResult
-QueuePresentKHR(VkQueue queue, VkPresentInfoKHR* present_info);
+QueuePresentKHR(VkQueue queue, const VkPresentInfoKHR* present_info);
 
 }  // namespace vulkan
 
diff --git a/vulkan/libvulkan/swapchain.cpp b/vulkan/libvulkan/swapchain.cpp
index ff02b35..39a581c 100644
--- a/vulkan/libvulkan/swapchain.cpp
+++ b/vulkan/libvulkan/swapchain.cpp
@@ -230,9 +230,9 @@
     capabilities->supportedTransforms = VK_SURFACE_TRANSFORM_NONE_BIT_KHR;
 
     // TODO(jessehall): Implement based on NATIVE_WINDOW_TRANSFORM_HINT.
-    capabilities->currentTransform = VK_SURFACE_TRANSFORM_NONE_KHR;
+    capabilities->currentTransform = VK_SURFACE_TRANSFORM_NONE_BIT_KHR;
 
-    capabilities->maxImageArraySize = 1;
+    capabilities->maxImageArrayLayers = 1;
 
     // TODO(jessehall): I think these are right, but haven't thought hard about
     // it. Do we need to query the driver for support of any of these?
@@ -314,7 +314,7 @@
              "color spaces other than SRGB_NONLINEAR not yet implemented");
     ALOGE_IF(create_info->oldSwapchain,
              "swapchain re-creation not yet implemented");
-    ALOGE_IF(create_info->preTransform != VK_SURFACE_TRANSFORM_NONE_KHR,
+    ALOGE_IF(create_info->preTransform != VK_SURFACE_TRANSFORM_NONE_BIT_KHR,
              "swapchain preTransform not yet implemented");
     ALOGE_IF(create_info->presentMode != VK_PRESENT_MODE_FIFO_KHR,
              "present modes other than FIFO are not yet implemented");
@@ -371,7 +371,7 @@
     // TODO(jessehall): Remove conditional once all drivers have been updated
     if (driver_vtbl.GetSwapchainGrallocUsageANDROID) {
         result = driver_vtbl.GetSwapchainGrallocUsageANDROID(
-            device, create_info->imageFormat, create_info->imageUsageFlags,
+            device, create_info->imageFormat, create_info->imageUsage,
             &gralloc_usage);
         if (result != VK_SUCCESS) {
             ALOGE("vkGetSwapchainGrallocUsageANDROID failed: %d", result);
@@ -418,9 +418,9 @@
         .arrayLayers = 1,
         .samples = VK_SAMPLE_COUNT_1_BIT,
         .tiling = VK_IMAGE_TILING_OPTIMAL,
-        .usage = create_info->imageUsageFlags,
+        .usage = create_info->imageUsage,
         .flags = 0,
-        .sharingMode = create_info->sharingMode,
+        .sharingMode = create_info->imageSharingMode,
         .queueFamilyIndexCount = create_info->queueFamilyIndexCount,
         .pQueueFamilyIndices = create_info->pQueueFamilyIndices,
     };
@@ -612,7 +612,7 @@
 }
 
 VKAPI_ATTR
-VkResult QueuePresentKHR(VkQueue queue, VkPresentInfoKHR* present_info) {
+VkResult QueuePresentKHR(VkQueue queue, const VkPresentInfoKHR* present_info) {
     ALOGV_IF(present_info->sType != VK_STRUCTURE_TYPE_PRESENT_INFO_KHR,
              "vkQueuePresentKHR: invalid VkPresentInfoKHR structure type %d",
              present_info->sType);
@@ -624,7 +624,7 @@
         Swapchain& swapchain =
             *SwapchainFromHandle(present_info->pSwapchains[sc]);
         ANativeWindow* window = swapchain.surface.window.get();
-        uint32_t image_idx = present_info->imageIndices[sc];
+        uint32_t image_idx = present_info->pImageIndices[sc];
         Swapchain::Image& img = swapchain.images[image_idx];
         VkResult result;
         int err;