mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-03 06:49:52 +08:00
Remove redundant query for device id and revision
Related-To: NEO-6999 Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
5bee8ebd35
commit
70cf43fd6e
@@ -243,7 +243,7 @@ int DrmMock::ioctl(DrmIoctl request, void *arg) {
|
||||
auto queryItemArg = reinterpret_cast<QueryItem *>(queryArg->itemsPtr);
|
||||
storedQueryItem = *queryItemArg;
|
||||
|
||||
auto realEuCount = rootDeviceEnvironment.getHardwareInfo()->gtSystemInfo.EUCount;
|
||||
auto realEuCount = std::max(rootDeviceEnvironment.getHardwareInfo()->gtSystemInfo.EUCount, static_cast<uint32_t>(this->storedEUVal));
|
||||
auto dataSize = static_cast<size_t>(std::ceil(realEuCount / 8.0));
|
||||
|
||||
if (queryItemArg->length == 0) {
|
||||
|
||||
@@ -14,8 +14,6 @@ struct HwInfoConfigTestLinuxEhl : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
|
||||
drm->storedDeviceID = IEHL_1x4x8_SUPERSKU_DEVICE_A0_ID;
|
||||
|
||||
drm->storedSSVal = 8;
|
||||
}
|
||||
};
|
||||
@@ -24,8 +22,6 @@ EHLTEST_F(HwInfoConfigTestLinuxEhl, GivenEhlThenHwInfoIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfigHw<IGFX_ELKHARTLAKE>::get();
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -34,19 +30,9 @@ EHLTEST_F(HwInfoConfigTestLinuxEhl, GivenEhlThenHwInfoIsCorrect) {
|
||||
EHLTEST_F(HwInfoConfigTestLinuxEhl, GivenInvalidDeviceIdWhenConfiguringHwInfoThenNegativeOneReturned) {
|
||||
auto hwInfoConfig = HwInfoConfigHw<IGFX_ELKHARTLAKE>::get();
|
||||
|
||||
drm->storedRetValForDeviceID = -1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceID = 0;
|
||||
drm->storedRetValForDeviceRevID = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceRevID = 0;
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
auto ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForEUVal = 0;
|
||||
@@ -63,11 +49,12 @@ TEST(EhlHwInfoTests, WhenGtIsSetupThenGtSystemInfoIsCorrect) {
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &EHL_HW_CONFIG::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -13,8 +13,6 @@ using namespace NEO;
|
||||
struct HwInfoConfigTestLinuxIcllp : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
|
||||
drm->storedDeviceID = IICL_LP_GT1_MOB_DEVICE_F0_ID;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -22,8 +20,6 @@ ICLLPTEST_F(HwInfoConfigTestLinuxIcllp, GivenIcllpThenHwInfoIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -35,19 +31,9 @@ ICLLPTEST_F(HwInfoConfigTestLinuxIcllp, GivenIcllpThenHwInfoIsCorrect) {
|
||||
ICLLPTEST_F(HwInfoConfigTestLinuxIcllp, GivenInvalidDeviceIdWhenConfiguringHwInfoThenNegativeOneReturned) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedRetValForDeviceID = -1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceID = 0;
|
||||
drm->storedRetValForDeviceRevID = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceRevID = 0;
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
auto ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForEUVal = 0;
|
||||
@@ -61,16 +47,16 @@ class IcllpHwInfoTests : public ::testing::Test {};
|
||||
typedef ::testing::Types<ICLLP_1x8x8, ICLLP_1x4x8, ICLLP_1x6x8> icllpTestTypes;
|
||||
TYPED_TEST_CASE(IcllpHwInfoTests, icllpTestTypes);
|
||||
TYPED_TEST(IcllpHwInfoTests, WhenGettingSystemInfoThenParamsAreValid) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -14,8 +14,6 @@ struct HwInfoConfigTestLinuxLkf : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
|
||||
drm->storedDeviceID = ILKF_1x8x8_DESK_DEVICE_F0_ID;
|
||||
|
||||
drm->storedSSVal = 8;
|
||||
}
|
||||
};
|
||||
@@ -24,8 +22,6 @@ LKFTEST_F(HwInfoConfigTestLinuxLkf, configureHwInfoLkf) {
|
||||
auto hwInfoConfig = HwInfoConfigHw<IGFX_LAKEFIELD>::get();
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -36,19 +32,9 @@ LKFTEST_F(HwInfoConfigTestLinuxLkf, configureHwInfoLkf) {
|
||||
LKFTEST_F(HwInfoConfigTestLinuxLkf, negative) {
|
||||
auto hwInfoConfig = HwInfoConfigHw<IGFX_LAKEFIELD>::get();
|
||||
|
||||
drm->storedRetValForDeviceID = -1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceID = 0;
|
||||
drm->storedRetValForDeviceRevID = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceRevID = 0;
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
auto ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForEUVal = 0;
|
||||
@@ -67,11 +53,12 @@ TYPED_TEST(LkfHwInfoTests, gtSetupIsCorrect) {
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -19,8 +19,6 @@ struct HwInfoConfigTestLinuxAdlp : HwInfoConfigTestLinux {
|
||||
|
||||
drm = new DrmMock(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
osInterface->setDriverModel(std::unique_ptr<DriverModel>(drm));
|
||||
|
||||
drm->storedDeviceID = IGFX_ALDERLAKE_P;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -28,8 +26,6 @@ ADLPTEST_F(HwInfoConfigTestLinuxAdlp, WhenConfiguringHwInfoThenInfoIsSetCorrectl
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(static_cast<unsigned short>(drm->storedDeviceID), outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ(static_cast<unsigned short>(drm->storedDeviceRevID), outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ(static_cast<uint32_t>(drm->storedEUVal), outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ(static_cast<uint32_t>(drm->storedSSVal), outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -40,19 +36,9 @@ ADLPTEST_F(HwInfoConfigTestLinuxAdlp, WhenConfiguringHwInfoThenInfoIsSetCorrectl
|
||||
ADLPTEST_F(HwInfoConfigTestLinuxAdlp, GivenInvalidDeviceIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedRetValForDeviceID = -1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceID = 0;
|
||||
drm->storedRetValForDeviceRevID = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceRevID = 0;
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
auto ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForEUVal = 0;
|
||||
@@ -77,79 +63,84 @@ using AdlpConfigHwInfoTests = ::testing::Test;
|
||||
using adlpConfigTestTypes = ::testing::Types<ADLP_CONFIG>;
|
||||
TYPED_TEST_CASE(AdlpConfigHwInfoTests, adlpConfigTestTypes);
|
||||
TYPED_TEST(AdlpConfigHwInfoTests, givenAdlpConfigWhenSetupHardwareInfoThenGtSystemInfoAndWaAndFtrTablesAreSetCorrect) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
auto &featureTable = hwInfo.featureTable;
|
||||
auto &workaroundTable = hwInfo.workaroundTable;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
{
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
const auto &featureTable = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->featureTable;
|
||||
const auto &workaroundTable = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->workaroundTable;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_EQ(8u, gtSystemInfo.CsrSizeInMb);
|
||||
EXPECT_FALSE(gtSystemInfo.IsL3HashModeEnabled);
|
||||
EXPECT_FALSE(gtSystemInfo.IsDynamicallyPopulated);
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_EQ(8u, gtSystemInfo.CsrSizeInMb);
|
||||
EXPECT_FALSE(gtSystemInfo.IsL3HashModeEnabled);
|
||||
EXPECT_FALSE(gtSystemInfo.IsDynamicallyPopulated);
|
||||
|
||||
EXPECT_FALSE(featureTable.flags.ftrL3IACoherency);
|
||||
EXPECT_FALSE(featureTable.flags.ftrPPGTT);
|
||||
EXPECT_FALSE(featureTable.flags.ftrSVM);
|
||||
EXPECT_FALSE(featureTable.flags.ftrIA32eGfxPTEs);
|
||||
EXPECT_FALSE(featureTable.flags.ftrStandardMipTailFormat);
|
||||
EXPECT_FALSE(featureTable.flags.ftrTranslationTable);
|
||||
EXPECT_FALSE(featureTable.flags.ftrUserModeTranslationTable);
|
||||
EXPECT_FALSE(featureTable.flags.ftrTileMappedResource);
|
||||
EXPECT_FALSE(featureTable.flags.ftrEnableGuC);
|
||||
EXPECT_FALSE(featureTable.flags.ftrFbc);
|
||||
EXPECT_FALSE(featureTable.flags.ftrFbc2AddressTranslation);
|
||||
EXPECT_FALSE(featureTable.flags.ftrFbcBlitterTracking);
|
||||
EXPECT_FALSE(featureTable.flags.ftrFbcCpuTracking);
|
||||
EXPECT_FALSE(featureTable.flags.ftrTileY);
|
||||
EXPECT_FALSE(featureTable.flags.ftrAstcHdr2D);
|
||||
EXPECT_FALSE(featureTable.flags.ftrAstcLdr2D);
|
||||
EXPECT_FALSE(featureTable.flags.ftr3dMidBatchPreempt);
|
||||
EXPECT_FALSE(featureTable.flags.ftrGpGpuMidBatchPreempt);
|
||||
EXPECT_FALSE(featureTable.flags.ftrGpGpuThreadGroupLevelPreempt);
|
||||
EXPECT_FALSE(featureTable.flags.ftrPerCtxtPreemptionGranularityControl);
|
||||
|
||||
EXPECT_FALSE(workaroundTable.flags.wa4kAlignUVOffsetNV12LinearSurface);
|
||||
EXPECT_FALSE(workaroundTable.flags.waEnablePreemptionGranularityControlByUMD);
|
||||
EXPECT_FALSE(workaroundTable.flags.waUntypedBufferCompression);
|
||||
EXPECT_FALSE(featureTable.flags.ftrL3IACoherency);
|
||||
EXPECT_FALSE(featureTable.flags.ftrPPGTT);
|
||||
EXPECT_FALSE(featureTable.flags.ftrSVM);
|
||||
EXPECT_FALSE(featureTable.flags.ftrIA32eGfxPTEs);
|
||||
EXPECT_FALSE(featureTable.flags.ftrStandardMipTailFormat);
|
||||
EXPECT_FALSE(featureTable.flags.ftrTranslationTable);
|
||||
EXPECT_FALSE(featureTable.flags.ftrUserModeTranslationTable);
|
||||
EXPECT_FALSE(featureTable.flags.ftrTileMappedResource);
|
||||
EXPECT_FALSE(featureTable.flags.ftrEnableGuC);
|
||||
EXPECT_FALSE(featureTable.flags.ftrFbc);
|
||||
EXPECT_FALSE(featureTable.flags.ftrFbc2AddressTranslation);
|
||||
EXPECT_FALSE(featureTable.flags.ftrFbcBlitterTracking);
|
||||
EXPECT_FALSE(featureTable.flags.ftrFbcCpuTracking);
|
||||
EXPECT_FALSE(featureTable.flags.ftrTileY);
|
||||
EXPECT_FALSE(featureTable.flags.ftrAstcHdr2D);
|
||||
EXPECT_FALSE(featureTable.flags.ftrAstcLdr2D);
|
||||
EXPECT_FALSE(featureTable.flags.ftr3dMidBatchPreempt);
|
||||
EXPECT_FALSE(featureTable.flags.ftrGpGpuMidBatchPreempt);
|
||||
EXPECT_FALSE(featureTable.flags.ftrGpGpuThreadGroupLevelPreempt);
|
||||
EXPECT_FALSE(featureTable.flags.ftrPerCtxtPreemptionGranularityControl);
|
||||
|
||||
EXPECT_FALSE(workaroundTable.flags.wa4kAlignUVOffsetNV12LinearSurface);
|
||||
EXPECT_FALSE(workaroundTable.flags.waEnablePreemptionGranularityControlByUMD);
|
||||
EXPECT_FALSE(workaroundTable.flags.waUntypedBufferCompression);
|
||||
}
|
||||
ret = drm.setupHardwareInfo(&device, true);
|
||||
{
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
const auto &featureTable = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->featureTable;
|
||||
const auto &workaroundTable = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->workaroundTable;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_EQ(8u, gtSystemInfo.CsrSizeInMb);
|
||||
EXPECT_FALSE(gtSystemInfo.IsL3HashModeEnabled);
|
||||
EXPECT_FALSE(gtSystemInfo.IsDynamicallyPopulated);
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_EQ(8u, gtSystemInfo.CsrSizeInMb);
|
||||
EXPECT_FALSE(gtSystemInfo.IsL3HashModeEnabled);
|
||||
EXPECT_FALSE(gtSystemInfo.IsDynamicallyPopulated);
|
||||
|
||||
EXPECT_TRUE(featureTable.flags.ftrL3IACoherency);
|
||||
EXPECT_TRUE(featureTable.flags.ftrPPGTT);
|
||||
EXPECT_TRUE(featureTable.flags.ftrSVM);
|
||||
EXPECT_TRUE(featureTable.flags.ftrIA32eGfxPTEs);
|
||||
EXPECT_TRUE(featureTable.flags.ftrStandardMipTailFormat);
|
||||
EXPECT_TRUE(featureTable.flags.ftrTranslationTable);
|
||||
EXPECT_TRUE(featureTable.flags.ftrUserModeTranslationTable);
|
||||
EXPECT_TRUE(featureTable.flags.ftrTileMappedResource);
|
||||
EXPECT_TRUE(featureTable.flags.ftrEnableGuC);
|
||||
EXPECT_TRUE(featureTable.flags.ftrFbc);
|
||||
EXPECT_TRUE(featureTable.flags.ftrFbc2AddressTranslation);
|
||||
EXPECT_TRUE(featureTable.flags.ftrFbcBlitterTracking);
|
||||
EXPECT_TRUE(featureTable.flags.ftrFbcCpuTracking);
|
||||
EXPECT_FALSE(featureTable.flags.ftrTileY);
|
||||
EXPECT_TRUE(featureTable.flags.ftrAstcHdr2D);
|
||||
EXPECT_TRUE(featureTable.flags.ftrAstcLdr2D);
|
||||
EXPECT_TRUE(featureTable.flags.ftr3dMidBatchPreempt);
|
||||
EXPECT_TRUE(featureTable.flags.ftrGpGpuMidBatchPreempt);
|
||||
EXPECT_TRUE(featureTable.flags.ftrGpGpuThreadGroupLevelPreempt);
|
||||
EXPECT_TRUE(featureTable.flags.ftrPerCtxtPreemptionGranularityControl);
|
||||
EXPECT_TRUE(featureTable.flags.ftrL3IACoherency);
|
||||
EXPECT_TRUE(featureTable.flags.ftrPPGTT);
|
||||
EXPECT_TRUE(featureTable.flags.ftrSVM);
|
||||
EXPECT_TRUE(featureTable.flags.ftrIA32eGfxPTEs);
|
||||
EXPECT_TRUE(featureTable.flags.ftrStandardMipTailFormat);
|
||||
EXPECT_TRUE(featureTable.flags.ftrTranslationTable);
|
||||
EXPECT_TRUE(featureTable.flags.ftrUserModeTranslationTable);
|
||||
EXPECT_TRUE(featureTable.flags.ftrTileMappedResource);
|
||||
EXPECT_TRUE(featureTable.flags.ftrEnableGuC);
|
||||
EXPECT_TRUE(featureTable.flags.ftrFbc);
|
||||
EXPECT_TRUE(featureTable.flags.ftrFbc2AddressTranslation);
|
||||
EXPECT_TRUE(featureTable.flags.ftrFbcBlitterTracking);
|
||||
EXPECT_TRUE(featureTable.flags.ftrFbcCpuTracking);
|
||||
EXPECT_FALSE(featureTable.flags.ftrTileY);
|
||||
EXPECT_TRUE(featureTable.flags.ftrAstcHdr2D);
|
||||
EXPECT_TRUE(featureTable.flags.ftrAstcLdr2D);
|
||||
EXPECT_TRUE(featureTable.flags.ftr3dMidBatchPreempt);
|
||||
EXPECT_TRUE(featureTable.flags.ftrGpGpuMidBatchPreempt);
|
||||
EXPECT_TRUE(featureTable.flags.ftrGpGpuThreadGroupLevelPreempt);
|
||||
EXPECT_TRUE(featureTable.flags.ftrPerCtxtPreemptionGranularityControl);
|
||||
|
||||
EXPECT_TRUE(workaroundTable.flags.wa4kAlignUVOffsetNV12LinearSurface);
|
||||
EXPECT_TRUE(workaroundTable.flags.waEnablePreemptionGranularityControlByUMD);
|
||||
EXPECT_TRUE(workaroundTable.flags.waUntypedBufferCompression);
|
||||
EXPECT_TRUE(workaroundTable.flags.wa4kAlignUVOffsetNV12LinearSurface);
|
||||
EXPECT_TRUE(workaroundTable.flags.waEnablePreemptionGranularityControlByUMD);
|
||||
EXPECT_TRUE(workaroundTable.flags.waUntypedBufferCompression);
|
||||
}
|
||||
}
|
||||
|
||||
TYPED_TEST(AdlpConfigHwInfoTests, givenSliceCountZeroWhenSetupHardwareInfoThenNotZeroValuesSetInGtSystemInfo) {
|
||||
|
||||
@@ -18,8 +18,6 @@ struct HwInfoConfigTestLinuxAdls : HwInfoConfigTestLinux {
|
||||
|
||||
drm = new DrmMock(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
osInterface->setDriverModel(std::unique_ptr<DriverModel>(drm));
|
||||
|
||||
drm->storedDeviceID = IGFX_ALDERLAKE_S;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -27,8 +25,6 @@ ADLSTEST_F(HwInfoConfigTestLinuxAdls, WhenConfiguringHwInfoThenConfigIsCorrect)
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(static_cast<unsigned short>(drm->storedDeviceID), outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ(static_cast<unsigned short>(drm->storedDeviceRevID), outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ(static_cast<uint32_t>(drm->storedEUVal), outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ(static_cast<uint32_t>(drm->storedSSVal), outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -39,19 +35,9 @@ ADLSTEST_F(HwInfoConfigTestLinuxAdls, WhenConfiguringHwInfoThenConfigIsCorrect)
|
||||
ADLSTEST_F(HwInfoConfigTestLinuxAdls, GivenIncorrectDataWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedRetValForDeviceID = -1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceID = 0;
|
||||
drm->storedRetValForDeviceRevID = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceRevID = 0;
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
auto ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForEUVal = 0;
|
||||
@@ -66,11 +52,12 @@ TEST(AdlsHwInfoTests, WhenSettingUpHwInfoThenConfigIsCorrect) {
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &ADLS_HW_CONFIG::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -18,8 +18,6 @@ struct HwInfoConfigTestLinuxRkl : HwInfoConfigTestLinux {
|
||||
|
||||
drm = new DrmMock(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
osInterface->setDriverModel(std::unique_ptr<DriverModel>(drm));
|
||||
|
||||
drm->storedDeviceID = 0x4C8A;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -27,8 +25,6 @@ RKLTEST_F(HwInfoConfigTestLinuxRkl, WhenConfiguringHwInfoThenConfigIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -39,19 +35,9 @@ RKLTEST_F(HwInfoConfigTestLinuxRkl, WhenConfiguringHwInfoThenConfigIsCorrect) {
|
||||
RKLTEST_F(HwInfoConfigTestLinuxRkl, GivenIncorrectDataWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedRetValForDeviceID = -1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceID = 0;
|
||||
drm->storedRetValForDeviceRevID = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceRevID = 0;
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
auto ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForEUVal = 0;
|
||||
@@ -66,11 +52,12 @@ TEST(RklHwInfoTests, WhenSettingUpHwInfoThenConfigIsCorrect) {
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &RKL_HW_CONFIG::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -21,8 +21,6 @@ struct HwInfoConfigTestLinuxTgllp : HwInfoConfigTestLinux {
|
||||
|
||||
drm = new DrmMock(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
osInterface->setDriverModel(std::unique_ptr<DriverModel>(drm));
|
||||
|
||||
drm->storedDeviceID = 0xFF20;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -41,8 +39,6 @@ TGLLPTEST_F(HwInfoConfigTestLinuxTgllp, configureHwInfo) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -53,19 +49,9 @@ TGLLPTEST_F(HwInfoConfigTestLinuxTgllp, configureHwInfo) {
|
||||
TGLLPTEST_F(HwInfoConfigTestLinuxTgllp, negative) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedRetValForDeviceID = -1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceID = 0;
|
||||
drm->storedRetValForDeviceRevID = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceRevID = 0;
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
auto ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForEUVal = 0;
|
||||
@@ -79,16 +65,16 @@ class TgllpHwInfoTests : public ::testing::Test {};
|
||||
typedef ::testing::Types<TGLLP_1x6x16> tgllpTestTypes;
|
||||
TYPED_TEST_CASE(TgllpHwInfoTests, tgllpTestTypes);
|
||||
TYPED_TEST(TgllpHwInfoTests, gtSetupIsCorrect) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -13,7 +13,6 @@ using namespace NEO;
|
||||
struct HwInfoConfigTestLinuxBdw : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
drm->storedDeviceID = 0x1616;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -22,57 +21,30 @@ BDWTEST_F(HwInfoConfigTestLinuxBdw, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
drm->storedSSVal = 3;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x1602;
|
||||
pInHwInfo.platform.usDeviceID = 0x1602;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x1626;
|
||||
pInHwInfo.platform.usDeviceID = 0x1626;
|
||||
|
||||
drm->storedSSVal = 6;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(2u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
}
|
||||
|
||||
BDWTEST_F(HwInfoConfigTestLinuxBdw, GivenUnknownDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedDeviceID = 0;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
}
|
||||
|
||||
BDWTEST_F(HwInfoConfigTestLinuxBdw, GivenFailedIoctlDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceID = -2;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-2, ret);
|
||||
}
|
||||
|
||||
BDWTEST_F(HwInfoConfigTestLinuxBdw, GivenFailedIoctlDevRevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceRevID = -3;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-3, ret);
|
||||
}
|
||||
|
||||
BDWTEST_F(HwInfoConfigTestLinuxBdw, GivenFailedIoctlEuCountWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -4;
|
||||
@@ -89,14 +61,6 @@ BDWTEST_F(HwInfoConfigTestLinuxBdw, GivenFailedIoctlSsCountWhenConfiguringHwInfo
|
||||
EXPECT_EQ(-5, ret);
|
||||
}
|
||||
|
||||
BDWTEST_F(HwInfoConfigTestLinuxBdw, GivenWaFlagsWhenConfiguringHwInfoThenInformationIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedDeviceRevID = 0;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
}
|
||||
|
||||
BDWTEST_F(HwInfoConfigTestLinuxBdw, WhenConfiguringHwInfoThenEdramInformationIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
@@ -105,14 +69,14 @@ BDWTEST_F(HwInfoConfigTestLinuxBdw, WhenConfiguringHwInfoThenEdramInformationIsC
|
||||
EXPECT_EQ_VAL(0u, outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(0u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x1622;
|
||||
pInHwInfo.platform.usDeviceID = 0x1622;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((128u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(1u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x162A;
|
||||
pInHwInfo.platform.usDeviceID = 0x162A;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((128u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
@@ -125,16 +89,16 @@ class BdwHwInfoTests : public ::testing::Test {
|
||||
typedef ::testing::Types<BDW_1x2x6, BDW_1x3x6, BDW_1x3x8, BDW_2x3x8> bdwTestTypes;
|
||||
TYPED_TEST_CASE(BdwHwInfoTests, bdwTestTypes);
|
||||
TYPED_TEST(BdwHwInfoTests, WhenGtIsSetupThenGtSystemInfoIsCorrect) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -14,7 +14,6 @@ using namespace NEO;
|
||||
struct HwInfoConfigTestLinuxBxt : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
drm->storedDeviceID = 0x5A84;
|
||||
|
||||
drm->storedEUVal = 18;
|
||||
drm->storedHasPooledEU = 1;
|
||||
@@ -23,12 +22,9 @@ struct HwInfoConfigTestLinuxBxt : HwInfoConfigTestLinux {
|
||||
};
|
||||
|
||||
BXTTEST_F(HwInfoConfigTestLinuxBxt, WhenConfiguringHwInfoThenConfigIsCorrect) {
|
||||
drm->storedDeviceRevID = 0;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ((unsigned int)drm->storedHasPooledEU, outHwInfo.featureTable.flags.ftrPooledEuEnabled);
|
||||
@@ -40,13 +36,10 @@ BXTTEST_F(HwInfoConfigTestLinuxBxt, WhenConfiguringHwInfoThenConfigIsCorrect) {
|
||||
//constant sysInfo/ftr flags
|
||||
EXPECT_TRUE(outHwInfo.gtSystemInfo.VEBoxInfo.IsValid);
|
||||
|
||||
drm->storedDeviceID = 0x5A85;
|
||||
pInHwInfo.platform.usDeviceID = 0x5A85;
|
||||
drm->storedMinEUinPool = 6;
|
||||
drm->storedDeviceRevID = 4;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ((unsigned int)drm->storedHasPooledEU, outHwInfo.featureTable.flags.ftrPooledEuEnabled);
|
||||
@@ -54,12 +47,10 @@ BXTTEST_F(HwInfoConfigTestLinuxBxt, WhenConfiguringHwInfoThenConfigIsCorrect) {
|
||||
EXPECT_EQ((outHwInfo.gtSystemInfo.EUCount - outHwInfo.gtSystemInfo.EuCountPerPoolMin), outHwInfo.gtSystemInfo.EuCountPerPoolMax);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x5A85;
|
||||
pInHwInfo.platform.usDeviceID = 0x5A85;
|
||||
drm->storedMinEUinPool = 9;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ((unsigned int)drm->storedHasPooledEU, outHwInfo.featureTable.flags.ftrPooledEuEnabled);
|
||||
@@ -76,27 +67,6 @@ BXTTEST_F(HwInfoConfigTestLinuxBxt, WhenConfiguringHwInfoThenConfigIsCorrect) {
|
||||
EXPECT_EQ(200000, outKmdNotifyProperties.delayQuickKmdSleepForSporadicWaitsMicroseconds);
|
||||
}
|
||||
|
||||
BXTTEST_F(HwInfoConfigTestLinuxBxt, GivenUnknownDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedDeviceID = 0;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
}
|
||||
|
||||
BXTTEST_F(HwInfoConfigTestLinuxBxt, GivenFailedIoctlDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceID = -2;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-2, ret);
|
||||
}
|
||||
|
||||
BXTTEST_F(HwInfoConfigTestLinuxBxt, GivenFailedIoctlDevRevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceRevID = -3;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-3, ret);
|
||||
}
|
||||
|
||||
BXTTEST_F(HwInfoConfigTestLinuxBxt, GivenFailedIoctlEuCountWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -4;
|
||||
@@ -169,30 +139,22 @@ BXTTEST_F(HwInfoConfigTestLinuxBxt, GivenInvalidMinEuInPoolWhenConfiguringHwInfo
|
||||
EXPECT_EQ((outHwInfo.gtSystemInfo.EUCount - outHwInfo.gtSystemInfo.EuCountPerPoolMin), outHwInfo.gtSystemInfo.EuCountPerPoolMax);
|
||||
}
|
||||
|
||||
BXTTEST_F(HwInfoConfigTestLinuxBxt, WhenConfiguringHwInfoWaFlagsThenZeroIsReturned) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedDeviceRevID = 0;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
class BxtHwInfoTests : public ::testing::Test {
|
||||
};
|
||||
typedef ::testing::Types<BXT_1x2x6, BXT_1x3x6> bxtTestTypes;
|
||||
TYPED_TEST_CASE(BxtHwInfoTests, bxtTestTypes);
|
||||
TYPED_TEST(BxtHwInfoTests, WhenConfiguringHwInfoThenConfigIsCorrect) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -14,7 +14,6 @@ using namespace NEO;
|
||||
struct HwInfoConfigTestLinuxCfl : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
drm->storedDeviceID = 0x3E92;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -22,8 +21,6 @@ CFLTEST_F(HwInfoConfigTestLinuxCfl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
@@ -32,25 +29,21 @@ CFLTEST_F(HwInfoConfigTestLinuxCfl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.VEBoxInfo.Instances.Bits.VEBox0Enabled);
|
||||
EXPECT_TRUE(outHwInfo.gtSystemInfo.VEBoxInfo.IsValid);
|
||||
|
||||
drm->storedDeviceID = 0x3E90;
|
||||
pInHwInfo.platform.usDeviceID = 0x3E90;
|
||||
drm->storedSSVal = 3;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x3EA5;
|
||||
pInHwInfo.platform.usDeviceID = 0x3EA5;
|
||||
drm->storedSSVal = 6;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(2u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -67,27 +60,6 @@ CFLTEST_F(HwInfoConfigTestLinuxCfl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
EXPECT_EQ(0, outKmdNotifyProperties.delayQuickKmdSleepForDirectSubmissionMicroseconds);
|
||||
}
|
||||
|
||||
CFLTEST_F(HwInfoConfigTestLinuxCfl, GivenUnknownDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedDeviceID = 0;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
}
|
||||
|
||||
CFLTEST_F(HwInfoConfigTestLinuxCfl, GivenFailedIoctlDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceID = -2;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-2, ret);
|
||||
}
|
||||
|
||||
CFLTEST_F(HwInfoConfigTestLinuxCfl, GivenFailedIoctlDevRevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceRevID = -3;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-3, ret);
|
||||
}
|
||||
|
||||
CFLTEST_F(HwInfoConfigTestLinuxCfl, GivenFailedIoctlEuCountWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForEUVal = -4;
|
||||
drm->failRetTopology = true;
|
||||
@@ -104,14 +76,6 @@ CFLTEST_F(HwInfoConfigTestLinuxCfl, GivenFailedIoctlSsCountWhenConfiguringHwInfo
|
||||
EXPECT_EQ(-5, ret);
|
||||
}
|
||||
|
||||
CFLTEST_F(HwInfoConfigTestLinuxCfl, GivenWaFlagsWhenConfiguringHwInfoThenInformationIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedDeviceRevID = 0;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
}
|
||||
|
||||
CFLTEST_F(HwInfoConfigTestLinuxCfl, WhenConfiguringHwInfoThenEdramInformationIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
@@ -120,14 +84,14 @@ CFLTEST_F(HwInfoConfigTestLinuxCfl, WhenConfiguringHwInfoThenEdramInformationIsC
|
||||
EXPECT_EQ_VAL(0u, outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(0u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x3EA8;
|
||||
pInHwInfo.platform.usDeviceID = 0x3EA8;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((64u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(1u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x3EA6;
|
||||
pInHwInfo.platform.usDeviceID = 0x3EA6;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((64u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
@@ -140,16 +104,16 @@ class CflHwInfoTests : public ::testing::Test {
|
||||
typedef ::testing::Types<CFL_1x2x6, CFL_1x3x6, CFL_1x3x8, CFL_2x3x8, CFL_3x3x8> cflTestTypes;
|
||||
TYPED_TEST_CASE(CflHwInfoTests, cflTestTypes);
|
||||
TYPED_TEST(CflHwInfoTests, WhenGtIsSetupThenGtSystemInfoIsCorrect) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -14,8 +14,6 @@ struct HwInfoConfigTestLinuxGlk : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
|
||||
drm->storedDeviceID = 0x3185;
|
||||
|
||||
drm->storedEUVal = 18;
|
||||
drm->storedHasPooledEU = 1;
|
||||
drm->storedMinEUinPool = 3;
|
||||
@@ -27,8 +25,6 @@ GLKTEST_F(HwInfoConfigTestLinuxGlk, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
@@ -37,13 +33,11 @@ GLKTEST_F(HwInfoConfigTestLinuxGlk, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.VEBoxInfo.Instances.Bits.VEBox0Enabled);
|
||||
EXPECT_TRUE(outHwInfo.gtSystemInfo.VEBoxInfo.IsValid);
|
||||
|
||||
drm->storedDeviceID = 0x3184;
|
||||
pInHwInfo.platform.usDeviceID = 0x3184;
|
||||
|
||||
drm->storedMinEUinPool = 6;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ((unsigned int)drm->storedHasPooledEU, outHwInfo.featureTable.flags.ftrPooledEuEnabled);
|
||||
@@ -51,13 +45,11 @@ GLKTEST_F(HwInfoConfigTestLinuxGlk, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
EXPECT_EQ((outHwInfo.gtSystemInfo.EUCount - outHwInfo.gtSystemInfo.EuCountPerPoolMin), outHwInfo.gtSystemInfo.EuCountPerPoolMax);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x3185;
|
||||
pInHwInfo.platform.usDeviceID = 0x3185;
|
||||
|
||||
drm->storedMinEUinPool = 9;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ((unsigned int)drm->storedHasPooledEU, outHwInfo.featureTable.flags.ftrPooledEuEnabled);
|
||||
@@ -79,19 +71,9 @@ GLKTEST_F(HwInfoConfigTestLinuxGlk, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
GLKTEST_F(HwInfoConfigTestLinuxGlk, GivenInvalidInputWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedRetValForDeviceID = -1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceID = 0;
|
||||
drm->storedRetValForDeviceRevID = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForDeviceRevID = 0;
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -1;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
auto ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
|
||||
drm->storedRetValForEUVal = 0;
|
||||
@@ -167,7 +149,7 @@ GLKTEST_F(HwInfoConfigTestLinuxGlk, GivenInvalidMinEuInPoolWhenConfiguringHwInfo
|
||||
GLKTEST_F(HwInfoConfigTestLinuxGlk, GivenWaFlagsWhenConfiguringHwInfoThenInformationIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedDeviceRevID = 0;
|
||||
pInHwInfo.platform.usRevId = 0;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
}
|
||||
@@ -178,16 +160,16 @@ class GlkHwInfoTests : public ::testing::Test {
|
||||
typedef ::testing::Types<GLK_1x3x6, GLK_1x2x6> glkTestTypes;
|
||||
TYPED_TEST_CASE(GlkHwInfoTests, glkTestTypes);
|
||||
TYPED_TEST(GlkHwInfoTests, WhenGtIsSetupThenGtSystemInfoIsCorrect) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -14,7 +14,6 @@ using namespace NEO;
|
||||
struct HwInfoConfigTestLinuxKbl : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
drm->storedDeviceID = 0x5912;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -22,8 +21,6 @@ KBLTEST_F(HwInfoConfigTestLinuxKbl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
@@ -32,47 +29,34 @@ KBLTEST_F(HwInfoConfigTestLinuxKbl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.VEBoxInfo.Instances.Bits.VEBox0Enabled);
|
||||
EXPECT_TRUE(outHwInfo.gtSystemInfo.VEBoxInfo.IsValid);
|
||||
|
||||
drm->storedDeviceID = 0x5906;
|
||||
drm->storedSSVal = 3;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x5915;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x5923;
|
||||
drm->storedSSVal = 6;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(2u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x593B;
|
||||
drm->storedSSVal = 6;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(2u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -89,27 +73,6 @@ KBLTEST_F(HwInfoConfigTestLinuxKbl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
EXPECT_EQ(0, outKmdNotifyProperties.delayQuickKmdSleepForDirectSubmissionMicroseconds);
|
||||
}
|
||||
|
||||
KBLTEST_F(HwInfoConfigTestLinuxKbl, GivenUnknownDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedDeviceID = 0;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
}
|
||||
|
||||
KBLTEST_F(HwInfoConfigTestLinuxKbl, GivenFailedIoctlDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceID = -2;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-2, ret);
|
||||
}
|
||||
|
||||
KBLTEST_F(HwInfoConfigTestLinuxKbl, GivenFailedIoctlDevRevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceRevID = -3;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-3, ret);
|
||||
}
|
||||
|
||||
KBLTEST_F(HwInfoConfigTestLinuxKbl, GivenFailedIoctlEuCountWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->failRetTopology = true;
|
||||
drm->storedRetValForEUVal = -4;
|
||||
@@ -129,17 +92,17 @@ KBLTEST_F(HwInfoConfigTestLinuxKbl, GivenFailedIoctlSsCountWhenConfiguringHwInfo
|
||||
KBLTEST_F(HwInfoConfigTestLinuxKbl, GivenWaFlagsWhenConfiguringHwInfoThenInformationIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedDeviceRevID = 0;
|
||||
outHwInfo.platform.usRevId = 0;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
|
||||
drm->storedDeviceRevID = 7;
|
||||
pInHwInfo.platform.usRevId = 7;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(0u, outHwInfo.workaroundTable.flags.waDisableLSQCROPERFforOCL);
|
||||
EXPECT_EQ(0u, outHwInfo.workaroundTable.flags.waEncryptedEdramOnlyPartials);
|
||||
|
||||
drm->storedDeviceRevID = 9;
|
||||
pInHwInfo.platform.usRevId = 9;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(0u, outHwInfo.workaroundTable.flags.waDisableLSQCROPERFforOCL);
|
||||
@@ -155,14 +118,14 @@ KBLTEST_F(HwInfoConfigTestLinuxKbl, WhenConfiguringHwInfoThenEdramInformationIsC
|
||||
EXPECT_EQ_VAL(0u, outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(0u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x5927;
|
||||
pInHwInfo.platform.usDeviceID = 0x5927;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((64u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(1u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x5926;
|
||||
pInHwInfo.platform.usDeviceID = 0x5926;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((64u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
@@ -175,16 +138,16 @@ class KblHwInfoTests : public ::testing::Test {
|
||||
typedef ::testing::Types<KBL_1x2x6, KBL_1x3x6, KBL_1x3x8, KBL_2x3x8, KBL_3x3x8> kblTestTypes;
|
||||
TYPED_TEST_CASE(KblHwInfoTests, kblTestTypes);
|
||||
TYPED_TEST(KblHwInfoTests, WhenGtIsSetupThenGtSystemInfoIsCorrect) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -13,7 +13,6 @@ using namespace NEO;
|
||||
struct HwInfoConfigTestLinuxSkl : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
drm->storedDeviceID = 0x0902;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -21,8 +20,6 @@ SKLTEST_F(HwInfoConfigTestLinuxSkl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
@@ -33,45 +30,37 @@ SKLTEST_F(HwInfoConfigTestLinuxSkl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
EXPECT_TRUE(outHwInfo.gtSystemInfo.VEBoxInfo.IsValid);
|
||||
EXPECT_TRUE(outHwInfo.gtSystemInfo.VDBoxInfo.IsValid);
|
||||
|
||||
drm->storedDeviceID = 0x1902;
|
||||
pInHwInfo.platform.usDeviceID = 0x1902;
|
||||
|
||||
drm->storedSSVal = 3;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x1917;
|
||||
pInHwInfo.platform.usDeviceID = 0x1917;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x0903;
|
||||
pInHwInfo.platform.usDeviceID = 0x0903;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(aub_stream::ENGINE_RCS, outHwInfo.capabilityTable.defaultEngineType);
|
||||
|
||||
drm->storedDeviceID = 0x0904;
|
||||
pInHwInfo.platform.usDeviceID = 0x0903;
|
||||
|
||||
drm->storedSSVal = 6;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceID, outHwInfo.platform.usDeviceID);
|
||||
EXPECT_EQ((unsigned short)drm->storedDeviceRevID, outHwInfo.platform.usRevId);
|
||||
EXPECT_EQ((uint32_t)drm->storedEUVal, outHwInfo.gtSystemInfo.EUCount);
|
||||
EXPECT_EQ((uint32_t)drm->storedSSVal, outHwInfo.gtSystemInfo.SubSliceCount);
|
||||
EXPECT_EQ(1u, outHwInfo.gtSystemInfo.SliceCount);
|
||||
@@ -88,27 +77,6 @@ SKLTEST_F(HwInfoConfigTestLinuxSkl, WhenConfiguringHwInfoThenInformationIsCorrec
|
||||
EXPECT_EQ(0, outKmdNotifyProperties.delayQuickKmdSleepForDirectSubmissionMicroseconds);
|
||||
}
|
||||
|
||||
SKLTEST_F(HwInfoConfigTestLinuxSkl, GivenUnknownDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedDeviceID = 0;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
}
|
||||
|
||||
SKLTEST_F(HwInfoConfigTestLinuxSkl, GivenFailedIoctlDevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceID = -2;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-2, ret);
|
||||
}
|
||||
|
||||
SKLTEST_F(HwInfoConfigTestLinuxSkl, GivenFailedIoctlDevRevIdWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForDeviceRevID = -3;
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-3, ret);
|
||||
}
|
||||
|
||||
SKLTEST_F(HwInfoConfigTestLinuxSkl, GivenFailedIoctlEuCountWhenConfiguringHwInfoThenErrorIsReturned) {
|
||||
drm->storedRetValForEUVal = -4;
|
||||
drm->failRetTopology = true;
|
||||
@@ -128,23 +96,23 @@ SKLTEST_F(HwInfoConfigTestLinuxSkl, GivenFailedIoctlSsCountWhenConfiguringHwInfo
|
||||
SKLTEST_F(HwInfoConfigTestLinuxSkl, GivenWaFlagsWhenConfiguringHwInfoThenInformationIsCorrect) {
|
||||
auto hwInfoConfig = HwInfoConfig::get(productFamily);
|
||||
|
||||
drm->storedDeviceRevID = 1;
|
||||
pInHwInfo.platform.usRevId = 1;
|
||||
int ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
|
||||
drm->storedDeviceRevID = 0;
|
||||
pInHwInfo.platform.usRevId = 0;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(0u, outHwInfo.workaroundTable.flags.waCompressedResourceRequiresConstVA21);
|
||||
|
||||
drm->storedDeviceRevID = 5;
|
||||
pInHwInfo.platform.usRevId = 5;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(0u, outHwInfo.workaroundTable.flags.waCompressedResourceRequiresConstVA21);
|
||||
EXPECT_EQ(0u, outHwInfo.workaroundTable.flags.waModifyVFEStateAfterGPGPUPreemption);
|
||||
EXPECT_EQ(0u, outHwInfo.workaroundTable.flags.waDisablePerCtxtPreemptionGranularityControl);
|
||||
|
||||
drm->storedDeviceRevID = 6;
|
||||
pInHwInfo.platform.usRevId = 6;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(0u, outHwInfo.workaroundTable.flags.waCompressedResourceRequiresConstVA21);
|
||||
@@ -161,33 +129,33 @@ SKLTEST_F(HwInfoConfigTestLinuxSkl, WhenConfiguringHwInfoThenEdramInformationIsC
|
||||
EXPECT_EQ_VAL(0u, outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(0u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x1926;
|
||||
pInHwInfo.platform.usDeviceID = 0x1926;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((64u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(1u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x1927;
|
||||
pInHwInfo.platform.usDeviceID = 0x1927;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((64u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(1u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x192D;
|
||||
pInHwInfo.platform.usDeviceID = 0x192D;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((64u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(1u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x193B;
|
||||
pInHwInfo.platform.usDeviceID = 0x193B;
|
||||
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((128u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
EXPECT_EQ(1u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
|
||||
drm->storedDeviceID = 0x193D;
|
||||
pInHwInfo.platform.usDeviceID = 0x193D;
|
||||
ret = hwInfoConfig->configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ_VAL((128u * 1024u), outHwInfo.gtSystemInfo.EdramSizeInKb);
|
||||
@@ -200,16 +168,16 @@ class SklHwInfoTests : public ::testing::Test {
|
||||
typedef ::testing::Types<SKL_1x2x6, SKL_1x3x6, SKL_1x3x8, SKL_2x3x8, SKL_3x3x8> sklTestTypes;
|
||||
TYPED_TEST_CASE(SklHwInfoTests, sklTestTypes);
|
||||
TYPED_TEST(SklHwInfoTests, WhenGtIsSetupThenGtSystemInfoIsCorrect) {
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
auto executionEnvironment = std::make_unique<ExecutionEnvironment>();
|
||||
executionEnvironment->prepareRootDeviceEnvironments(1);
|
||||
executionEnvironment->rootDeviceEnvironments[0]->setHwInfo(defaultHwInfo.get());
|
||||
DrmMock drm(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, &TypeParam::setupHardwareInfo};
|
||||
DeviceDescriptor device = {0, &TypeParam::hwInfo, &TypeParam::setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_GT(gtSystemInfo.EUCount, 0u);
|
||||
EXPECT_GT(gtSystemInfo.ThreadCount, 0u);
|
||||
|
||||
@@ -49,16 +49,6 @@ TEST_F(DeviceFactoryLinuxTest, givenSomeDisabledSSAndEUWhenPrepareDeviceEnvironm
|
||||
EXPECT_EQ((int)hwInfo->gtSystemInfo.EUCount, 12);
|
||||
}
|
||||
|
||||
TEST_F(DeviceFactoryLinuxTest, GivenInvalidHwInfoWhenPreparingDeviceEnvironmentsThenFailIsReturned) {
|
||||
|
||||
pDrm->storedRetValForDeviceID = -1;
|
||||
|
||||
bool success = DeviceFactory::prepareDeviceEnvironments(executionEnvironment);
|
||||
EXPECT_FALSE(success);
|
||||
|
||||
pDrm->storedRetValForDeviceID = 0;
|
||||
}
|
||||
|
||||
TEST_F(DeviceFactoryLinuxTest, givenGetDeviceCallWhenItIsDoneThenOsInterfaceIsAllocatedAndItContainDrm) {
|
||||
bool success = DeviceFactory::prepareDeviceEnvironments(executionEnvironment);
|
||||
EXPECT_TRUE(success);
|
||||
|
||||
@@ -152,12 +152,12 @@ TEST(DrmSystemInfoTest, givenSetupHardwareInfoWhenQuerySystemInfoSucceedsThenSys
|
||||
HardwareInfo hwInfo = *defaultHwInfo;
|
||||
|
||||
auto setupHardwareInfo = [](HardwareInfo *, bool) {};
|
||||
GT_SYSTEM_INFO >SystemInfo = hwInfo.gtSystemInfo;
|
||||
DeviceDescriptor device = {0, &hwInfo, setupHardwareInfo};
|
||||
|
||||
int ret = drm.setupHardwareInfo(&device, false);
|
||||
EXPECT_EQ(ret, 0);
|
||||
EXPECT_NE(nullptr, drm.getSystemInfo());
|
||||
const auto >SystemInfo = executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo()->gtSystemInfo;
|
||||
|
||||
EXPECT_GT(gtSystemInfo.TotalVsThreads, 0u);
|
||||
EXPECT_GT(gtSystemInfo.TotalHsThreads, 0u);
|
||||
|
||||
@@ -17,30 +17,33 @@
|
||||
#include <cstring>
|
||||
|
||||
struct DummyHwConfig : NEO::HwInfoConfigHw<IGFX_UNKNOWN> {
|
||||
const uint32_t hwConfigTestMidThreadBit = 1 << 8;
|
||||
const uint32_t hwConfigTestThreadGroupBit = 1 << 9;
|
||||
const uint32_t hwConfigTestMidBatchBit = 1 << 10;
|
||||
int configureHardwareCustom(HardwareInfo *hwInfo, OSInterface *osIface) override {
|
||||
FeatureTable *featureTable = &hwInfo->featureTable;
|
||||
featureTable->flags.ftrGpGpuMidThreadLevelPreempt = 0;
|
||||
featureTable->flags.ftrGpGpuThreadGroupLevelPreempt = 0;
|
||||
featureTable->flags.ftrGpGpuMidBatchPreempt = 0;
|
||||
|
||||
if (hwInfo->platform.usDeviceID == 30) {
|
||||
if (use128MbEdram) {
|
||||
GT_SYSTEM_INFO *gtSystemInfo = &hwInfo->gtSystemInfo;
|
||||
gtSystemInfo->EdramSizeInKb = 128 * 1000;
|
||||
}
|
||||
if (hwInfo->platform.usDeviceID & hwConfigTestMidThreadBit) {
|
||||
if (enableMidThreadPreemption) {
|
||||
featureTable->flags.ftrGpGpuMidThreadLevelPreempt = 1;
|
||||
}
|
||||
if (hwInfo->platform.usDeviceID & hwConfigTestThreadGroupBit) {
|
||||
if (enableThreadGroupPreemption) {
|
||||
featureTable->flags.ftrGpGpuThreadGroupLevelPreempt = 1;
|
||||
}
|
||||
if (hwInfo->platform.usDeviceID & hwConfigTestMidBatchBit) {
|
||||
if (enableMidBatchPreemption) {
|
||||
featureTable->flags.ftrGpGpuMidBatchPreempt = 1;
|
||||
}
|
||||
return (hwInfo->platform.usDeviceID == 10) ? -1 : 0;
|
||||
return (failOnConfigureHardwareCustom) ? -1 : 0;
|
||||
}
|
||||
|
||||
bool use128MbEdram = false;
|
||||
bool enableMidThreadPreemption = false;
|
||||
bool enableThreadGroupPreemption = false;
|
||||
bool enableMidBatchPreemption = false;
|
||||
bool failOnConfigureHardwareCustom = false;
|
||||
};
|
||||
|
||||
using namespace NEO;
|
||||
@@ -49,8 +52,6 @@ struct HwInfoConfigTestLinuxDummy : HwInfoConfigTestLinux {
|
||||
void SetUp() override {
|
||||
HwInfoConfigTestLinux::SetUp();
|
||||
|
||||
drm->storedDeviceID = 1;
|
||||
|
||||
testPlatform->eRenderCoreFamily = defaultHwInfo->platform.eRenderCoreFamily;
|
||||
hwInfoConfigFactoryBackup = &hwConfig;
|
||||
}
|
||||
@@ -80,47 +81,24 @@ HWTEST2_F(HwInfoConfigCommonLinuxTest, givenDebugFlagSetWhenEnablingBlitterOpera
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, GivenDummyConfigThenEdramIsDetected) {
|
||||
drm->storedDeviceID = 30;
|
||||
hwConfig.use128MbEdram = true;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(1u, outHwInfo.featureTable.flags.ftrEDram);
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, givenEnabledPlatformCoherencyWhenConfiguringHwInfoThenIgnoreAndSetAsDisabled) {
|
||||
drm->storedDeviceID = 21;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_FALSE(outHwInfo.capabilityTable.ftrSupportsCoherency);
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, givenDisabledPlatformCoherencyWhenConfiguringHwInfoThenSetValidCapability) {
|
||||
drm->storedDeviceID = 20;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_FALSE(outHwInfo.capabilityTable.ftrSupportsCoherency);
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, GivenUnknownDevIdWhenConfiguringHwInfoThenFails) {
|
||||
drm->storedDeviceID = 0;
|
||||
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, GivenFailGetDevIdWhenConfiguringHwInfoThenFails) {
|
||||
drm->storedRetValForDeviceID = -2;
|
||||
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-2, ret);
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, GivenFailGetDevRevIdWhenConfiguringHwInfoThenFails) {
|
||||
drm->storedRetValForDeviceRevID = -3;
|
||||
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-3, ret);
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, GivenFailGetEuCountWhenConfiguringHwInfoThenFails) {
|
||||
drm->storedRetValForEUVal = -4;
|
||||
drm->failRetTopology = true;
|
||||
@@ -181,20 +159,12 @@ TEST_F(HwInfoConfigTestLinuxDummy, givenInvalidTopologyDataWhenConfiguringThenRe
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, GivenFailingCustomConfigWhenConfiguringHwInfoThenFails) {
|
||||
drm->storedDeviceID = 10;
|
||||
hwConfig.failOnConfigureHardwareCustom = true;
|
||||
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, GivenUnknownDeviceIdWhenConfiguringHwInfoThenFails) {
|
||||
drm->storedDeviceID = 0;
|
||||
|
||||
auto hwConfig = DummyHwConfig{};
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(-1, ret);
|
||||
}
|
||||
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, whenConfigureHwInfoIsCalledThenAreNonPersistentContextsSupportedReturnsTrue) {
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
@@ -214,7 +184,8 @@ HWTEST_F(HwInfoConfigTestLinuxDummy, GivenPreemptionDrmEnabledMidThreadOnWhenCon
|
||||
I915_SCHEDULER_CAP_ENABLED |
|
||||
I915_SCHEDULER_CAP_PRIORITY |
|
||||
I915_SCHEDULER_CAP_PREEMPTION;
|
||||
drm->storedDeviceID = hwConfig.hwConfigTestMidThreadBit;
|
||||
|
||||
hwConfig.enableMidThreadPreemption = true;
|
||||
|
||||
UnitTestHelper<FamilyType>::setExtraMidThreadPreemptionFlag(pInHwInfo, true);
|
||||
|
||||
@@ -230,7 +201,7 @@ TEST_F(HwInfoConfigTestLinuxDummy, GivenPreemptionDrmEnabledThreadGroupOnWhenCon
|
||||
I915_SCHEDULER_CAP_ENABLED |
|
||||
I915_SCHEDULER_CAP_PRIORITY |
|
||||
I915_SCHEDULER_CAP_PREEMPTION;
|
||||
drm->storedDeviceID = hwConfig.hwConfigTestThreadGroupBit;
|
||||
hwConfig.enableThreadGroupPreemption = true;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(PreemptionMode::ThreadGroup, outHwInfo.capabilityTable.defaultPreemptionMode);
|
||||
@@ -245,10 +216,7 @@ TEST_F(HwInfoConfigTestLinuxDummy, givenDebugFlagSetWhenConfiguringHwInfoThenPri
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
|
||||
std::array<std::string, 6> expectedStrings = {{"DRM_IOCTL_I915_GETPARAM: param: I915_PARAM_CHIPSET_ID, output value: 1, retCode: 0",
|
||||
"DRM_IOCTL_I915_GETPARAM: param: I915_PARAM_REVISION, output value: 0, retCode: 0",
|
||||
"DRM_IOCTL_I915_GETPARAM: param: I915_PARAM_CHIPSET_ID, output value: 1, retCode: 0",
|
||||
"DRM_IOCTL_I915_GETPARAM: param: I915_PARAM_HAS_SCHEDULER, output value: 7, retCode: 0"
|
||||
std::array<std::string, 1> expectedStrings = {{"DRM_IOCTL_I915_GETPARAM: param: I915_PARAM_HAS_SCHEDULER, output value: 7, retCode: 0"
|
||||
|
||||
}};
|
||||
|
||||
@@ -267,7 +235,7 @@ TEST_F(HwInfoConfigTestLinuxDummy, GivenPreemptionDrmEnabledMidBatchOnWhenConfig
|
||||
I915_SCHEDULER_CAP_ENABLED |
|
||||
I915_SCHEDULER_CAP_PRIORITY |
|
||||
I915_SCHEDULER_CAP_PREEMPTION;
|
||||
drm->storedDeviceID = hwConfig.hwConfigTestMidBatchBit;
|
||||
hwConfig.enableMidBatchPreemption = true;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(PreemptionMode::MidBatch, outHwInfo.capabilityTable.defaultPreemptionMode);
|
||||
@@ -280,7 +248,6 @@ TEST_F(HwInfoConfigTestLinuxDummy, WhenConfiguringHwInfoThenPreemptionIsSupporte
|
||||
I915_SCHEDULER_CAP_ENABLED |
|
||||
I915_SCHEDULER_CAP_PRIORITY |
|
||||
I915_SCHEDULER_CAP_PREEMPTION;
|
||||
drm->storedDeviceID = 1;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(PreemptionMode::Disabled, outHwInfo.capabilityTable.defaultPreemptionMode);
|
||||
@@ -290,8 +257,11 @@ TEST_F(HwInfoConfigTestLinuxDummy, WhenConfiguringHwInfoThenPreemptionIsSupporte
|
||||
TEST_F(HwInfoConfigTestLinuxDummy, GivenPreemptionDrmDisabledAllPreemptionWhenConfiguringHwInfoThenPreemptionIsNotSupported) {
|
||||
pInHwInfo.capabilityTable.defaultPreemptionMode = PreemptionMode::MidThread;
|
||||
drm->storedPreemptionSupport = 0;
|
||||
drm->storedDeviceID = hwConfig.hwConfigTestMidThreadBit | hwConfig.hwConfigTestThreadGroupBit | hwConfig.hwConfigTestMidBatchBit;
|
||||
hwConfig.enableMidThreadPreemption = true;
|
||||
hwConfig.enableMidBatchPreemption = true;
|
||||
hwConfig.enableThreadGroupPreemption = true;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
hwConfig.enableMidThreadPreemption = true;
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(PreemptionMode::Disabled, outHwInfo.capabilityTable.defaultPreemptionMode);
|
||||
EXPECT_FALSE(drm->isPreemptionSupported());
|
||||
@@ -303,7 +273,9 @@ TEST_F(HwInfoConfigTestLinuxDummy, GivenPreemptionDrmEnabledAllPreemptionDriverT
|
||||
I915_SCHEDULER_CAP_ENABLED |
|
||||
I915_SCHEDULER_CAP_PRIORITY |
|
||||
I915_SCHEDULER_CAP_PREEMPTION;
|
||||
drm->storedDeviceID = hwConfig.hwConfigTestMidThreadBit | hwConfig.hwConfigTestThreadGroupBit | hwConfig.hwConfigTestMidBatchBit;
|
||||
hwConfig.enableMidBatchPreemption = true;
|
||||
hwConfig.enableThreadGroupPreemption = true;
|
||||
hwConfig.enableMidThreadPreemption = true;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(PreemptionMode::ThreadGroup, outHwInfo.capabilityTable.defaultPreemptionMode);
|
||||
@@ -316,7 +288,9 @@ TEST_F(HwInfoConfigTestLinuxDummy, GivenPreemptionDrmEnabledAllPreemptionDriverM
|
||||
I915_SCHEDULER_CAP_ENABLED |
|
||||
I915_SCHEDULER_CAP_PRIORITY |
|
||||
I915_SCHEDULER_CAP_PREEMPTION;
|
||||
drm->storedDeviceID = hwConfig.hwConfigTestMidThreadBit | hwConfig.hwConfigTestThreadGroupBit | hwConfig.hwConfigTestMidBatchBit;
|
||||
hwConfig.enableMidBatchPreemption = true;
|
||||
hwConfig.enableThreadGroupPreemption = true;
|
||||
hwConfig.enableMidThreadPreemption = true;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(PreemptionMode::MidBatch, outHwInfo.capabilityTable.defaultPreemptionMode);
|
||||
@@ -329,7 +303,9 @@ TEST_F(HwInfoConfigTestLinuxDummy, GivenConfigPreemptionDrmEnabledAllPreemptionD
|
||||
I915_SCHEDULER_CAP_ENABLED |
|
||||
I915_SCHEDULER_CAP_PRIORITY |
|
||||
I915_SCHEDULER_CAP_PREEMPTION;
|
||||
drm->storedDeviceID = hwConfig.hwConfigTestMidThreadBit | hwConfig.hwConfigTestThreadGroupBit | hwConfig.hwConfigTestMidBatchBit;
|
||||
hwConfig.enableMidBatchPreemption = true;
|
||||
hwConfig.enableThreadGroupPreemption = true;
|
||||
hwConfig.enableMidThreadPreemption = true;
|
||||
int ret = hwConfig.configureHwInfoDrm(&pInHwInfo, &outHwInfo, osInterface);
|
||||
EXPECT_EQ(0, ret);
|
||||
EXPECT_EQ(PreemptionMode::Disabled, outHwInfo.capabilityTable.defaultPreemptionMode);
|
||||
|
||||
@@ -40,8 +40,6 @@ struct HwInfoConfigTestLinux : public HwInfoConfigTest {
|
||||
drm = new DrmMock(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
osInterface->setDriverModel(std::unique_ptr<DriverModel>(drm));
|
||||
|
||||
drm->storedDeviceID = pInHwInfo.platform.usDeviceID;
|
||||
drm->storedDeviceRevID = 0;
|
||||
drm->storedEUVal = pInHwInfo.gtSystemInfo.EUCount;
|
||||
drm->storedSSVal = pInHwInfo.gtSystemInfo.SubSliceCount;
|
||||
|
||||
|
||||
@@ -19,8 +19,6 @@ struct HwInfoConfigTestLinuxXeHp : HwInfoConfigTestLinux {
|
||||
|
||||
drm = new DrmMock(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
osInterface->setDriverModel(std::unique_ptr<DriverModel>(drm));
|
||||
|
||||
drm->storedDeviceID = 0x0201;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -19,8 +19,6 @@ struct HwInfoConfigTestLinuxPvc : HwInfoConfigTestLinux {
|
||||
|
||||
drm = new DrmMock(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
osInterface->setDriverModel(std::unique_ptr<DriverModel>(drm));
|
||||
|
||||
drm->storedDeviceID = 0x0BD0;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -19,8 +19,6 @@ struct HwInfoConfigTestLinuxDg2 : HwInfoConfigTestLinux {
|
||||
|
||||
drm = new DrmMock(*executionEnvironment->rootDeviceEnvironments[0]);
|
||||
osInterface->setDriverModel(std::unique_ptr<DriverModel>(drm));
|
||||
|
||||
drm->storedDeviceID = 0x1234;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user