Skip to content

Commit

Permalink
[VP] ZBB_LACE_FDFB
Browse files Browse the repository at this point in the history
ZBB Lace and FDFB
  • Loading branch information
jiafengy1 authored and intel-mediadev committed Oct 14, 2024
1 parent 345dad2 commit cbcc680
Show file tree
Hide file tree
Showing 10 changed files with 71 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -263,3 +263,10 @@ MOS_STATUS VpPlatformInterfaceXe_Hpm::ConfigureVpScalability(VP_MHWINTERFACE &vp

return MOS_STATUS_SUCCESS;
}

MOS_STATUS VpPlatformInterfaceXe_Hpm::InitVpFeatureSupportBits()
{
VP_FUNC_CALL();
VP_PUBLIC_CHK_STATUS_RETURN(VpPlatformInterface::InitVpFeatureSupportBits());
return MOS_STATUS_SUCCESS;
}
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,8 @@ class VpPlatformInterfaceXe_Hpm : public VpPlatformInterface
return true;
}

virtual MOS_STATUS InitVpFeatureSupportBits() override;

protected:
bool m_disableSfcDithering = false;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -254,3 +254,10 @@ MOS_STATUS VpPlatformInterfacsXe2_Lpm::InitPolicyRules(VP_POLICY_RULES &rules)
rules.is1K1DLutSurfaceInUse = true;
return MOS_STATUS_SUCCESS;
}

MOS_STATUS VpPlatformInterfacsXe2_Lpm::InitVpFeatureSupportBits()
{
VP_FUNC_CALL();
VP_PUBLIC_CHK_STATUS_RETURN(VpPlatformInterface::InitVpFeatureSupportBits());
return MOS_STATUS_SUCCESS;
}
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@ class VpPlatformInterfacsXe2_Lpm : public VpPlatformInterface

virtual MOS_STATUS InitPolicyRules(VP_POLICY_RULES &rules) override;

virtual MOS_STATUS InitVpFeatureSupportBits() override;

protected:
bool m_disableSfcDithering = false;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -263,3 +263,10 @@ MOS_STATUS VpPlatformInterfaceXe2_Hpm::InitPolicyRules(VP_POLICY_RULES &rules)
rules.isHDR33LutSizeEnabled = true;
return MOS_STATUS_SUCCESS;
}

MOS_STATUS VpPlatformInterfaceXe2_Hpm::InitVpFeatureSupportBits()
{
VP_FUNC_CALL();
VP_PUBLIC_CHK_STATUS_RETURN(VpPlatformInterface::InitVpFeatureSupportBits());
return MOS_STATUS_SUCCESS;
}
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@ class VpPlatformInterfaceXe2_Hpm : public VpPlatformInterface

virtual MOS_STATUS InitPolicyRules(VP_POLICY_RULES &rules) override;

virtual MOS_STATUS InitVpFeatureSupportBits() override;

virtual bool IsVeboxScalabilityWith4KNotSupported(
VP_MHWINTERFACE vpMhwInterface);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -185,3 +185,10 @@ MOS_STATUS VpPlatformInterfacesXe_Lpm_Plus::ConfigureVpScalability(VP_MHWINTERFA

return MOS_STATUS_SUCCESS;
}

MOS_STATUS VpPlatformInterfacesXe_Lpm_Plus::InitVpFeatureSupportBits()
{
VP_FUNC_CALL();
VP_PUBLIC_CHK_STATUS_RETURN(VpPlatformInterface::InitVpFeatureSupportBits());
return MOS_STATUS_SUCCESS;
}
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,8 @@ class VpPlatformInterfacesXe_Lpm_Plus : public VpPlatformInterface
return true;
}

virtual MOS_STATUS InitVpFeatureSupportBits() override;

protected:
bool m_disableSfcDithering = false;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,9 @@ MOS_STATUS VpFeatureManagerNext::Init(void* settings)
m_policy = MOS_New(Policy, m_vpInterface);
}
VP_PUBLIC_CHK_NULL_RETURN(m_policy);

vp::VpPlatformInterface *vpPlatformInterface = m_vpInterface.GetHwInterface()->m_vpPlatformInterface;
VP_PUBLIC_CHK_NULL_RETURN(vpPlatformInterface);
VP_PUBLIC_CHK_STATUS_RETURN(vpPlatformInterface->InitVpFeatureSupportBits());
VP_PUBLIC_CHK_STATUS_RETURN(RegisterFeatures());
return m_policy->Initialize();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,27 @@ class SfcRenderBase;
class VpKernelSet;
typedef void (*DelayLoadedFunc)(vp::VpPlatformInterface &vpPlatformInterface);

//! Struct VP_FEATURE_SUPPORT_BITS
//! \brief define VP support feature bits
//!
typedef struct _VP_FEATURE_SUPPORT_BITS
{
union
{
struct
{
#ifdef _MEDIA_RESERVED
#include "vp_feature_support_bits_ext.h"
#else
uint64_t vpFeatureSupportBitsReserved : 1;
#endif
};
uint64_t value = 0;
};
} VP_FEATURE_SUPPORT_BITS;

C_ASSERT(sizeof(_VP_FEATURE_SUPPORT_BITS) == sizeof(uint64_t));

struct VP_KERNEL_BINARY_ENTRY
{
const uint32_t *kernelBin = nullptr;
Expand Down Expand Up @@ -421,6 +442,16 @@ class VpPlatformInterface
return false;
}

virtual MOS_STATUS InitVpFeatureSupportBits()
{
return MOS_STATUS_SUCCESS;
}

virtual VP_FEATURE_SUPPORT_BITS& GetVpFeatureSupportBits()
{
return m_vpFeatureSupportBits;
}

protected:
PMOS_INTERFACE m_pOsInterface = nullptr;
VP_KERNEL_BINARY m_vpKernelBinary = {}; //!< vp kernels
Expand All @@ -445,7 +476,7 @@ class VpPlatformInterface

bool m_isRenderDisabled = false;
VpFrameTracker *m_frameTracker = nullptr;

VP_FEATURE_SUPPORT_BITS m_vpFeatureSupportBits = {};
MEDIA_CLASS_DEFINE_END(vp__VpPlatformInterface)
};

Expand Down

0 comments on commit cbcc680

Please sign in to comment.