From 7f5373020f477121dfcce34be2d1e24fb61bb1dd Mon Sep 17 00:00:00 2001
From: foreman
Date: Wed, 7 Mar 2018 17:35:30 -0500
Subject: [PATCH] P4 to Git Change 1524071 by gandryey@gera-w8 on 2018/03/07
17:26:30
SWDEV-147487 - DX9/DX11 texture and OpenCL interop for YUY2
- Enable YUY2 support for DX11 and DX9. YUY2 contains just one plane of interleaved Y0UY1V components and can be mapped to (CL_RGBA, CL_UNSIGNED_INT8) with image width reduced by 2. YUY2 provides better quality due to 16bit data per pixel
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d11.cpp#23 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d9.cpp#33 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuresource.cpp#241 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#49 edit
[ROCm/clr commit: fd3644ee58ee19b652eced89925cca51b71d1fb0]
---
projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp | 2 ++
projects/clr/rocclr/runtime/device/pal/palresource.cpp | 3 +++
2 files changed, 5 insertions(+)
diff --git a/projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp b/projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp
index 2111163edd..0c72ce097f 100644
--- a/projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp
+++ b/projects/clr/rocclr/runtime/device/gpu/gpuresource.cpp
@@ -789,6 +789,8 @@ bool Resource::create(MemoryType memType, CreateParams* params) {
break;
}
break;
+ case 3:
+ break;
default:
LogError("Unknown Interop View Type");
calRes = false;
diff --git a/projects/clr/rocclr/runtime/device/pal/palresource.cpp b/projects/clr/rocclr/runtime/device/pal/palresource.cpp
index cd336ebd44..1af120863d 100644
--- a/projects/clr/rocclr/runtime/device/pal/palresource.cpp
+++ b/projects/clr/rocclr/runtime/device/pal/palresource.cpp
@@ -602,6 +602,9 @@ bool Resource::create(MemoryType memType, CreateParams* params) {
}
imgCreateInfo.depthPitch = imgCreateInfo.rowPitch * desc().height_;
break;
+ case 3: // YUY2 format
+ imgCreateInfo.depthPitch = imgCreateInfo.rowPitch * desc().height_;
+ break;
default:
LogError("Unknown Interop View Type");
return false;