diff --git a/shared/source/os_interface/linux/drm_neo.cpp b/shared/source/os_interface/linux/drm_neo.cpp index 1056febb04..6b9c6184d0 100644 --- a/shared/source/os_interface/linux/drm_neo.cpp +++ b/shared/source/os_interface/linux/drm_neo.cpp @@ -39,6 +39,7 @@ #include "shared/source/os_interface/linux/pci_path.h" #include "shared/source/os_interface/linux/sys_calls.h" #include "shared/source/os_interface/linux/system_info.h" +#include "shared/source/os_interface/linux/xe/ioctl_helper_xe.h" #include "shared/source/os_interface/os_environment.h" #include "shared/source/os_interface/os_interface.h" #include "shared/source/os_interface/product_helper.h" @@ -1731,6 +1732,22 @@ uint64_t Drm::alignUpGttSize(uint64_t inputGttSize) { return inputGttSize; } +bool Drm::isDrmSupported(int fileDescriptor) { + auto drmVersion = Drm::getDrmVersion(fileDescriptor); + return "i915" == drmVersion || "xe" == drmVersion; +} + +bool Drm::queryDeviceIdAndRevision() { + auto drmVersion = Drm::getDrmVersion(getFileDescriptor()); + if ("xe" == drmVersion) { + this->ioctlHelper = IoctlHelperXe::create(*this); + auto xeIoctlHelperPtr = static_cast(this->ioctlHelper.get()); + this->setPerContextVMRequired(false); + return xeIoctlHelperPtr->initialize(); + } + return queryI915DeviceIdAndRevision(); +} + template std::vector Drm::query(uint32_t queryId, uint32_t queryItemFlags); template std::vector Drm::query(uint32_t queryId, uint32_t queryItemFlags); template std::vector Drm::query(uint32_t queryId, uint32_t queryItemFlags); diff --git a/shared/source/os_interface/linux/xe/CMakeLists.txt b/shared/source/os_interface/linux/xe/CMakeLists.txt index 0d72a880ee..8e8c583cc3 100644 --- a/shared/source/os_interface/linux/xe/CMakeLists.txt +++ b/shared/source/os_interface/linux/xe/CMakeLists.txt @@ -7,7 +7,6 @@ set(NEO_CORE_OS_INTERFACE_LINUX_XE ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${CMAKE_CURRENT_SOURCE_DIR}/create_ioctl_helper_xe.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/drm_version_xe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ioctl_helper_xe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ioctl_helper_xe.h ${CMAKE_CURRENT_SOURCE_DIR}${BRANCH_DIR_SUFFIX}ioctl_helper_xe_perf.cpp diff --git a/shared/source/os_interface/linux/xe/drm_version_xe.cpp b/shared/source/os_interface/linux/xe/drm_version_xe.cpp deleted file mode 100644 index 4e6f208c5a..0000000000 --- a/shared/source/os_interface/linux/xe/drm_version_xe.cpp +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (C) 2023-2024 Intel Corporation - * - * SPDX-License-Identifier: MIT - * - */ - -#include "shared/source/os_interface/linux/drm_neo.h" -#include "shared/source/os_interface/linux/xe/ioctl_helper_xe.h" - -namespace NEO { -bool Drm::isDrmSupported(int fileDescriptor) { - auto drmVersion = Drm::getDrmVersion(fileDescriptor); - return "i915" == drmVersion || "xe" == drmVersion; -} - -bool Drm::queryDeviceIdAndRevision() { - auto drmVersion = Drm::getDrmVersion(getFileDescriptor()); - if ("xe" == drmVersion) { - this->ioctlHelper = IoctlHelperXe::create(*this); - auto xeIoctlHelperPtr = static_cast(this->ioctlHelper.get()); - this->setPerContextVMRequired(false); - return xeIoctlHelperPtr->initialize(); - } - return queryI915DeviceIdAndRevision(); -} - -} // namespace NEO