Added timeout in the ProcessRequest API
authorBrijesh Jadav <brijesh.jadav@ti.com>
Tue, 22 Jan 2019 08:54:49 +0000 (14:24 +0530)
committerBrijesh Jadav <brijesh.jadav@ti.com>
Tue, 22 Jan 2019 08:54:49 +0000 (14:24 +0530)
Signed-off-by: Brijesh Jadav <brijesh.jadav@ti.com>
include/fvid2_api.h [changed mode: 0644->0755]
include/fvid2_drvMgr.h [changed mode: 0644->0755]
src/fvid2_drvMgr.c

old mode 100644 (file)
new mode 100755 (executable)
index c46a2ec..050c2e8
@@ -715,12 +715,18 @@ int32_t Fvid2_dequeue(Fvid2_Handle      handle,
  *                           different stream ids.
  *  \param outFrameList [IN] Pointer to the array of output frames with
  *                           different stream ids
+ *  \param timeout      [IN] FVID2 timeout. This will determine the timeout
+ *                           value till the driver will block for a
+ *                           free or completed buffer is available.
+ *                           For non-blocking drivers this parameter
+ *                           might be ignored.
  *
  *  \return FVID2_SOK on success, else appropriate FVID2 error code on failure.
  */
 int32_t Fvid2_processRequest(Fvid2_Handle       handle,
                              Fvid2_FrameList   *inFrameList,
-                             Fvid2_FrameList   *outFrameList);
+                             Fvid2_FrameList   *outFrameList,
+                             uint32_t           timeout);
 
 /**
  *  \brief An application calls Fvid2_getProcessedRequest to get the
old mode 100644 (file)
new mode 100755 (executable)
index 0bf2cc8..ca5ae8c
@@ -123,7 +123,8 @@ typedef int32_t (*Fvid2_DrvDequeue)(Fdrv_Handle     handle,
 /** \brief Typedef for FVID2 process frames function pointer. */
 typedef int32_t (*Fvid2_DrvProcessRequest)(Fdrv_Handle      handle,
                                            Fvid2_FrameList *inProcessList,
-                                           Fvid2_FrameList *outProcessList);
+                                           Fvid2_FrameList *outProcessList,
+                                           uint32_t         timeout);
 
 /** \brief Typedef for FVID2 get processed frames function pointer. */
 typedef int32_t (*Fvid2_DrvGetProcessedRequest)(Fdrv_Handle     handle,
index 17d9fb2245aa0f7537cbdb3c6ed35e1cb5835cca..c4851d5b0c36d4883abf3620c0be8bd82a1c8aa7 100755 (executable)
@@ -968,7 +968,8 @@ int32_t Fvid2_dequeue(Fvid2_Handle      handle,
  */
 int32_t Fvid2_processRequest(Fvid2_Handle     handle,
                              Fvid2_FrameList *inFrameList,
-                             Fvid2_FrameList *outFrameList)
+                             Fvid2_FrameList *outFrameList,
+                             uint32_t         timeout)
 {
     int32_t      retVal = FVID2_SOK;
     Fdm_Channel *channel;
@@ -987,7 +988,8 @@ int32_t Fvid2_processRequest(Fvid2_Handle     handle,
             retVal = channel->drv->drvOps->processRequestFxn(
                 channel->drvHandle,
                 inFrameList,
-                outFrameList);
+                outFrameList,
+                timeout);
         }
         else
         {