diff options
author | Yang Rong <rong.r.yang@intel.com> | 2016-05-18 17:42:41 +0800 |
---|---|---|
committer | Yang Rong <rong.r.yang@intel.com> | 2016-05-27 10:12:24 +0800 |
commit | ca29b90326b4a0a86682a2a70728a4add704f9be (patch) | |
tree | 0cf8ccb50a1d67d6cf42ea5012772f352ac8084b /src | |
parent | a65b2636e8b1a3d9ff9538de3e67c86233dfbb5b (diff) | |
download | beignet-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.mk | 4 | ||||
-rw-r--r-- | src/intel/intel_driver.c | 14 |
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; |