summaryrefslogtreecommitdiffstats
path: root/domx/omx_proxy_common
diff options
context:
space:
mode:
authorSunita Nadampalli <sunitan@ti.com>2011-10-25 13:23:44 -0500
committerPradeep Venkatasubbarao <pradeepv@ti.com>2011-10-27 11:36:41 +0530
commit82a62f764d9d83375f5d42b5c0b1e9d676c4293d (patch)
tree3e66ceb771ba17f152e143b3668604f21571f2eb /domx/omx_proxy_common
parentbc2bfd1c5dd8616e9521889600e375402691a7c7 (diff)
downloadhardware_ti_omap4-82a62f764d9d83375f5d42b5c0b1e9d676c4293d.zip
hardware_ti_omap4-82a62f764d9d83375f5d42b5c0b1e9d676c4293d.tar.gz
hardware_ti_omap4-82a62f764d9d83375f5d42b5c0b1e9d676c4293d.tar.bz2
domx: return error hardware in case of ducati fault
In case of ducati faults, all pending OMX calls should return with OMX_ErrorHardware so that client is not blocked waiting for any OMX call to return while ducati has faulted. Also, all calls after the error hardware callbacks should also get OMX_ErrorHardware.Just for GetState no error should be returned, but the state returned should be OMX_StateInvalid. Note# This has been ported from the below patch https://android.dal.design.ti.com/#change,4852 Change-Id: I3efa845ea052bf4f4fb80b981f9e1701a7c87a31 Signed-off-by: Sunita Nadampalli <sunitan@ti.com>
Diffstat (limited to 'domx/omx_proxy_common')
-rw-r--r--domx/omx_proxy_common/src/omx_proxy_common.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/domx/omx_proxy_common/src/omx_proxy_common.c b/domx/omx_proxy_common/src/omx_proxy_common.c
index 82e44b0..446a864 100644
--- a/domx/omx_proxy_common/src/omx_proxy_common.c
+++ b/domx/omx_proxy_common/src/omx_proxy_common.c
@@ -1636,11 +1636,17 @@ static OMX_ERRORTYPE PROXY_GetState(OMX_IN OMX_HANDLETYPE hComponent,
eRPCError = RPC_GetState(pCompPrv->hRemoteComp, pState, &eCompReturn);
- DOMX_DEBUG("Returned from RPC_GetState, state: ", *pState);
+ DOMX_DEBUG("Returned from RPC_GetState, state: = %x", *pState);
PROXY_checkRpcError();
EXIT:
+ if (eError == OMX_ErrorHardware)
+ {
+ *pState = OMX_StateInvalid;
+ eError = OMX_ErrorNone;
+ DOMX_DEBUG("Invalid state returned from RPC_GetState, state due to ducati in faulty state");
+ }
DOMX_EXIT("eError: %d", eError);
return eError;
}