From 44020ac6c53a1ffc5dd05342d827a718d96def2e Mon Sep 17 00:00:00 2001 From: "Mun, Gwan-gyeong" Date: Mon, 18 Apr 2016 20:30:12 +0900 Subject: [PATCH] swapchain: add debug info code for SwapChain's VkImage. Later we should remove or revert this code / commit Change-Id: Ica6c0627e3692206ca2b29152fbe7e4923e9d57d --- src/wsi/swapchain.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/src/wsi/swapchain.c b/src/wsi/swapchain.c index c105777..5b1387d 100644 --- a/src/wsi/swapchain.c +++ b/src/wsi/swapchain.c @@ -198,6 +198,7 @@ vk_AcquireNextImageKHR(VkDevice device, for (i = 0; i < chain->buffer_count; i++) { if (next == chain->buffers[i].tbm) { + VK_DEBUG("%s, tbm_surface: %p, index: %d\n", __func__, next, i); *image_index = i; return VK_SUCCESS; } @@ -213,9 +214,44 @@ vk_QueuePresentKHR(VkQueue queue, uint32_t i; for (i = 0; i < info->swapchainCount; i++) { +#if 1 /* TODO: later remove this code section, it is needed just for Swapchaing debugging */ tpl_result_t res; + tbm_surface_h tbm; + tbm_surface_info_s sinfo; + int map_ret; + uint32_t color, k; +#endif vk_swapchain_t *chain = (vk_swapchain_t *)info->pSwapchains[i]; +#if 1 /* TODO: later remove this code section, it is needed just for Swapchaing debugging */ + VK_DEBUG("%s, tbm_surface: %p, index: %d\n", __func__, + chain->buffers[info->pImageIndices[i]].tbm, info->pImageIndices[i]); + + tbm = chain->buffers[info->pImageIndices[i]].tbm; + + map_ret = tbm_surface_map(tbm, TBM_SURF_OPTION_WRITE|TBM_SURF_OPTION_READ, &sinfo); + if (map_ret == TBM_SURFACE_ERROR_NONE) { + uint32_t *ptr = sinfo.planes[0].ptr; + switch(info->pImageIndices[i]) { + case 0: + color = 0xFFFF0000; + break; + case 1: + color = 0xFF00FF00; + break; + case 2: + color = 0xFF0000FF; + break; + } + for (k = 0; k < sinfo.planes[0].size; k += 4) { + *ptr++ = color; + } + tbm_surface_unmap(tbm); + } else { + VK_DEBUG("%s, tbm_surface_map failed\n", __func__); + } +#endif + res = tpl_surface_enqueue_buffer(chain->tpl_surface, chain->buffers[info->pImageIndices[i]].tbm); -- 2.7.4