From a8fbf4ecca235a09b336ba6eea34fffb36530650 Mon Sep 17 00:00:00 2001 From: "Mrozek, Michal" Date: Sun, 2 Feb 2020 01:48:22 -0800 Subject: [PATCH] Revert "Stop using platformDevices to setup hw info on Linux" This reverts commit 8bbb719a975c1e60c776760c4583b4ca53ca9eca. Change-Id: I1335d6545a0e3497de008ecd185e50fde6418455 --- runtime/dll/linux/drm_neo_create.cpp | 4 +--- .../os_interface/linux/device_factory_linux.cpp | 5 +++-- unit_tests/linux/main_linux_dll.cpp | 16 ---------------- 3 files changed, 4 insertions(+), 21 deletions(-) diff --git a/runtime/dll/linux/drm_neo_create.cpp b/runtime/dll/linux/drm_neo_create.cpp index 8cbffa243f..1b3ea3cd0a 100644 --- a/runtime/dll/linux/drm_neo_create.cpp +++ b/runtime/dll/linux/drm_neo_create.cpp @@ -6,7 +6,6 @@ */ #include "core/debug_settings/debug_settings_manager.h" -#include "core/execution_environment/root_device_environment.h" #include "core/gmm_helper/gmm_helper.h" #include "core/helpers/hw_cmds.h" #include "core/helpers/hw_helper.h" @@ -14,7 +13,6 @@ #include "core/helpers/options.h" #include "core/os_interface/linux/drm_neo.h" #include "core/os_interface/linux/drm_null_device.h" -#include "runtime/execution_environment/execution_environment.h" #include "drm/i915_drm.h" @@ -168,7 +166,7 @@ Drm *Drm::create(int32_t deviceOrdinal, RootDeviceEnvironment &rootDeviceEnviron } } if (device) { - rootDeviceEnvironment.executionEnvironment.setHwInfo(device->pHwInfo); + platformDevices[0] = device->pHwInfo; ret = drmObject->setupHardwareInfo(const_cast(device), true); if (ret != 0) { return nullptr; diff --git a/runtime/os_interface/linux/device_factory_linux.cpp b/runtime/os_interface/linux/device_factory_linux.cpp index f376463c3e..34e100a37f 100644 --- a/runtime/os_interface/linux/device_factory_linux.cpp +++ b/runtime/os_interface/linux/device_factory_linux.cpp @@ -43,8 +43,9 @@ bool DeviceFactory::getDevices(size_t &numDevices, ExecutionEnvironment &executi } auto hardwareInfo = executionEnvironment.getMutableHardwareInfo(); - HwInfoConfig *hwConfig = HwInfoConfig::get(hardwareInfo->platform.eProductFamily); - if (hwConfig->configureHwInfo(hardwareInfo, hardwareInfo, executionEnvironment.rootDeviceEnvironments[0]->osInterface.get())) { + const HardwareInfo *pCurrDevice = platformDevices[devNum]; + HwInfoConfig *hwConfig = HwInfoConfig::get(pCurrDevice->platform.eProductFamily); + if (hwConfig->configureHwInfo(pCurrDevice, hardwareInfo, executionEnvironment.rootDeviceEnvironments[0]->osInterface.get())) { return false; } executionEnvironment.calculateMaxOsContextCount(); diff --git a/unit_tests/linux/main_linux_dll.cpp b/unit_tests/linux/main_linux_dll.cpp index a13b06b9b8..9cf4e9b1dc 100644 --- a/unit_tests/linux/main_linux_dll.cpp +++ b/unit_tests/linux/main_linux_dll.cpp @@ -404,19 +404,3 @@ int main(int argc, char **argv) { return retVal; } - -TEST_F(DrmTests, whenCreateDrmIsCalledThenProperHwInfoIsSetup) { - auto oldHwInfo = executionEnvironment.getMutableHardwareInfo(); - oldHwInfo->platform.eProductFamily = IGFX_UNKNOWN; - oldHwInfo->platform.eRenderCoreFamily = IGFX_UNKNOWN_CORE; - auto drm = DrmWrap::createDrm(0, *rootDeviceEnvironment); - EXPECT_NE(drm, nullptr); - auto currentHwInfo = executionEnvironment.getHardwareInfo(); - EXPECT_NE(IGFX_UNKNOWN, currentHwInfo->platform.eProductFamily); - EXPECT_NE(IGFX_UNKNOWN_CORE, currentHwInfo->platform.eRenderCoreFamily); - - DrmWrap::closeDevice(0); - - drm = DrmWrap::get(0); - EXPECT_EQ(drm, nullptr); -}