summaryrefslogtreecommitdiff
path: root/vulkan/scripts
Commit message (Collapse)AuthorAgeFilesLines
* Add swapchainImageUsage to VkGrallocUsageInfo2Trevor David Black2023-08-031-0/+1
| | | | | | Bug: 288286529 Test: Build Change-Id: I8091d9c4db11394b85ceb1d266f97d35a00cc246
* Revert "Revert "Reland: "libvulkan: Implement EXT_swapchain_maintenance1""""Chris Forbes2022-12-281-0/+6
| | | | | | | | This reverts commit 334a4105c8d52848c48c4c843a33522423010c4c. Reason for revert: all failures tracked to original CL, not the reland. No issues seen now in manual hwasan tests. Change-Id: Icd2f12f18b5f1a77237703983e11bced16cb8865
* Revert "Reland: "libvulkan: Implement EXT_swapchain_maintenance1"""Ian Elliott2022-12-221-6/+0
| | | | | | | | This reverts commit 2dcb4f0064d3d6a01105d2c8a12368c347d85227. Reason for revert: Appears to cause HWASAN failures. See b/263442454, b/263446408, b/263444233, and b/263445588. Change-Id: I6de0027ae2db803445a66de575dda97826b8eb6a
* Reland: "libvulkan: Implement EXT_swapchain_maintenance1""Chris Forbes2022-12-221-0/+6
| | | | | | | | | | This reverts commit ac40c1e284453e10a7c2b6f2c6090fc4be322398 and incorporates a fix for the memory corruption that caused us to revert it initially. Bug: b/255376900 Change-Id: I3d8ab1977ea705bebdb8cd2c69d39f06ab5c4158
* Revert "libvulkan: Implement EXT_swapchain_maintenance1"Ian Elliott2022-12-211-6/+0
| | | | | | | | This reverts commit 08c7bb1fdb33d6ad34ba1b2de3ac0579750456fe. Reason for revert: Possibly the cause of b/263412882 (will revert and see if that clears up the problem) Change-Id: If217e36c67fcea8b5270dbf20b0c13c42d1da09a
* libvulkan: Implement EXT_swapchain_maintenance1Chris Forbes2022-12-211-0/+6
| | | | | | | | | | | | | The loader now implements EXT_swapchain_maintenance1 and EXT_surface_maintenance1, which fix assorted issues with the original swapchain extension. Our implementation of EXT_swapchain_maintenance1 is conditional on the underlying driver having support for importing sync fds as external fences (which requires Vulkan 1.1 + support for VK_KHR_external_fence_fd). Bug: b/255376900 Change-Id: I72ce770a7296e4e97cccf13bad420aa5a1001a6a
* Vulkan loader changes to support VK_EXT_image_compression_controlTrevor David Black2022-11-161-0/+1
| | | | | | Bug: 218365766 Test: Build Change-Id: I91cddbee0daac27d838e6201ba63c51a5158412c
* swapchain: Implement VK_KHR_surface_protected_capabilitiesIan Elliott2022-03-161-0/+1
| | | | | | | | | This version tries to address some subtle differences between upstream and downstream branches. Bug: 221490496 Test: Test with ANGLE EGLConfig-generation code Change-Id: I750f052e3560e76b2035ed3c92a3ec38745b9ef4
* swapchain: Implement VK_GOOGLE_surfaceless_queryIan Elliott2022-03-161-0/+1
| | | | | | | | | | | | This extension allows ANGLE to call Vulkan WSI queries before it has a VkSurfaceKHR. This version tries to address some subtle differences between upstream and downstream branches. Bug: 203826952 Test: Test with ANGLE EGLConfig-generation code Change-Id: I7eb013efbaa5dd19ebed045583616238cea57023
* Revert "swapchain: Implement VK_GOOGLE_surfaceless_query"Ian Elliott2022-03-151-1/+0
| | | | | | | | | | | | In order to help the automerger get this everywhere, am reverting it here, and then will land it in AOSP master (which will automerge here again). This reverts commit 8e0f12163f90a1a511625ba1f290de95777beb86. Test: Manual inspection Bug: 203826952 Change-Id: I227993c87b1601b8dc0d1cf4bb008d5af9abc930
* Revert "swapchain: Implement VK_KHR_surface_protected_capabilities"Ian Elliott2022-03-141-1/+0
| | | | | | | | | | | | In order to help the automerger get this everywhere, am reverting it here, and then will land it in AOSP master (which will automerge here again). This reverts commit a9e06fd447e8ebf22b2dd025d6ee1aa3f93b2bc1. Test: Manual Inspection Bug: 221490496 Change-Id: I21dcc2ab87d34b2366d32d06b910c88400c5f70d
* swapchain: Implement VK_KHR_surface_protected_capabilitiesIan Elliott2022-03-011-0/+1
| | | | | | Bug: 221490496 Test: Test with ANGLE EGLConfig-generation code Change-Id: Id01e677175a2cf98f4d893e21f3c654375772153
* swapchain: Implement VK_GOOGLE_surfaceless_queryIan Elliott2022-03-011-0/+1
| | | | | | | | | This extension allows ANGLE to call Vulkan WSI queries before it has a VkSurfaceKHR. Bug: 203826952 Test: Test with ANGLE EGLConfig-generation code Change-Id: I7e53a8a28157023658baac0778033159bdd2285e
* Vulkan: update the loader for vulkan-headers v1.2.183Trevor David Black2021-06-281-0/+3
| | | | | | Bug: 192288751 Test: build Change-Id: Icee2374114f14285c6e522c0ccfbf106390a8fa3
* Merge changes from topic "vulkan-header-1.2.158" am: 373e4fd03e am: ↵Treehugger Robot2020-10-231-7/+7
|\ | | | | | | | | | | | | | | 64f80d1b45 am: b932d1c701 am: fa5109f4cd Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1465688 Change-Id: Ib518ffa5be638239f8d3655c8e3e6194e93cce9b
| * Vulkan: update the loader for vulkan-headers v1.2.158Yiwei Zhang2020-10-221-7/+7
| | | | | | | | | | | | | | | | | | | | | | 1. Fixed a false assumption on max api version in gen script 2. Updated thae gens via ./vulkan/scripts/code_generator.py 3. Added the new entry points to null_driver. 4. Updated the llndk symbol map Bug: 171402955 Test: build Change-Id: Ifa0b9dce7f4138ca0c72c1c17ca3af8eed538abf
* | libvulkan: cleanup some redundant codesYiwei Zhang2020-07-131-4/+3
| | | | | | | | | | | | | | This change also removes some unnecessary clang-format operations. Test: build Change-Id: I6dae3a72448b931e07e5f94087e7a477582b4ca4
* | libvulkan: fix support for promoted VK_KHR_external_* extensionsYiwei Zhang2020-07-071-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | This change intercepts below entry points: vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalFenceProperties Bug: 160276146 Test: adb shell cmd gpu vkjson Test: dEQP-VK.api.external.* Change-Id: I08e5647fd7ea48c2a0b2e28ef688dee44f85684c
* | libvulkan: fix support for promoted GPDP2Yiwei Zhang2020-07-071-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change intercepts below entry points: vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2 Bug: 160276146 Test: adb shell cmd gpu vkjson Test: dEQP-VK.api.* Change-Id: I446192e3d29a3b0496d8d274a5a9cd3f2c0b3ee5
* | libvulkan: fix support for 1.1 vkEnumeratePhysicalDeviceGroupsYiwei Zhang2020-07-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | When the icd instance is 1.0, VK_KHR_device_group_creation will be enabled by the loader if the extension is advertised. Then we will try to use vkEnumeratePhysicalDeviceGroupsKHR as a fallback. Bug: 160276146 Test: adb shell cmd gpu vkjson Test: dEQP-VK.api.info.instance.physical_device_groups Change-Id: I9e2d9af66e80244f1d43b54ac2800316200c0d00
* | libvulkan: enable promoted instance extensions for 1.0 icd instanceYiwei Zhang2020-07-072-0/+73
|/ | | | | | | | | | QueryPresentationProperties requires GetPhysicalDeviceProperties2KHR, however, for 1.0 icd instance, GPDP2 extension needs to be enabled by the loader since the loader advertises 1.1 instance support. Bug: 160276146 Test: dEQP-VK.wsi.android.shared_presentable_image* Change-Id: Id0195d4a115e78e1d82b719059de271cd29446e0
* vulkan/opengl: rename some vars and commentsYiwei Zhang2020-06-151-2/+2
| | | | | | Fixes: 159027425 Test: ./vulkan/scripts/code_generator.py and build Change-Id: I23524a0c65d0c7c31e4dc3859ce7b979f9093553
* libvulkan: support vkGIPA self-queryJesse Hall2020-05-211-1/+3
| | | | | | | | | | | | | | | | | vkGetInstanceProcAddr(nullptr, ...) is valid and is effectively a globally dispatched function, so it's consistent to support querying vkGetInstanceProcAddr from itself without an instance. This is required in Vulkan 1.2 and is supported for all Vulkan versions by the loader on other platforms. To maximize app compatibility and minimize surprises, this makes it work on Android also, even for pre-1.2 versions where the result is undefined by the spec. Bug: 157173922 Test: dEQP-VK.api.version_check.entry_points with https://gerrit.khronos.org/#/c/5490/ applied and modified to check even on pre-1.2 implementations. Change-Id: I820dd1239df54a415b7ff5db47cf2c2b349f6155
* Vulkan: correctly expose Vulkan entry pointsYiwei Zhang2019-10-172-16/+68
| | | | | | | | | | | | This change fixes the advertisement of core Vulkan entry points as below: 1. GIPA returns a valid checked_proc for 1.1 core device APIs. 2. GDPA returns NULL for 1.1 core device APIs on a 1.0 physical device. Bug: 134185757 Bug: 142266108 Test: dEQP-VK.memory.binding on 1.1 loader and 1.0 device ICD Test: dEQP-VK.api.info.instance on 1.1 loader and 1.0 instance ICD Change-Id: I0a3e06dc04bade4f36a7e68ee2f53979c656ee4e
* Vulkan: factor base extension name into a function -- continueYiwei Zhang2019-10-162-4/+6
| | | | | | Bug: 134185757 Test: ./scripts/code_generator.py && build Change-Id: I5d1e604a4c70e009605cb6f5a28d4214be796dda
* Vulkan: factor base extension name into a functionYiwei Zhang2019-10-112-11/+20
| | | | | | Bug: 134185757 Test: ./scripts/code_generator.py && build Change-Id: I839adc28b94a6e429ea25753f2f8c3e469449c24
* Vulkan: add docs for the framework generation scriptsYiwei Zhang2019-10-115-15/+223
| | | | | | Bug: 134185757 Test: ./scripts/code_generator.py && build Change-Id: I108412fdc672c5513f570ddac9221074a0027cd0
* vulkan: clean up the framework generation scriptYiwei Zhang2019-10-115-731/+825
| | | | | | | | | | | | | | 1. Instead of mixing up all code formats, stick to pep8 and python style guide 2. Removed some redundant functions 3. Simplified seme code logic 4. Move constant codes back to main code gen blocks for readibility 5. Moved most of the hard-coded constants to the top 6. Removed a redundant clang format hint 7. Removed any mention of the legacy code gen stuff Bug: 134185757 Test: ./scripts/code_generator.py && build Change-Id: I1eca91fb0d181b7e8353c4c6a651d80ed1f2d1e0
* Vulkan: remove redundant function definitions in null_driverYiwei Zhang2019-10-103-27/+29
| | | | | | | | | | | | When deprecating the old gen scripts, there's some duplicate entries get added, which is fixed by this change. This change also reorders the extension constants in the gen scripts so that future modification is less likely to put duplicate entries. Bug: 134185757 Test: ./scripts/code_generator.py && build Change-Id: I6c8356b01e8a9c042293804eb628ed0a72da4a5c
* libvulkan: intercept vkQueueSubmit to insert a tracepointYiwei Zhang2019-09-231-0/+4
| | | | | | Bug: 141501384 Test: build, flash and boot. Run deqp Change-Id: I840270f213455250f72b2e7dc996124692bbc473
* vulkan: remove the temp hack for VK_ANDROID_native_buffer and regen frameworkYiwei Zhang2019-09-231-29/+15
| | | | | | | | | | | | | | | Previously the VK_ANDROID_native_buffer spec in the Vulkan registry is out of date. Since the upstream Vulkan registry has been fixed and imported to the Android downstream now, this change removes the hack and regenerate the Vulkan framework. This change also fixes below bugs: 1. Some device apis are treated as non-device. 2. The last command in the registry is ignored. Bug: 134711355 Test: Build, flash and dEQP tests Change-Id: I4eb77faf38b466f76caefdabb19a4d67a8ea789e
* Generate Vulkan framework from Vulkan registry (Part 4)Adithya Srinivasan2019-07-124-8/+23
| | | | | | | | | | Instead of using the manually created vulkan.api file for generating the Vulkan driver framework, we generate it directly from the vulkan registry (vk.xml) Bug: 134711355 Test: Build and flash, dEQP tests Change-Id: Ie38d93c51ff16d2108cbe9a9a717a0bea24947df
* Merge "Generate Vulkan framework from Vulkan registry (Part 3)"TreeHugger Robot2019-07-113-6/+163
|\
| * Generate Vulkan framework from Vulkan registry (Part 3)Adithya Srinivasan2019-07-113-6/+163
| | | | | | | | | | | | | | | | | | | | | | Instead of using the manually created vulkan.api file for generating the Vulkan driver framework, we generate it directly from the vulkan registry (vk.xml) Bug: 134711355 Test: Build and flash, dEQP tests Change-Id: I2fc3bc03489bd47c2239eb083c988157979fd674
* | Merge "Vulkan: make framework gen script executable"TreeHugger Robot2019-07-111-0/+0
|\ \ | |/ |/|
| * Vulkan: make framework gen script executableYiwei Zhang2019-07-101-0/+0
| | | | | | | | | | | | | | | | Also adds the .gitignore file to ignore the auto generated .pyc files. Bug: 134711355 Test: build, flash and boot. Change-Id: I68621c4af73c422c9f42c92822fc4a1daf89a451
* | Generate Vulkan framework from Vulkan registry (Part 2)Adithya Srinivasan2019-07-103-1/+422
|/ | | | | | | | | | | Instead of using the manually created vulkan.api file for generating the Vulkan driver framework, we generate it directly from the vulkan registry (vk.xml) Bug : 134711355 Test: Build and flash, dEQP tests Change-Id: I7a7c04a05d9eea5a03b4651fcff75948d3353933
* Generate Vulkan framework from Vulkan registryAdithya Srinivasan2019-07-023-0/+608
Instead of using the manually created vulkan.api file for generating the Vulkan framework, we generate it directly from the vulkan registry (vk.xml) Bug: 134711355 Test: Build and flash, dEQP tests Change-Id: I7e85cd4b64d13b8ed2c54678090f405171854a40