diff --git a/opencl/source/gen12lp/hw_info_tgllp.inl b/opencl/source/gen12lp/hw_info_tgllp.inl index 4b82f18442..ffbb69214a 100644 --- a/opencl/source/gen12lp/hw_info_tgllp.inl +++ b/opencl/source/gen12lp/hw_info_tgllp.inl @@ -192,12 +192,12 @@ void TGLLP_1x2x16::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTabl }; const HardwareInfo TGLLP::hwInfo = TGLLP_1x6x16::hwInfo; -const uint64_t TGLLP::defaultHardwareInfoConfig = 0x100060016; +const uint64_t TGLLP::defaultHardwareInfoConfig = 0x100060010; void setupTGLLPHardwareInfoImpl(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable, uint64_t hwInfoConfig) { - if (hwInfoConfig == 0x100060016) { + if (hwInfoConfig == 0x100060010) { TGLLP_1x6x16::setupHardwareInfo(hwInfo, setupFeatureTableAndWorkaroundTable); - } else if (hwInfoConfig == 0x100020016) { + } else if (hwInfoConfig == 0x100020010) { TGLLP_1x2x16::setupHardwareInfo(hwInfo, setupFeatureTableAndWorkaroundTable); } else if (hwInfoConfig == 0x0) { // Default config diff --git a/opencl/test/unit_test/gen12lp/tgllp/test_hw_info_config_tgllp.cpp b/opencl/test/unit_test/gen12lp/tgllp/test_hw_info_config_tgllp.cpp index e252d3eaf5..cd00ba0f18 100644 --- a/opencl/test/unit_test/gen12lp/tgllp/test_hw_info_config_tgllp.cpp +++ b/opencl/test/unit_test/gen12lp/tgllp/test_hw_info_config_tgllp.cpp @@ -13,10 +13,9 @@ using namespace NEO; -TEST(TgllpHwInfoConfig, givenHwInfoErrorneousConfigString) { - if (IGFX_TIGERLAKE_LP != productFamily) { - return; - } +using TgllpHwInfoConfig = ::testing::Test; + +TGLLPTEST_F(TgllpHwInfoConfig, givenHwInfoErrorneousConfigString) { HardwareInfo hwInfo; GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo; @@ -28,6 +27,25 @@ TEST(TgllpHwInfoConfig, givenHwInfoErrorneousConfigString) { EXPECT_EQ(0u, gtSystemInfo.EUCount); } +TGLLPTEST_F(TgllpHwInfoConfig, whenUsingCorrectConfigValueThenCorrectHwInfoIsReturned) { + HardwareInfo hwInfo; + GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo; + + uint64_t config = 0x100060010; + + gtSystemInfo = {0}; + hardwareInfoSetup[productFamily](&hwInfo, false, config); + EXPECT_EQ(1u, gtSystemInfo.SliceCount); + EXPECT_EQ(6u, gtSystemInfo.DualSubSliceCount); + + config = 0x100020010; + + gtSystemInfo = {0}; + hardwareInfoSetup[productFamily](&hwInfo, false, config); + EXPECT_EQ(1u, gtSystemInfo.SliceCount); + EXPECT_EQ(2u, gtSystemInfo.DualSubSliceCount); +} + using TgllpHwInfo = ::testing::Test; TGLLPTEST_F(TgllpHwInfo, givenBoolWhenCallTgllpHardwareInfoSetupThenFeatureTableAndWorkaroundTableAreSetCorrect) { @@ -39,8 +57,8 @@ TGLLPTEST_F(TgllpHwInfo, givenBoolWhenCallTgllpHardwareInfoSetupThenFeatureTable WorkaroundTable &workaroundTable = hwInfo.workaroundTable; uint64_t configs[] = { - 0x100060016, - 0x100020016}; + 0x100060010, + 0x100020010}; for (auto &config : configs) { for (auto setParamBool : boolValue) { @@ -82,7 +100,7 @@ TGLLPTEST_F(TgllpHwInfo, givenBoolWhenCallTgllpHardwareInfoSetupThenFeatureTable TGLLPTEST_F(TgllpHwInfo, givenHwInfoConfigStringThenAfterSetupResultingVmeIsDisabled) { HardwareInfo hwInfo; - uint64_t config = 0x100060016; + uint64_t config = 0x100060010; hardwareInfoSetup[productFamily](&hwInfo, false, config); EXPECT_FALSE(hwInfo.capabilityTable.ftrSupportsVmeAvcTextureSampler); EXPECT_FALSE(hwInfo.capabilityTable.ftrSupportsVmeAvcPreemption); diff --git a/opencl/test/unit_test/os_interface/hw_info_config_tests.cpp b/opencl/test/unit_test/os_interface/hw_info_config_tests.cpp index 7de9b44210..6b0c5b604f 100644 --- a/opencl/test/unit_test/os_interface/hw_info_config_tests.cpp +++ b/opencl/test/unit_test/os_interface/hw_info_config_tests.cpp @@ -66,6 +66,7 @@ TEST_F(HwInfoConfigTest, givenHwInfoConfigSetHwInfoValuesFromConfigStringReturns success = parseHwInfoConfigString("2x4x16", hwInfoConfig); EXPECT_TRUE(success); + EXPECT_EQ(0x200040010u, hwInfoConfig); setHwInfoValuesFromConfig(hwInfoConfig, outHwInfo); EXPECT_EQ(outHwInfo.gtSystemInfo.SliceCount, 2u); EXPECT_EQ(outHwInfo.gtSystemInfo.SubSliceCount, 8u);