summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSaurabh Bipin Chandra2013-09-03 04:50:45 -0500
committerSaurabh Bipin Chandra2013-09-05 10:47:20 -0500
commitabd5152ca071e552954571862635666297221177 (patch)
tree5344174df9cbb79fbc259911bdc2e48a3cf75976 /libdce.h
parent2dee585f2102f284d7babcfe5f0e126e32dde36d (diff)
downloadhardware-ti-libdce-abd5152ca071e552954571862635666297221177.tar.gz
hardware-ti-libdce-abd5152ca071e552954571862635666297221177.tar.xz
hardware-ti-libdce-abd5152ca071e552954571862635666297221177.zip
[LIBDCE] Mutual exclusion of Engine_open and Engine_close
This patch uses semaphores to mutually exclude: 1. dce_init() and Engine_open() IPU call. This solves a hang on IPU side during multiple instances. pthread mutex used within dce_init is replaced with semaphores as mutex is valid only across threads and not processes. 2. dce_deinit() and Engine_close(). This solves a hang on IPU side during multiple instances. Change-Id: Ia4d31582ebf0536142dee389e9601eae0169fb22 Signed-off-by: Saurabh Bipin Chandra <a0131926@ti.com>
Diffstat (limited to 'libdce.h')
-rw-r--r--libdce.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/libdce.h b/libdce.h
index 5d4ffa8..b008e28 100644
--- a/libdce.h
+++ b/libdce.h
@@ -54,7 +54,8 @@ typedef enum dce_error_status {
54 DCE_EIPC_CREATE_FAIL = -4, 54 DCE_EIPC_CREATE_FAIL = -4,
55 DCE_EIPC_CALL_FAIL = -5, 55 DCE_EIPC_CALL_FAIL = -5,
56 DCE_EINVALID_INPUT = -6, 56 DCE_EINVALID_INPUT = -6,
57 DCE_EOMAPDRM_FAIL = -7 57 DCE_EOMAPDRM_FAIL = -7,
58 DCE_ESEMAPHORE_FAIL = -8
58} dce_error_status; 59} dce_error_status;
59 60
60 61