2019-09-19 01:32:33 +08:00
|
|
|
/*
|
2023-04-13 05:33:35 +08:00
|
|
|
* Copyright (C) 2021-2023 Intel Corporation
|
2019-09-19 01:32:33 +08:00
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: MIT
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
2022-06-26 06:24:42 +08:00
|
|
|
#include "shared/source/gen12lp/hw_cmds.h"
|
2020-02-24 05:44:01 +08:00
|
|
|
#include "shared/source/gen12lp/hw_info.h"
|
2021-04-13 20:00:07 +08:00
|
|
|
#include "shared/test/common/helpers/unit_test_helper.h"
|
|
|
|
#include "shared/test/common/helpers/unit_test_helper.inl"
|
2022-01-17 20:54:53 +08:00
|
|
|
#include "shared/test/common/helpers/unit_test_helper_bdw_and_later.inl"
|
2021-11-05 07:50:45 +08:00
|
|
|
#include "shared/test/common/libult/gen12lp/special_ult_helper_gen12lp.h"
|
2020-02-24 17:22:30 +08:00
|
|
|
|
2019-09-19 01:32:33 +08:00
|
|
|
namespace NEO {
|
|
|
|
|
2022-07-25 23:30:11 +08:00
|
|
|
using Family = Gen12LpFamily;
|
2019-09-19 01:32:33 +08:00
|
|
|
|
|
|
|
template <>
|
|
|
|
bool UnitTestHelper<Family>::isL3ConfigProgrammable() {
|
|
|
|
return false;
|
|
|
|
};
|
|
|
|
|
|
|
|
template <>
|
|
|
|
bool UnitTestHelper<Family>::isPageTableManagerSupported(const HardwareInfo &hwInfo) {
|
2020-01-10 18:22:54 +08:00
|
|
|
return hwInfo.capabilityTable.ftrRenderCompressedBuffers || hwInfo.capabilityTable.ftrRenderCompressedImages;
|
2019-09-19 01:32:33 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
template <>
|
|
|
|
bool UnitTestHelper<Family>::isPipeControlWArequired(const HardwareInfo &hwInfo) {
|
2019-09-27 19:28:04 +08:00
|
|
|
return SpecialUltHelperGen12lp::isPipeControlWArequired(hwInfo.platform.eProductFamily);
|
2019-09-19 01:32:33 +08:00
|
|
|
}
|
|
|
|
|
2021-09-24 00:46:42 +08:00
|
|
|
template <>
|
|
|
|
uint32_t UnitTestHelper<Family>::getDebugModeRegisterOffset() {
|
|
|
|
return 0x20d8;
|
|
|
|
}
|
|
|
|
|
2022-09-02 21:15:59 +08:00
|
|
|
template <>
|
2023-12-05 20:44:46 +08:00
|
|
|
bool UnitTestHelper<Family>::getDisableFusionStateFromFrontEndCommand(const typename Family::FrontEndStateCommand &feCmd) {
|
2022-09-02 21:15:59 +08:00
|
|
|
return feCmd.getDisableSlice0Subslice2();
|
|
|
|
}
|
|
|
|
|
2022-09-19 21:09:56 +08:00
|
|
|
template <>
|
|
|
|
bool UnitTestHelper<Family>::getSystolicFlagValueFromPipelineSelectCommand(const typename Family::PIPELINE_SELECT &pipelineSelectCmd) {
|
|
|
|
return pipelineSelectCmd.getSpecialModeEnable();
|
|
|
|
}
|
|
|
|
|
2019-09-19 01:32:33 +08:00
|
|
|
template struct UnitTestHelper<Family>;
|
|
|
|
} // namespace NEO
|