Re: [Mesa-dev] [PATCH] radv/wsi: don't use a helper for blit, just call copy image.

2017-11-16 Thread Samuel Pitoiset

Reviewed-by: Samuel Pitoiset 

On 11/15/2017 11:55 PM, Dave Airlie wrote:

From: Dave Airlie 

We ignore layout currently, not sure what would be correct to pass.

(this is based on Jason's last wsi rfc)

Signed-off-by: Dave Airlie 
---
  src/amd/vulkan/radv_meta.h  |  4 
  src/amd/vulkan/radv_meta_copy.c | 20 
  src/amd/vulkan/radv_wsi.c   | 19 ---
  3 files changed, 16 insertions(+), 27 deletions(-)

diff --git a/src/amd/vulkan/radv_meta.h b/src/amd/vulkan/radv_meta.h
index d10ec99..0974df0 100644
--- a/src/amd/vulkan/radv_meta.h
+++ b/src/amd/vulkan/radv_meta.h
@@ -187,10 +187,6 @@ void radv_meta_resolve_fragment_image(struct 
radv_cmd_buffer *cmd_buffer,
  uint32_t region_count,
  const VkImageResolve *regions);
  
-void radv_blit_to_prime_linear(struct radv_cmd_buffer *cmd_buffer,

-  struct radv_image *image,
-  struct radv_image *linear_image);
-
  /* common nir builder helpers */
  #include "nir/nir_builder.h"
  
diff --git a/src/amd/vulkan/radv_meta_copy.c b/src/amd/vulkan/radv_meta_copy.c

index a42b15a..c3fe10e 100644
--- a/src/amd/vulkan/radv_meta_copy.c
+++ b/src/amd/vulkan/radv_meta_copy.c
@@ -432,23 +432,3 @@ void radv_CmdCopyImage(
meta_copy_image(cmd_buffer, src_image, dest_image,
regionCount, pRegions);
  }
-
-void radv_blit_to_prime_linear(struct radv_cmd_buffer *cmd_buffer,
-  struct radv_image *image,
-  struct radv_image *linear_image)
-{
-   struct VkImageCopy image_copy = { 0 };
-
-   image_copy.srcSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
-   image_copy.srcSubresource.layerCount = 1;
-
-   image_copy.dstSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
-   image_copy.dstSubresource.layerCount = 1;
-
-   image_copy.extent.width = image->info.width;
-   image_copy.extent.height = image->info.height;
-   image_copy.extent.depth = 1;
-
-   meta_copy_image(cmd_buffer, image, linear_image,
-   1, _copy);
-}
diff --git a/src/amd/vulkan/radv_wsi.c b/src/amd/vulkan/radv_wsi.c
index 0145da6..7515284 100644
--- a/src/amd/vulkan/radv_wsi.c
+++ b/src/amd/vulkan/radv_wsi.c
@@ -233,6 +233,7 @@ radv_wsi_create_blit_cmd_buffer(VkDevice device_h,
uint32_t queue_family_index,
VkCommandPool *cmd_pool_p,
VkCommandBuffer *cmd_buffer_p,
+   const VkSwapchainCreateInfoKHR *pCreateInfo,
const VkAllocationCallbacks* pAllocator)
  {
VkResult result = VK_SUCCESS;
@@ -272,9 +273,20 @@ radv_wsi_create_blit_cmd_buffer(VkDevice device_h,
  
  	radv_BeginCommandBuffer(cmd_buffer_h, _info);
  
-	radv_blit_to_prime_linear(radv_cmd_buffer_from_handle(cmd_buffer_h),

- radv_image_from_handle(client_image_h),
- radv_image_from_handle(wsi_image_h));
+   struct VkImageCopy image_copy = { 0 };
+
+   image_copy.srcSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
+   image_copy.srcSubresource.layerCount = 1;
+
+   image_copy.dstSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
+   image_copy.dstSubresource.layerCount = 1;
+
+   image_copy.extent.width = pCreateInfo->imageExtent.width;
+   image_copy.extent.height = pCreateInfo->imageExtent.height;
+   image_copy.extent.depth = 1;
+
+   radv_CmdCopyImage(cmd_buffer_h, client_image_h, 0, wsi_image_h, 0,
+ 1, _copy);
  
  	radv_EndCommandBuffer(cmd_buffer_h);
  
@@ -370,6 +382,7 @@ radv_wsi_image_create(VkDevice device_h,

 q,
 
>blit_cmd_pools[q],
 
>blit_cmd_buffers[q],
+pCreateInfo,
 pAllocator);
if (result != VK_SUCCESS)
goto fail;


___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [PATCH] radv/wsi: don't use a helper for blit, just call copy image.

2017-11-15 Thread Dave Airlie
From: Dave Airlie 

We ignore layout currently, not sure what would be correct to pass.

(this is based on Jason's last wsi rfc)

Signed-off-by: Dave Airlie 
---
 src/amd/vulkan/radv_meta.h  |  4 
 src/amd/vulkan/radv_meta_copy.c | 20 
 src/amd/vulkan/radv_wsi.c   | 19 ---
 3 files changed, 16 insertions(+), 27 deletions(-)

diff --git a/src/amd/vulkan/radv_meta.h b/src/amd/vulkan/radv_meta.h
index d10ec99..0974df0 100644
--- a/src/amd/vulkan/radv_meta.h
+++ b/src/amd/vulkan/radv_meta.h
@@ -187,10 +187,6 @@ void radv_meta_resolve_fragment_image(struct 
radv_cmd_buffer *cmd_buffer,
  uint32_t region_count,
  const VkImageResolve *regions);
 
-void radv_blit_to_prime_linear(struct radv_cmd_buffer *cmd_buffer,
-  struct radv_image *image,
-  struct radv_image *linear_image);
-
 /* common nir builder helpers */
 #include "nir/nir_builder.h"
 
diff --git a/src/amd/vulkan/radv_meta_copy.c b/src/amd/vulkan/radv_meta_copy.c
index a42b15a..c3fe10e 100644
--- a/src/amd/vulkan/radv_meta_copy.c
+++ b/src/amd/vulkan/radv_meta_copy.c
@@ -432,23 +432,3 @@ void radv_CmdCopyImage(
meta_copy_image(cmd_buffer, src_image, dest_image,
regionCount, pRegions);
 }
-
-void radv_blit_to_prime_linear(struct radv_cmd_buffer *cmd_buffer,
-  struct radv_image *image,
-  struct radv_image *linear_image)
-{
-   struct VkImageCopy image_copy = { 0 };
-
-   image_copy.srcSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
-   image_copy.srcSubresource.layerCount = 1;
-
-   image_copy.dstSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
-   image_copy.dstSubresource.layerCount = 1;
-
-   image_copy.extent.width = image->info.width;
-   image_copy.extent.height = image->info.height;
-   image_copy.extent.depth = 1;
-
-   meta_copy_image(cmd_buffer, image, linear_image,
-   1, _copy);
-}
diff --git a/src/amd/vulkan/radv_wsi.c b/src/amd/vulkan/radv_wsi.c
index 0145da6..7515284 100644
--- a/src/amd/vulkan/radv_wsi.c
+++ b/src/amd/vulkan/radv_wsi.c
@@ -233,6 +233,7 @@ radv_wsi_create_blit_cmd_buffer(VkDevice device_h,
uint32_t queue_family_index,
VkCommandPool *cmd_pool_p,
VkCommandBuffer *cmd_buffer_p,
+   const VkSwapchainCreateInfoKHR *pCreateInfo,
const VkAllocationCallbacks* pAllocator)
 {
VkResult result = VK_SUCCESS;
@@ -272,9 +273,20 @@ radv_wsi_create_blit_cmd_buffer(VkDevice device_h,
 
radv_BeginCommandBuffer(cmd_buffer_h, _info);
 
-   radv_blit_to_prime_linear(radv_cmd_buffer_from_handle(cmd_buffer_h),
- radv_image_from_handle(client_image_h),
- radv_image_from_handle(wsi_image_h));
+   struct VkImageCopy image_copy = { 0 };
+
+   image_copy.srcSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
+   image_copy.srcSubresource.layerCount = 1;
+
+   image_copy.dstSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
+   image_copy.dstSubresource.layerCount = 1;
+
+   image_copy.extent.width = pCreateInfo->imageExtent.width;
+   image_copy.extent.height = pCreateInfo->imageExtent.height;
+   image_copy.extent.depth = 1;
+
+   radv_CmdCopyImage(cmd_buffer_h, client_image_h, 0, wsi_image_h, 0,
+ 1, _copy);
 
radv_EndCommandBuffer(cmd_buffer_h);
 
@@ -370,6 +382,7 @@ radv_wsi_image_create(VkDevice device_h,
 q,
 
>blit_cmd_pools[q],
 
>blit_cmd_buffers[q],
+pCreateInfo,
 pAllocator);
if (result != VK_SUCCESS)
goto fail;
-- 
2.9.5

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev