fix: disable indirects detection on non-PVC

Also add ULTs for getting indirect detection version product helper
methods.

Related-To: GSD-10453

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
This commit is contained in:
Dominik Dabek 2024-12-09 13:53:23 +00:00 committed by Compute-Runtime-Automation
parent 4467b1e8de
commit 894c74b62d
3 changed files with 13 additions and 2 deletions

View File

@ -118,7 +118,7 @@ bool ProductHelperHw<gfxProduct>::isDetectIndirectAccessInKernelSupported(const
template <PRODUCT_FAMILY gfxProduct>
uint32_t ProductHelperHw<gfxProduct>::getRequiredDetectIndirectVersion() const {
return IndirectDetectionVersions::requiredDetectIndirectVersionBindless;
return IndirectDetectionVersions::disabled;
}
template <PRODUCT_FAMILY gfxProduct>

View File

@ -1093,3 +1093,8 @@ HWTEST2_F(ProductHelperTest, givenProductHelperWhenQuery2DBlockStoreThenReturnTr
EXPECT_TRUE(productHelper->supports2DBlockStore());
}
HWTEST2_F(ProductHelperTest, givenProductHelperWhenGetRequiredDetectIndirectVersionCalledThenReturnCorrectVersion, IsNotPVC) {
EXPECT_EQ(IndirectDetectionVersions::disabled, productHelper->getRequiredDetectIndirectVersion());
EXPECT_EQ(IndirectDetectionVersions::requiredDetectIndirectVersionVectorCompiler, productHelper->getRequiredDetectIndirectVersionVC());
}

View File

@ -7,6 +7,7 @@
#include "shared/source/command_stream/stream_properties.h"
#include "shared/source/helpers/constants.h"
#include "shared/source/helpers/definitions/indirect_detection_versions.h"
#include "shared/source/kernel/kernel_descriptor.h"
#include "shared/source/os_interface/product_helper.h"
#include "shared/source/xe_hpc_core/hw_cmds_pvc.h"
@ -291,4 +292,9 @@ PVCTEST_F(PvcProductHelper, whenQueryingMaxNumSamplersThenReturnZero) {
PVCTEST_F(PvcProductHelper, givenProductHelperWhenAskingForReadOnlyResourceSupportThenTrueReturned) {
EXPECT_TRUE(productHelper->supportReadOnlyAllocations());
}
}
PVCTEST_F(PvcProductHelper, givenProductHelperWhenGetRequiredDetectIndirectVersionCalledThenReturnCorrectVersion) {
EXPECT_EQ(IndirectDetectionVersions::requiredDetectIndirectVersionPVC, productHelper->getRequiredDetectIndirectVersion());
EXPECT_EQ(IndirectDetectionVersions::requiredDetectIndirectVersionPVCVectorCompiler, productHelper->getRequiredDetectIndirectVersionVC());
}