# Vulkan Adreno Layer

## Overview

The Vulkan Adreno layer detects optimizations that can be made on Adreno GPUs and offers suggestions on how to improve the usage of Vulkan APIs via logcat messages.
Users can configure this layer to disable/enable rules using vkal\_config.txt. See readme.txt for more details.

You can download the Vulkan Adreno Layer from the Qualcomm Developer Network at [https://developer.qualcomm.com/software/adreno-gpu-sdk/tools](https://developer.qualcomm.com/software/adreno-gpu-sdk/tools).

The following fault codes are related to messages generated by the Vulkan Adreno Layer.

## Fault Codes

| Fault Codes | Description |
| --- | --- |
| VKADRENOFAULT001 | Unknown struct provided in [VkCommandBufferAllocateInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCommandBufferAllocateInfo.html) |
| VKADRENOFAULT002 | Unknown struct provided in [VkSubmitInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkSubmitInfo.html) |
| VKADRENOFAULT003 | Unknown struct provided in [VkCommandBufferBeginInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCommandBufferBeginInfo.html) |
| VKADRENOFAULT004 | Unknown struct provided in [VkCommandBufferInheritanceInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkCommandBufferInheritanceInfo.html) |
| VKADRENOFAULT005 | Unknown struct provided in [VkImageViewCreateInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkImageViewCreateInfo.html) |
| VKADRENOFAULT006 | Unknown struct provided in [VkPipelineLayoutCreateInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineLayoutCreateInfo.html) |
| VKADRENOFAULT007 | Unknown struct provided in [VkDescriptorSetLayoutCreateInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDescriptorSetLayoutCreateInfo.html) |
| VKADRENOFAULT008 | Unknown struct provided in [VkPipelineShaderStageCreateInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkPipelineShaderStageCreateInfo.html) |
| VKADRENOFAULT009 | Unknown struct provided in [VkGraphicsPipelineCreateInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkGraphicsPipelineCreateInfo.html) |
| VKADRENOFAULT010 | Unknown struct provided in [VkComputePipelineCreateInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkComputePipelineCreateInfo.html) |
| VKADRENOFAULT011 | Unknown struct provided in [VkDescriptorSetLayoutCreateInfo](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDescriptorSetLayoutCreateInfo.html) |
| VKADRENOFAULT012 | Unsupported [VkDescriptorType](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDescriptorType.html) |
| VKADRENOFAULT013 | Unknown object type in VkAdrenoLayerAppStats::AddToMap |
| VKADRENOFAULT014 | Unknown object type in VkAdrenoLayerAppStats::AddToMapInternal |
| VKADRENOFAULT015 | Unknown object type in VkAdrenoLayerAppStats::PrintUsage |
| VKADRENOFAULT016 | Layer cannot enable support for [VK_EXT_device_memory_report](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_device_memory_report.html) |
| VKADRENOFAULT017 | Driver does not support [VK_EXT_device_memory_report](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_device_memory_report.html) |
| VKADRENOFAULT018 | Invalid [VkDeviceMemoryReportEventTypeEXT](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkDeviceMemoryReportEventTypeEXT.html) value |
| VKADRENOFAULT019 | Invalid [VkObjectType](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkObjectType.html) value |
| VKADRENOFAULT020 | VKAL\_LOG with LogGroupsInternal is disabled. Use VKAL\_LOG\_INTERNAL instead |
| VKADRENOFAULT021 | Disabled log. VKAL\_LOG\_INTERNAL must be provided with an external log group |

## Vulkan Debug Utils

The following warning and error codes are related to messages generated by [VK_EXT_debug_utils](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_debug_utils.html).

### Warning Codes

| Warning Code | Description |
| --- | --- |
| VKDBGUTILWARN001 | Framebuffer is not qualified for multipass |
| VKDBGUTILWARN002 | Multipass disabled in Renderpass due to memory barriers |
| VKDBGUTILWARN003 | Renderpass is not qualified for multipass due to a given subpass |

### Error Codes

| Error Code | Description |
| --- | --- |
| VKDBGUTILERRO001 | Shader compilation failed |
| VKDBGUTILERRO002 | Shader linking failed |

Last Published: Mar 03, 2026