diff --git a/shared/source/os_interface/linux/xe/ioctl_helper_xe.cpp b/shared/source/os_interface/linux/xe/ioctl_helper_xe.cpp index 46af84dfb4..608b74446d 100644 --- a/shared/source/os_interface/linux/xe/ioctl_helper_xe.cpp +++ b/shared/source/os_interface/linux/xe/ioctl_helper_xe.cpp @@ -552,11 +552,12 @@ bool IoctlHelperXe::getTopologyDataAndMap(const HardwareInfo &hwInfo, DrmQueryTo fillMask(computeDss[tileId], topo); receivedDssInfo = true; break; + case DRM_XE_TOPO_L3_BANK: + fillMask(l3Banks[tileId], topo); + break; default: if (isEuPerDssTopologyType(topo->type)) { fillMask(euDss[tileId], topo); - } else if (isL3BankTopologyType(topo->type)) { - fillMask(l3Banks[tileId], topo); } else { xeLog("Unhandle GT Topo type: %d\n", topo->type); } @@ -1738,7 +1739,4 @@ void IoctlHelperXe::querySupportedFeatures() { bool IoctlHelperXe::isEuPerDssTopologyType(uint16_t topologyType) const { return topologyType == DRM_XE_TOPO_EU_PER_DSS; } -bool IoctlHelperXe::isL3BankTopologyType(uint16_t topologyType) const { - return false; -} } // namespace NEO diff --git a/shared/source/os_interface/linux/xe/ioctl_helper_xe.h b/shared/source/os_interface/linux/xe/ioctl_helper_xe.h index 3711f68a3e..c995de7b99 100644 --- a/shared/source/os_interface/linux/xe/ioctl_helper_xe.h +++ b/shared/source/os_interface/linux/xe/ioctl_helper_xe.h @@ -134,7 +134,6 @@ class IoctlHelperXe : public IoctlHelper { bool resourceRegistrationEnabled() override { return true; } bool isPreemptionSupported() override { return true; } virtual bool isEuPerDssTopologyType(uint16_t topologyType) const; - virtual bool isL3BankTopologyType(uint16_t topologyType) const; protected: static constexpr uint32_t maxContextSetProperties = 4; diff --git a/shared/source/os_interface/linux/xe/ioctl_helper_xe_prelim.cpp b/shared/source/os_interface/linux/xe/ioctl_helper_xe_prelim.cpp index 9c46dd5e1e..c1623bb486 100644 --- a/shared/source/os_interface/linux/xe/ioctl_helper_xe_prelim.cpp +++ b/shared/source/os_interface/linux/xe/ioctl_helper_xe_prelim.cpp @@ -15,8 +15,4 @@ bool IoctlHelperXePrelim::isEuPerDssTopologyType(uint16_t topologyType) const { return topologyType == DRM_XE_TOPO_EU_PER_DSS || topologyType == DRM_XE_TOPO_SIMD16_EU_PER_DSS; } - -bool IoctlHelperXePrelim::isL3BankTopologyType(uint16_t topologyType) const { - return topologyType == DRM_XE_TOPO_L3_BANK; -} } // namespace NEO diff --git a/shared/source/os_interface/linux/xe/ioctl_helper_xe_prelim.h b/shared/source/os_interface/linux/xe/ioctl_helper_xe_prelim.h index 3e37c3afe2..2a8243c784 100644 --- a/shared/source/os_interface/linux/xe/ioctl_helper_xe_prelim.h +++ b/shared/source/os_interface/linux/xe/ioctl_helper_xe_prelim.h @@ -14,7 +14,6 @@ class IoctlHelperXePrelim : public IoctlHelperXe { public: using IoctlHelperXe::IoctlHelperXe; bool isEuPerDssTopologyType(uint16_t topologyType) const override; - bool isL3BankTopologyType(uint16_t topologyType) const override; }; } // namespace NEO diff --git a/shared/test/common/os_interface/linux/xe/mock_ioctl_helper_xe.h b/shared/test/common/os_interface/linux/xe/mock_ioctl_helper_xe.h index d4924937af..d874c78ad1 100644 --- a/shared/test/common/os_interface/linux/xe/mock_ioctl_helper_xe.h +++ b/shared/test/common/os_interface/linux/xe/mock_ioctl_helper_xe.h @@ -12,8 +12,6 @@ using namespace NEO; struct MockIoctlHelperXe : IoctlHelperXe { - static const uint16_t mockL3BankTopologyType = 0x100; - using IoctlHelperXe::bindInfo; using IoctlHelperXe::contextParamEngine; using IoctlHelperXe::defaultEngine; @@ -56,14 +54,7 @@ struct MockIoctlHelperXe : IoctlHelperXe { } return IoctlHelperXe::ioctl(fd, request, arg); } - bool isL3BankTopologyType(uint16_t topologyType) const override { - if (isL3BankTopologyTypeCallBase) { - return IoctlHelperXe::isL3BankTopologyType(topologyType); - } - return topologyType == mockL3BankTopologyType; - } - bool isL3BankTopologyTypeCallBase = true; bool failPerfDisable = false; bool failPerfEnable = false; bool failPerfOpen = false; diff --git a/shared/test/unit_test/os_interface/linux/xe/ioctl_helper_xe_prelim_tests.cpp b/shared/test/unit_test/os_interface/linux/xe/ioctl_helper_xe_prelim_tests.cpp index fcac155c18..a2a74bc667 100644 --- a/shared/test/unit_test/os_interface/linux/xe/ioctl_helper_xe_prelim_tests.cpp +++ b/shared/test/unit_test/os_interface/linux/xe/ioctl_helper_xe_prelim_tests.cpp @@ -22,14 +22,3 @@ TEST(IoctlHelperXePrelimTest, givenSimd16EuPerDssTypeWhenCheckingIfTopologyIsEuP EXPECT_FALSE(ioctlHelper.isEuPerDssTopologyType(DRM_XE_TOPO_DSS_GEOMETRY)); EXPECT_FALSE(ioctlHelper.isEuPerDssTopologyType(DRM_XE_TOPO_DSS_COMPUTE)); } - -TEST(IoctlHelperXePrelimTest, givenL3BankTypeWhenCheckingIfTopologyIsL3BankTypeThenSuccessIsReturned) { - MockExecutionEnvironment executionEnvironment{}; - std::unique_ptr drm{Drm::create(std::make_unique(0, ""), *executionEnvironment.rootDeviceEnvironments[0])}; - IoctlHelperXePrelim ioctlHelper{*drm}; - EXPECT_TRUE(ioctlHelper.isL3BankTopologyType(DRM_XE_TOPO_L3_BANK)); - EXPECT_FALSE(ioctlHelper.isL3BankTopologyType(DRM_XE_TOPO_EU_PER_DSS)); - EXPECT_FALSE(ioctlHelper.isL3BankTopologyType(DRM_XE_TOPO_DSS_GEOMETRY)); - EXPECT_FALSE(ioctlHelper.isL3BankTopologyType(DRM_XE_TOPO_DSS_COMPUTE)); - EXPECT_FALSE(ioctlHelper.isL3BankTopologyType(DRM_XE_TOPO_SIMD16_EU_PER_DSS)); -} diff --git a/shared/test/unit_test/os_interface/linux/xe/ioctl_helper_xe_tests.cpp b/shared/test/unit_test/os_interface/linux/xe/ioctl_helper_xe_tests.cpp index 6d3fe86106..49ea8889c2 100644 --- a/shared/test/unit_test/os_interface/linux/xe/ioctl_helper_xe_tests.cpp +++ b/shared/test/unit_test/os_interface/linux/xe/ioctl_helper_xe_tests.cpp @@ -2411,15 +2411,6 @@ TEST(IoctlHelperXeTest, givenCorrectEuPerDssTypeWhenCheckingIfTopologyIsEuPerDss EXPECT_FALSE(ioctlHelper.isEuPerDssTopologyType(DRM_XE_TOPO_DSS_COMPUTE)); } -TEST(IoctlHelperXeTest, whenCheckingIfTopologyIsL3BankThenFalseIsReturned) { - MockExecutionEnvironment executionEnvironment{}; - std::unique_ptr drm{Drm::create(std::make_unique(0, ""), *executionEnvironment.rootDeviceEnvironments[0])}; - IoctlHelperXe ioctlHelper{*drm}; - EXPECT_FALSE(ioctlHelper.isL3BankTopologyType(DRM_XE_TOPO_EU_PER_DSS)); - EXPECT_FALSE(ioctlHelper.isL3BankTopologyType(DRM_XE_TOPO_DSS_GEOMETRY)); - EXPECT_FALSE(ioctlHelper.isL3BankTopologyType(DRM_XE_TOPO_DSS_COMPUTE)); -} - TEST(IoctlHelperXeTest, givenIoctlHelperWhenSettingExtContextThenCallExternalIoctlFunction) { MockExecutionEnvironment executionEnvironment{}; std::unique_ptr drm{Drm::create(std::make_unique(0, ""), *executionEnvironment.rootDeviceEnvironments[0])}; @@ -2449,7 +2440,6 @@ TEST(IoctlHelperXeTest, givenL3BankWhenGetTopologyDataAndMapThenResultsAreCorrec auto executionEnvironment = std::make_unique(); auto drm = DrmMockXe::create(*executionEnvironment->rootDeviceEnvironments[0]); auto xeIoctlHelper = static_cast(drm->getIoctlHelper()); - xeIoctlHelper->isL3BankTopologyTypeCallBase = false; auto &hwInfo = *executionEnvironment->rootDeviceEnvironments[0]->getHardwareInfo(); xeIoctlHelper->initialize(); @@ -2458,7 +2448,7 @@ TEST(IoctlHelperXeTest, givenL3BankWhenGetTopologyDataAndMapThenResultsAreCorrec drm->addMockedQueryTopologyData(gtId, DRM_XE_TOPO_DSS_GEOMETRY, 8, {0b11'1111, 0, 0, 0, 0, 0, 0, 0}); drm->addMockedQueryTopologyData(gtId, DRM_XE_TOPO_DSS_COMPUTE, 8, {0, 0, 0, 0, 0, 0, 0, 0}); drm->addMockedQueryTopologyData(gtId, DRM_XE_TOPO_EU_PER_DSS, 8, {0b1111'1111, 0b1111'1111, 0, 0, 0, 0, 0, 0}); - drm->addMockedQueryTopologyData(gtId, MockIoctlHelperXe::mockL3BankTopologyType, 8, {0b1111'0011, 0b1001'1111, 0, 0, 0, 0, 0, 0}); + drm->addMockedQueryTopologyData(gtId, DRM_XE_TOPO_L3_BANK, 8, {0b1111'0011, 0b1001'1111, 0, 0, 0, 0, 0, 0}); } DrmQueryTopologyData topologyData{}; TopologyMap topologyMap{};