diff --git a/media_softlet/agnostic/common/vp/hal/pipeline/vp_base.h b/media_softlet/agnostic/common/vp/hal/pipeline/vp_base.h index 7e2f01fce81..40304dbcd61 100644 --- a/media_softlet/agnostic/common/vp/hal/pipeline/vp_base.h +++ b/media_softlet/agnostic/common/vp/hal/pipeline/vp_base.h @@ -184,6 +184,11 @@ class VpBase VpExtIntfBase *extIntf = nullptr; + virtual bool IsOclFCEnabled() + { + return false; + } + protected: virtual bool IsApoEnabled() { diff --git a/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline.h b/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline.h index 4ee7967bb43..ba9f38d8fa5 100644 --- a/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline.h +++ b/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline.h @@ -227,6 +227,11 @@ class VpPipeline : public MediaPipeline return m_allocator; } + virtual bool IsOclFCEnabled() + { + return m_vpMhwInterface.m_userFeatureControl->EnableOclFC(); + } + // for debug purpose #if (_DEBUG || _RELEASE_INTERNAL) //! diff --git a/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline_adapter.h b/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline_adapter.h index 3103b4a0354..705ad036ba1 100644 --- a/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline_adapter.h +++ b/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline_adapter.h @@ -107,6 +107,10 @@ class VpPipelineAdapter : public VpPipelineAdapterBase virtual MOS_STATUS Execute(PVP_PIPELINE_PARAMS params) = 0; virtual void Destroy(); + virtual bool IsOclFCEnabled() + { + return m_vpPipeline->IsOclFCEnabled(); + } protected: //! diff --git a/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline_adapter_base.cpp b/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline_adapter_base.cpp index 6a4c1c56764..68f577a754d 100644 --- a/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline_adapter_base.cpp +++ b/media_softlet/agnostic/common/vp/hal/pipeline/vp_pipeline_adapter_base.cpp @@ -31,6 +31,7 @@ #include "vp_debug.h" #include "vp_user_setting.h" #include "renderhal_platform_interface.h" +#include "vp_user_feature_control.h" VpPipelineAdapterBase::VpPipelineAdapterBase( vp::VpPlatformInterface &vpPlatformInterface,