src/libANGLE/renderer/vulkan/linux/DmaBufImageSiblingVkLinux.cpp


Log

Author Commit Date CI Message
Choi Sungyong 9ded03b4 2022-12-20T07:09:36 Revert "Vulkan: Make available GLInternalFormatToGbmFourCCFormat" This reverts commit 402e7f7a634b1170d0feae52a44168731a7489f9. Reason for revert: Chromium android-binary-size build failed. Original change's description: > Vulkan: Make available GLInternalFormatToGbmFourCCFormat > > GLInternalFormatToGbmFourCCFormat() is not available on Linux > because of the guard with the wrong definition, ANGLE_USES_GBM. > This also fixes build errors that were occurred after enabling. > > Bug: angleproject:7829 > Change-Id: If7c7543270cc127945149927be0fc3ffdd49163b > Signed-off-by: Sungyong Choi <sywow.choi@samsung.com> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4022963 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Jeff Vigil <j.vigil@samsung.com> > Commit-Queue: mohan maiya <m.maiya@samsung.com> > Reviewed-by: mohan maiya <m.maiya@samsung.com> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:7901 Bug: angleproject:7829 Change-Id: I256d51f78ff0d3ced9920c3ea1d2bfceba43a1ee Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4113577 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Sungyong Choi 402e7f7a 2022-11-11T15:51:55 Vulkan: Make available GLInternalFormatToGbmFourCCFormat GLInternalFormatToGbmFourCCFormat() is not available on Linux because of the guard with the wrong definition, ANGLE_USES_GBM. This also fixes build errors that were occurred after enabling. Bug: angleproject:7829 Change-Id: If7c7543270cc127945149927be0fc3ffdd49163b Signed-off-by: Sungyong Choi <sywow.choi@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4022963 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jeff Vigil <j.vigil@samsung.com> Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: mohan maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Antonio Caggiano 0c46c2d9 2022-05-19T16:16:54 Vulkan: Support DRM_FORMAT_MOD_LINEAR Fix a bug while checking for dmabuf image image format support. The value 0 is used for DRM_FORMAT_MOD_LINEAR, which is perfectly valid. DRM_FORMAT_MOD_INVALID could be used instead for bail out. Bug: angleproject:7065 Change-Id: If8eb366873b8f0fe2fd84de745a55171036093d4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3645124 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Antonio Caggiano 35839293 2022-05-19T16:18:10 Vulkan: Fix mutable format check Check directly with enum instead of using boolean logical operator. Bug: angleproject:7065 Change-Id: I98b077c9ab18690d915ed3387a4f19404925daaf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3645123 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Antonio Caggiano 4ece3b08 2022-02-24T15:07:25 Vulkan: Multiple DRM formats A DRM format may be converted into more than one Vulkan format, therefore we try to create a dmabuf image with all candidate Vulkan formats until we succeed. Bug: angleproject:7065 Change-Id: I376d10a596ce81347c8ae21464c2c2db048f01d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3516018 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Antonio Caggiano ab786b21 2022-02-24T15:06:59 Vulkan: Non-mutable DmaBuf images When creating Vulkan images, certain DRM format modifiers can only be used without the mutable format flag. Bug: angleproject:7027 Change-Id: I6d57a4be1c21d30a963b17794aad6806b22acac8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3488048 Auto-Submit: Antonio Caggiano <antonio.caggiano@collabora.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Antonio Caggiano e67027c2 2022-02-15T17:21:44 Vulkan: Fix DRM format support verification Include VkImageFormatListCreateInfo structure in pNext chains to both support verification and creation functions. Bug: angleproject:7027 Change-Id: I04ba396252c159f4d28dde002b7e07b7194623ab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3464856 Auto-Submit: Antonio Caggiano <antonio.caggiano@collabora.com> Reviewed-by: Craig Stout <cstout@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Antonio Caggiano 613ec1c8 2022-02-15T17:01:01 Vulkan: Duplicate dmabuf FD on import When importing a dmabuf FD, Vulkan takes the ownership and attempts to close on vkFreeMemory. This means we need to duplicate it. Bug: angleproject:7027 Change-Id: Ife3dce30bd0c88c6b6fd622b93a44528b6a9ea68 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3464855 Auto-Submit: Antonio Caggiano <antonio.caggiano@collabora.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Antonio Caggiano 2944e265 2022-02-15T16:57:53 Vulkan: Fix dmabuf memory importable check Bug: angleproject:7027 Change-Id: I64522d2629c153b8456c975a06fd4293f89aa19a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3464854 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao caf6433a 2022-01-04T14:37:29 Vulkan: Rename releaseStagingBuffer to releaseStagedUpdate There is no more per ImageHelper dynamic buffer for staging, and this function is not just removing staging buffer, but removing all staged updates. Rename it to reflect what it actually does. Bug: b/208323792 Change-Id: I5a2182291848a9e137ed29b888f31215664b46fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3367078 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Mohan Maiya e70a81b9 2021-12-14T13:41:28 Vulkan: Rectify typo introduced in 36fcf80b1f2a99 The method should have been updateYcbcrConversionDesc Bug: angleproject:6732 Test: Texture2DTestES3.*Yuv*Vulkan Change-Id: I67ab35ac07a6d751cbe3c3c29bdde21a5a7f5834 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3339605 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Mohan Maiya 36fcf80b 2021-12-11T20:55:53 Vulkan: Consolidate SamplerYcbcrConversionCache Now that SamplerDesc and ImageHelper have the fully qualified description of a VkSamplerYcbcrConversion, we can lazy allocate the conversion handle along with streamlining the interface to the SamplerYcbcrConversionCache class. Bug: angleproject:6732 Test: Texture2DTestES3.*Yuv*Vulkan Change-Id: I7deaa0220031bc4c500d88021459017bf937218c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3333629 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Shahbaz Youssefi 6fe13477 2021-11-11T00:47:14 Vulkan: Add external's pNext to ANGLE_external_objects_flags ANGLE was chaining VkImageFormatListCreateInfoKHR to VkImageCreateInfo::pNext to support sRGB extensions. For external images, it was unknown whether that was valid because there was no way to know if external used an identical chain of pNexts. This was causing a discrepancy between images created by Chrome and those created by ANGLE as part of an import. This change updates ANGLE_external_objects_flags to take in the pNext chain external has used to create the image so ANGLE could create the image identically. Bug: chromium:1266094 Change-Id: I479b9e7ff39d437425dc91c79834880749766f99 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3274177 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Peng Huang <penghuang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 458389f2 2021-09-02T22:41:40 Vulkan: Support Linux dma-bufs This change adds support for EGL_EXT_image_dma_buf_import and EGL_EXT_image_dma_buf_import_modifiers on top of Vulkan's VK_EXT_external_memory_dma_buf and VK_EXT_image_drm_format_modifier. Bug: angleproject:6248 Change-Id: I581987f88e9ddcf351dc721f499f63912dca05f9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3145610 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>