summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorYang Rong <rong.r.yang@intel.com>2016-05-18 17:42:41 +0800
committerYang Rong <rong.r.yang@intel.com>2016-05-27 10:12:24 +0800
commitca29b90326b4a0a86682a2a70728a4add704f9be (patch)
tree0cf8ccb50a1d67d6cf42ea5012772f352ac8084b /src
parenta65b2636e8b1a3d9ff9538de3e67c86233dfbb5b (diff)
downloadbeignet-ca29b90326b4a0a86682a2a70728a4add704f9be.tar.gz
Android: workaround libdrm flags.
Enable HAS_USERPTR and disable HAS_EU_TOTAL and HAS_SUBSLICE_TOTAL by default, set the cherryview EU config to minimum. Enable HAS_EU_TOTAL and HAS_SUBSLICE_TOTAL if android linux kernel support. Signed-off-by: Yang Rong <rong.r.yang@intel.com> Reviewed-by: Zhigang Gong <zhigang.gong@intel.com>
Diffstat (limited to 'src')
-rw-r--r--src/Android.mk4
-rw-r--r--src/intel/intel_driver.c14
2 files changed, 14 insertions, 4 deletions
diff --git a/src/Android.mk b/src/Android.mk
index 0b15428a..3d9102e9 100644
--- a/src/Android.mk
+++ b/src/Android.mk
@@ -15,8 +15,8 @@ LOCAL_C_INCLUDES := $(TOP_C_INCLUDE) $(BEIGNET_ROOT_PATH)/backend/src/backend/ $
LOCAL_C_INCLUDES += $(DRM_INCLUDE_PATH)
LOCAL_C_INCLUDES += $(LLVM_INCLUDE_DIRS)
LOCAL_C_INCLUDES += hardware/drm_gralloc
-LOCAL_CPPFLAGS := $(TOP_CPPFLAGS) -std=c++11
-LOCAL_CFLAGS := $(TOP_CFLAGS)
+LOCAL_CPPFLAGS := $(TOP_CPPFLAGS) -std=c++11 -DHAS_USERPTR
+LOCAL_CFLAGS := $(TOP_CFLAGS) -DHAS_USERPTR
OPTIONAL_EGL_LIBRARY :=
LOCAL_LDFLAGS := -Wl,-Bsymbolic
diff --git a/src/intel/intel_driver.c b/src/intel/intel_driver.c
index b3712e54..03d9d34d 100644
--- a/src/intel/intel_driver.c
+++ b/src/intel/intel_driver.c
@@ -856,9 +856,14 @@ intel_update_device_info(cl_device_id device)
else if (IS_CHERRYVIEW(device->device_id))
printf(CHV_CONFIG_WARNING);
#else
- if (IS_CHERRYVIEW(device->device_id))
+ if (IS_CHERRYVIEW(device->device_id)) {
+#if defined(__ANDROID__)
+ device->max_compute_unit = 12;
+#else
printf(CHV_CONFIG_WARNING);
#endif
+ }
+#endif
#ifdef HAS_SUBSLICE_TOTAL
unsigned int subslice_total;
@@ -869,9 +874,14 @@ intel_update_device_info(cl_device_id device)
else if (IS_CHERRYVIEW(device->device_id))
printf(CHV_CONFIG_WARNING);
#else
- if (IS_CHERRYVIEW(device->device_id))
+ if (IS_CHERRYVIEW(device->device_id)) {
+#if defined(__ANDROID__)
+ device->sub_slice_count = 2;
+#else
printf(CHV_CONFIG_WARNING);
#endif
+ }
+#endif
//We should get the device memory dynamically, but the
//mapablce mem size usage is unknown. Just ignore it.
size_t total_mem,map_mem;