/* * Copyright (C) 2025 Intel Corporation * * SPDX-License-Identifier: MIT * */ #include "shared/source/release_helper/release_helper.h" #include "shared/source/release_helper/release_helper_base.inl" #include "shared/source/xe2_hpg_core/hw_cmds_base.h" #include "release_definitions.h" namespace NEO { constexpr auto release = ReleaseType::release2002; template <> inline bool ReleaseHelperHw::isAuxSurfaceModeOverrideRequired() const { return true; } template <> bool ReleaseHelperHw::isLocalOnlyAllowed() const { return false; } template <> bool ReleaseHelperHw::isBindlessAddressingDisabled() const { return false; } template <> const SizeToPreferredSlmValueArray &ReleaseHelperHw::getSizeToPreferredSlmValue(bool isHeapless) const { using PREFERRED_SLM_ALLOCATION_SIZE = typename Xe2HpgCoreFamily::INTERFACE_DESCRIPTOR_DATA::PREFERRED_SLM_ALLOCATION_SIZE; static const SizeToPreferredSlmValueArray sizeToPreferredSlmValue = {{ {0, PREFERRED_SLM_ALLOCATION_SIZE::PREFERRED_SLM_ALLOCATION_SIZE_SLM_ENCODES_0K}, {16 * MemoryConstants::kiloByte, PREFERRED_SLM_ALLOCATION_SIZE::PREFERRED_SLM_ALLOCATION_SIZE_SLM_ENCODES_16K}, {32 * MemoryConstants::kiloByte, PREFERRED_SLM_ALLOCATION_SIZE::PREFERRED_SLM_ALLOCATION_SIZE_SLM_ENCODES_32K}, {64 * MemoryConstants::kiloByte, PREFERRED_SLM_ALLOCATION_SIZE::PREFERRED_SLM_ALLOCATION_SIZE_SLM_ENCODES_64K}, {96 * MemoryConstants::kiloByte, PREFERRED_SLM_ALLOCATION_SIZE::PREFERRED_SLM_ALLOCATION_SIZE_SLM_ENCODES_96K}, {128 * MemoryConstants::kiloByte, PREFERRED_SLM_ALLOCATION_SIZE::PREFERRED_SLM_ALLOCATION_SIZE_SLM_ENCODES_128K}, {std::numeric_limits::max(), PREFERRED_SLM_ALLOCATION_SIZE::PREFERRED_SLM_ALLOCATION_SIZE_SLM_ENCODES_160K}, }}; return sizeToPreferredSlmValue; } template <> bool ReleaseHelperHw::programmAdditionalStallPriorToBarrierWithTimestamp() const { return true; } } // namespace NEO #include "shared/source/release_helper/release_helper_common_xe2_hpg.inl" template class NEO::ReleaseHelperHw;