the case of Buffer copy, Cache enable.
Change-Id: Idd2f96f13b6fc8fa54bc50d3931e9a8c158e82dd
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
/* get dpb count */
nOutbufs = pH264Dec->hMFCH264Handle.maxDPBNum;
- /* should be done before prepare output buffer */
- if (pOutbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
- ret = OMX_ErrorInsufficientResources;
- goto EXIT;
+ if ((pExynosOutputPort->bufferProcessType & BUFFER_COPY) == BUFFER_COPY) {
+ /* should be done before prepare output buffer */
+ if (pOutbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
+ ret = OMX_ErrorInsufficientResources;
+ goto EXIT;
+ }
}
pOutbufOps->Set_Shareable(hMFCHandle);
/* get dpb count */
nOutbufs = pMpeg4Dec->hMFCMpeg4Handle.maxDPBNum;
- /* should be done before prepare output buffer */
- if (pOutbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
- ret = OMX_ErrorInsufficientResources;
- goto EXIT;
+ if ((pExynosOutputPort->bufferProcessType & BUFFER_COPY) == BUFFER_COPY) {
+ /* should be done before prepare output buffer */
+ if (pOutbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
+ ret = OMX_ErrorInsufficientResources;
+ goto EXIT;
+ }
}
-
pOutbufOps->Set_Shareable(hMFCHandle);
if (pOutbufOps->Setup(hMFCHandle, nOutbufs) != VIDEO_ERROR_NONE) {
Exynos_OSAL_Log(EXYNOS_LOG_ERROR, "Failed to setup output buffer");
/* get dpb count */
nOutbufs = pVp8Dec->hMFCVp8Handle.maxDPBNum;
- /* should be done before prepare output buffer */
- if (pOutbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
- ret = OMX_ErrorInsufficientResources;
- goto EXIT;
+ if ((pExynosOutputPort->bufferProcessType & BUFFER_COPY) == BUFFER_COPY) {
+ /* should be done before prepare output buffer */
+ if (pOutbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
+ ret = OMX_ErrorInsufficientResources;
+ goto EXIT;
+ }
}
pOutbufOps->Set_Shareable(hMFCHandle);
inputBufferNumber = MFC_INPUT_BUFFER_NUM_MAX;
}
- /* should be done before prepare input buffer */
- if (pInbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
- ret = OMX_ErrorInsufficientResources;
- goto EXIT;
+ if ((pExynosInputPort->bufferProcessType & BUFFER_COPY) == BUFFER_COPY) {
+ /* should be done before prepare input buffer */
+ if (pInbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
+ ret = OMX_ErrorInsufficientResources;
+ goto EXIT;
+ }
}
/* set input buffer geometry */
inputBufferNumber = MFC_INPUT_BUFFER_NUM_MAX;
}
- /* should be done before prepare input buffer */
- if (pInbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
- ret = OMX_ErrorInsufficientResources;
- goto EXIT;
+ if ((pExynosInputPort->bufferProcessType & BUFFER_COPY) == BUFFER_COPY) {
+ /* should be done before prepare input buffer */
+ if (pInbufOps->Enable_Cacheable(hMFCHandle) != VIDEO_ERROR_NONE) {
+ ret = OMX_ErrorInsufficientResources;
+ goto EXIT;
+ }
}
/* set input buffer geometry */