2017-12-21 07:45:38 +08:00
|
|
|
/*
|
2018-09-18 15:11:08 +08:00
|
|
|
* Copyright (C) 2017-2018 Intel Corporation
|
2017-12-21 07:45:38 +08:00
|
|
|
*
|
2018-09-18 15:11:08 +08:00
|
|
|
* SPDX-License-Identifier: MIT
|
2017-12-21 07:45:38 +08:00
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "unit_tests/helpers/hw_helper_tests.h"
|
|
|
|
|
|
|
|
typedef HwHelperTest HwHelperTestSkl;
|
|
|
|
|
|
|
|
GEN9TEST_F(HwHelperTestSkl, getMaxBarriersPerSliceReturnsCorrectSize) {
|
|
|
|
auto &helper = HwHelper::get(renderCoreFamily);
|
|
|
|
EXPECT_EQ(32u, helper.getMaxBarrierRegisterPerSlice());
|
|
|
|
}
|
|
|
|
|
|
|
|
GEN9TEST_F(HwHelperTestSkl, setCapabilityCoherencyFlag) {
|
|
|
|
auto &helper = HwHelper::get(renderCoreFamily);
|
|
|
|
|
|
|
|
bool coherency = false;
|
2018-11-21 23:47:21 +08:00
|
|
|
helper.setCapabilityCoherencyFlag(&hwInfoHelper.hwInfo, coherency);
|
2017-12-21 07:45:38 +08:00
|
|
|
EXPECT_TRUE(coherency);
|
|
|
|
}
|
|
|
|
|
|
|
|
GEN9TEST_F(HwHelperTestSkl, setupPreemptionRegisters) {
|
|
|
|
auto &helper = HwHelper::get(renderCoreFamily);
|
|
|
|
|
|
|
|
bool preemption = false;
|
2018-11-21 23:47:21 +08:00
|
|
|
preemption = helper.setupPreemptionRegisters(&hwInfoHelper.hwInfo, preemption);
|
2017-12-21 07:45:38 +08:00
|
|
|
EXPECT_FALSE(preemption);
|
2018-11-21 23:47:21 +08:00
|
|
|
EXPECT_FALSE(hwInfoHelper.hwInfo.capabilityTable.whitelistedRegisters.csChicken1_0x2580);
|
2017-12-21 07:45:38 +08:00
|
|
|
|
|
|
|
preemption = true;
|
2018-11-21 23:47:21 +08:00
|
|
|
preemption = helper.setupPreemptionRegisters(&hwInfoHelper.hwInfo, preemption);
|
2017-12-21 07:45:38 +08:00
|
|
|
EXPECT_TRUE(preemption);
|
2018-11-21 23:47:21 +08:00
|
|
|
EXPECT_TRUE(hwInfoHelper.hwInfo.capabilityTable.whitelistedRegisters.csChicken1_0x2580);
|
2018-01-09 21:25:30 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
GEN9TEST_F(HwHelperTestSkl, adjustDefaultEngineType) {
|
2018-11-21 23:47:21 +08:00
|
|
|
auto engineType = hwInfoHelper.hwInfo.capabilityTable.defaultEngineType;
|
2018-01-09 21:25:30 +08:00
|
|
|
auto &helper = HwHelper::get(renderCoreFamily);
|
2018-11-21 23:47:21 +08:00
|
|
|
helper.adjustDefaultEngineType(&hwInfoHelper.hwInfo);
|
|
|
|
EXPECT_EQ(engineType, hwInfoHelper.hwInfo.capabilityTable.defaultEngineType);
|
2017-12-21 07:45:38 +08:00
|
|
|
}
|
2018-02-19 16:50:17 +08:00
|
|
|
|
|
|
|
GEN9TEST_F(HwHelperTestSkl, givenGen9PlatformWhenSetupHardwareCapabilitiesIsCalledThenDefaultImplementationIsUsed) {
|
|
|
|
auto &helper = HwHelper::get(renderCoreFamily);
|
|
|
|
|
|
|
|
// Test default method implementation
|
2018-11-21 23:47:21 +08:00
|
|
|
testDefaultImplementationOfSetupHardwareCapabilities(helper, hwInfoHelper.hwInfo);
|
2018-02-19 16:50:17 +08:00
|
|
|
}
|
2018-04-06 20:25:22 +08:00
|
|
|
|
|
|
|
GEN9TEST_F(HwHelperTestSkl, givenDebuggingActiveWhenSipKernelTypeIsQueriedThenDbgCsrLocalTypeIsReturned) {
|
|
|
|
auto &helper = HwHelper::get(renderCoreFamily);
|
|
|
|
|
|
|
|
auto sipType = helper.getSipKernelType(true);
|
|
|
|
EXPECT_EQ(SipKernelType::DbgCsrLocal, sipType);
|
2018-08-23 17:29:39 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
GEN9TEST_F(HwHelperTestSkl, whenGetConfigureAddressSpaceModeThenReturnZero) {
|
|
|
|
auto &helper = HwHelper::get(renderCoreFamily);
|
|
|
|
EXPECT_EQ(0u, helper.getConfigureAddressSpaceMode());
|
2018-11-21 23:47:21 +08:00
|
|
|
}
|