Limit pipeline selection to Xe

Related-To: NEO-6624
Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
This commit is contained in:
Daniel Chabrowski
2022-04-26 12:37:40 +00:00
committed by Compute-Runtime-Automation
parent b429df1b55
commit b42a49eb4b
24 changed files with 42 additions and 37 deletions

View File

@@ -166,7 +166,7 @@ void HardwareParse::findHardwareCommands<GenGfxFamily>(IndirectHeap *dsh) {
cmdPipelineSelect = *itorPipelineSelect;
}
itorMediaVfeState = find<CFE_STATE *>(itorPipelineSelect, itorWalker);
itorMediaVfeState = find<CFE_STATE *>(requiresPipelineSelectBeforeMediaState<GenGfxFamily>() ? itorPipelineSelect : cmdList.begin(), itorWalker);
if (itorMediaVfeState != itorWalker) {
cmdMediaVfeState = *itorMediaVfeState;
}

View File

@@ -52,6 +52,11 @@ struct HardwareParse {
template <typename FamilyType>
void findCsrBaseAddress();
template <typename FamilyType>
bool requiresPipelineSelectBeforeMediaState() {
return true;
}
template <typename FamilyType>
void findHardwareCommands();

View File

@@ -35,7 +35,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, CommandEncodeStatesTest, givenCommandContainerWhenN
EXPECT_FALSE(cmd->getLargeGrfMode());
}
HWCMDTEST_F(IGFX_XE_HP_CORE, CommandEncodeStatesTest, givenCommandContainerWhenAdjustPipelineSelectCalledThenCommandHasGpgpuType) {
HWTEST2_F(CommandEncodeStatesTest, givenCommandContainerWhenAdjustPipelineSelectCalledThenCommandHasGpgpuType, IsWithinXeGfxFamily) {
using PIPELINE_SELECT = typename FamilyType::PIPELINE_SELECT;
EncodeComputeMode<FamilyType>::adjustPipelineSelect(*cmdContainer.get(), descriptor);
GenCmdList commands;
@@ -119,7 +119,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, CommandEncodeStatesTest, givenCommandContainerWithK
EXPECT_TRUE(cmd->getSystolicModeEnable());
}
HWCMDTEST_F(IGFX_XE_HP_CORE, CommandEncodeStatesTest, givenCommandContainerWithNoKernelDpasThenSystolicModeIsNotEnabled) {
HWTEST2_F(CommandEncodeStatesTest, givenCommandContainerWithNoKernelDpasThenSystolicModeIsNotEnabled, IsWithinXeGfxFamily) {
using PIPELINE_SELECT = typename FamilyType::PIPELINE_SELECT;
descriptor.kernelAttributes.flags.usesSpecialPipelineSelectMode = false;
EncodeComputeMode<FamilyType>::adjustPipelineSelect(*cmdContainer.get(), descriptor);
@@ -133,7 +133,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, CommandEncodeStatesTest, givenCommandContainerWithN
EXPECT_FALSE(cmd->getSystolicModeEnable());
}
HWCMDTEST_F(IGFX_XE_HP_CORE, CommandEncodeStatesTest, givenDebugModeToOverrideSystolicModeToTrueWhenItIsSetThenPipelineSelectContainsProperBits) {
HWTEST2_F(CommandEncodeStatesTest, givenDebugModeToOverrideSystolicModeToTrueWhenItIsSetThenPipelineSelectContainsProperBits, IsWithinXeGfxFamily) {
DebugManagerStateRestore restorer;
DebugManager.flags.OverrideSystolicPipelineSelect.set(1);
@@ -150,7 +150,7 @@ HWCMDTEST_F(IGFX_XE_HP_CORE, CommandEncodeStatesTest, givenDebugModeToOverrideSy
EXPECT_TRUE(cmd->getSystolicModeEnable());
}
HWCMDTEST_F(IGFX_XE_HP_CORE, CommandEncodeStatesTest, givenDebugModeToOverrideSystolicModeToFalseWhenItIsSetThenPipelineSelectContainsProperBits) {
HWTEST2_F(CommandEncodeStatesTest, givenDebugModeToOverrideSystolicModeToFalseWhenItIsSetThenPipelineSelectContainsProperBits, IsWithinXeGfxFamily) {
DebugManagerStateRestore restorer;
DebugManager.flags.OverrideSystolicPipelineSelect.set(0);