BGRA format support

This change adds conversions between Vulkan and AHardwareBuffer BGRA
formats.

Change-Id: If992c80438bf8386e0687c920e04015bab7bf394
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/75488
Reviewed-by: Jason Macnak <natsu@google.com>
Commit-Queue: Jason Macnak <natsu@google.com>
Tested-by: Jason Macnak <natsu@google.com>
diff --git a/src/Vulkan/VkDeviceMemoryExternalAndroid.cpp b/src/Vulkan/VkDeviceMemoryExternalAndroid.cpp
index ba91f33..b7cdd0d 100644
--- a/src/Vulkan/VkDeviceMemoryExternalAndroid.cpp
+++ b/src/Vulkan/VkDeviceMemoryExternalAndroid.cpp
@@ -57,6 +57,8 @@
 		return AHARDWAREBUFFER_FORMAT_Y8Cb8Cr8_420;
 	case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16:
 		return AHARDWAREBUFFER_FORMAT_YCbCr_P010;
+	case VK_FORMAT_B8G8R8A8_UNORM:
+		return AHARDWAREBUFFER_FORMAT_B8G8R8A8_UNORM;
 	default:
 		UNSUPPORTED("AHardwareBufferExternalMemory::VkFormat %d", int(format));
 		return 0;
@@ -306,7 +308,7 @@
 		usage = AHARDWAREBUFFER_USAGE_CPU_READ_OFTEN | AHARDWAREBUFFER_USAGE_CPU_WRITE_OFTEN;
 	}
 
-	// Empty fence, lock immedietly.
+	// Empty fence, lock immediately.
 	int32_t fence = -1;
 
 	// Empty rect, lock entire buffer.
@@ -388,6 +390,8 @@
 		return VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM;
 	case AHARDWAREBUFFER_FORMAT_YCbCr_P010:
 		return VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16;
+	case AHARDWAREBUFFER_FORMAT_B8G8R8A8_UNORM:
+		return VK_FORMAT_B8G8R8A8_UNORM;
 	default:
 		UNSUPPORTED("AHardwareBufferExternalMemory::AHardwareBuffer_Format %d", int(ahbFormat));
 		return VK_FORMAT_UNDEFINED;