[Beignet] [PATCH] [1/1] Mark SandyBridge as unsupported
Zhigang Gong
zhigang.gong at linux.intel.com
Tue Apr 15 18:54:47 PDT 2014
Thanks for the patch and it looks good to me.
But it seems that you forgot to your Signed-off-by signature.
Could you add your signature and send it again. Thanks for your contribution.
On Sun, Apr 13, 2014 at 10:09:14AM -0400, Jesper Pedersen wrote:
> Hello,
>
> Attached is a patch that
>
> * Explicit marks SandyBridge as unsupported
> * Allows cl_get_device_ids to return CL_DEVICE_NOT_FOUND in all cases
> * Allows the test suite to run for unsupported devices
>
> This gives
>
> [run/total: 657/657] pass: 0; fail: 655; pass rate: 0.003044
> summary:
> ----------
> total: 657
> run: 657
> pass: 0
> fail: 655
> pass rate: 0.003044
>
> on my SandyBridge HD 3000 (Note, that 2 test cases are missing from
> the result).
>
> Patch is submitted under LGPL v2 or higher.
>
> Thanks in advance for considering this patch, and keep up the good work !
>
> Best regards,
> Jesper
> From 7ae37148ee9bde7dd3d53a3b96c88994a6897765 Mon Sep 17 00:00:00 2001
> From: Jesper Pedersen <jesper.pedersen at comcast.net>
> Date: Sun, 13 Apr 2014 09:58:12 -0400
> Subject: [PATCH] Mark SandyBridge as unsupported
>
> ---
> src/cl_device_id.c | 17 +++++++++++++++--
> utests/utest_helper.cpp | 30 ++++++++++++++++++------------
> 2 files changed, 33 insertions(+), 14 deletions(-)
>
> diff --git a/src/cl_device_id.c b/src/cl_device_id.c
> index 0426738..c6bce7d 100644
> --- a/src/cl_device_id.c
> +++ b/src/cl_device_id.c
> @@ -182,9 +182,22 @@ ivb_gt2_break:
> intel_ivb_gt2_device.platform = intel_platform;
> ret = &intel_ivb_gt2_device;
> break;
> +
> + case PCI_CHIP_SANDYBRIDGE_BRIDGE:
> + case PCI_CHIP_SANDYBRIDGE_GT1:
> + case PCI_CHIP_SANDYBRIDGE_GT2:
> + case PCI_CHIP_SANDYBRIDGE_GT2_PLUS:
> + case PCI_CHIP_SANDYBRIDGE_BRIDGE_M:
> + case PCI_CHIP_SANDYBRIDGE_M_GT1:
> + case PCI_CHIP_SANDYBRIDGE_M_GT2:
> + case PCI_CHIP_SANDYBRIDGE_M_GT2_PLUS:
> + case PCI_CHIP_SANDYBRIDGE_BRIDGE_S:
> + case PCI_CHIP_SANDYBRIDGE_S_GT:
> + // Intel(R) HD Graphics SandyBridge not supported yet
> + ret = NULL;
> + break;
> default:
> - printf("cl_get_gt_device(): error, unknown device\n");
> - exit(1);
> + printf("cl_get_gt_device(): error, unknown device: %x\n", device_id);
> }
>
> return ret;
> diff --git a/utests/utest_helper.cpp b/utests/utest_helper.cpp
> index a9e270e..cb4dd66 100644
> --- a/utests/utest_helper.cpp
> +++ b/utests/utest_helper.cpp
> @@ -337,20 +337,26 @@ cl_ocl_init(void)
> GET_PLATFORM_STR_INFO(extensions, EXTENSIONS);
>
> /* Get the device (only GPU device is supported right now) */
> - OCL_CALL (clGetDeviceIDs, platform, CL_DEVICE_TYPE_GPU, 1, &device, NULL);
> - {
> - size_t param_value_size;
> - GET_DEVICE_STR_INFO(profile, PROFILE);
> - GET_DEVICE_STR_INFO(name, NAME);
> - GET_DEVICE_STR_INFO(vendor, VENDOR);
> - GET_DEVICE_STR_INFO(version, VERSION);
> - GET_DEVICE_STR_INFO(extensions, EXTENSIONS);
> - GET_DEVICE_STR_INFO(opencl_c_version, OPENCL_C_VERSION);
> + try {
> + OCL_CALL (clGetDeviceIDs, platform, CL_DEVICE_TYPE_GPU, 1, &device, NULL);
> + {
> + size_t param_value_size;
> + GET_DEVICE_STR_INFO(profile, PROFILE);
> + GET_DEVICE_STR_INFO(name, NAME);
> + GET_DEVICE_STR_INFO(vendor, VENDOR);
> + GET_DEVICE_STR_INFO(version, VERSION);
> + GET_DEVICE_STR_INFO(extensions, EXTENSIONS);
> + GET_DEVICE_STR_INFO(opencl_c_version, OPENCL_C_VERSION);
> #ifdef HAS_EGL
> - if (std::strstr(extensionsStr.c_str(), "cl_khr_gl_sharing")) {
> - hasGLExt = true;
> - }
> + if (std::strstr(extensionsStr.c_str(), "cl_khr_gl_sharing")) {
> + hasGLExt = true;
> + }
> #endif
> + }
> + } catch (...) {
> + fprintf(stderr, "error calling clGetDeviceIDs\n");
> + status = CL_DEVICE_NOT_FOUND;
> + goto error;
> }
>
> #ifdef HAS_EGL
> --
> 1.9.0
>
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/beignet
More information about the Beignet
mailing list