Commit 1ba1e15e by Yiwei Zhang

AHB: minor clean up to avoid build failures on different platforms

Bug: b/158094132 Test: comment out AHB def and test on Android. Change-Id: Ibae7f50a861d1009be3eaa11067783bacacdee54 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/50548Tested-by: 's avatarYiwei Zhang <zzyiwei@google.com> Presubmit-Ready: Yiwei Zhang <zzyiwei@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by: 's avatarTrevor Black <vantablack@google.com> Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
parent 282aa417
......@@ -14,6 +14,7 @@
#include "VkDeviceMemory.hpp"
#include "VkBuffer.hpp"
#include "VkDevice.hpp"
#include "VkDeviceMemoryExternalBase.hpp"
#include "VkImage.hpp"
......@@ -360,7 +361,11 @@ VkResult DeviceMemory::exportFd(int *pFd) const
#if SWIFTSHADER_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER
VkResult DeviceMemory::exportAndroidHardwareBuffer(struct AHardwareBuffer **pAhb) const
{
return external->exportAndroidHardwareBuffer(pAhb);
if(external->getFlagBit() != VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID)
{
return VK_ERROR_OUT_OF_HOST_MEMORY;
}
return static_cast<AHardwareBufferExternalMemory *>(external)->exportAndroidHardwareBuffer(pAhb);
}
VkResult DeviceMemory::GetAndroidHardwareBufferProperties(VkDevice &ahbDevice, const struct AHardwareBuffer *buffer, VkAndroidHardwareBufferPropertiesANDROID *pProperties)
......
......@@ -59,10 +59,9 @@ public:
VkExternalMemoryHandleTypeFlagBits getFlagBit() const override { return typeFlagBit; }
VkResult exportAndroidHardwareBuffer(AHardwareBuffer **pAhb) const override;
VkResult exportAndroidHardwareBuffer(AHardwareBuffer **pAhb) const;
void setDevicePtr(vk::Device *pDevice) override { device = pDevice; }
bool isAndroidHardwareBuffer() override { return true; }
static VkResult GetAndroidHardwareBufferFormatProperties(const AHardwareBuffer_Desc &ahbDesc, VkAndroidHardwareBufferFormatPropertiesANDROID *pFormat);
static VkResult GetAndroidHardwareBufferProperties(VkDevice &device, const AHardwareBuffer *buffer, VkAndroidHardwareBufferPropertiesANDROID *pProperties);
......
......@@ -45,18 +45,6 @@ public:
}
#endif
#if SWIFTSHADER_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER
virtual VkResult exportAndroidHardwareBuffer(struct AHardwareBuffer **pAhb) const
{
return VK_ERROR_INVALID_EXTERNAL_HANDLE;
}
virtual bool isAndroidHardwareBuffer()
{
return false;
}
#endif
// Some external device memories, such as Android hardware buffers, represent
// specific images with requirements.
virtual bool hasExternalImageProperties() const { return false; }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment