summaryrefslogtreecommitdiff
path: root/chapters/commonvalidity/copy_buffer_to_image_command_buffer_common.adoc
blob: 0d1d4b2b81e22bf669129f485daed51051804713 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// Copyright 2020-2023 The Khronos Group Inc.
//
// SPDX-License-Identifier: CC-BY-4.0

// Common Valid Usage
// Common to VkCmdCopyBufferToImage* command buffer
ifdef::VK_VERSION_1_1[]
  * [[VUID-{refpage}-commandBuffer-01828]]
    If pname:commandBuffer is an unprotected command buffer and
    <<limits-protectedNoFault, pname:protectedNoFault>> is not supported,
    pname:srcBuffer must: not be a protected buffer
  * [[VUID-{refpage}-commandBuffer-01829]]
    If pname:commandBuffer is an unprotected command buffer and
    <<limits-protectedNoFault, pname:protectedNoFault>> is not supported,
    pname:dstImage must: not be a protected image
  * [[VUID-{refpage}-commandBuffer-01830]]
    If pname:commandBuffer is a protected command buffer and
    <<limits-protectedNoFault, pname:protectedNoFault>> is not supported,
    pname:dstImage must: not be an unprotected image
endif::VK_VERSION_1_1[]
  * [[VUID-{refpage}-commandBuffer-07737]]
    If the queue family used to create the slink:VkCommandPool which
    pname:commandBuffer was allocated from does not support
    ename:VK_QUEUE_GRAPHICS_BIT or ename:VK_QUEUE_COMPUTE_BIT, the
    pname:bufferOffset member of any element of {regionsparam} must: be a
    multiple of `4`
  * [[VUID-{refpage}-imageOffset-07738]]
    The pname:imageOffset and pname:imageExtent members of each element of
    {regionsparam} must: respect the image transfer granularity requirements
    of pname:commandBuffer's command pool's queue family, as described in
    slink:VkQueueFamilyProperties
  * [[VUID-{refpage}-commandBuffer-07739]]
    If the queue family used to create the slink:VkCommandPool which
    pname:commandBuffer was allocated from does not support
    ename:VK_QUEUE_GRAPHICS_BIT, for each element of {regionsparam}, the
    pname:aspectMask member of pname:imageSubresource must: not be
    ename:VK_IMAGE_ASPECT_DEPTH_BIT or ename:VK_IMAGE_ASPECT_STENCIL_BIT

// Common Valid Usage