Correct scope of WA for pipecontrol before nonpipelined state

- for DG2 platforms it is valid only for G10/G11/G12
- for MTL platforms it is valid only for 12.70.0 and 12.71.0

Additionally:
- setup default hw ip version for each platform
- merge dg2 specific product helper tests to single file

Related-To: HSD-14015808183, HSD-14015812625, HSD-14016015202
Related-To: HSD-14015812559, HSD-14015816823
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
Mateusz Jablonski
2023-02-23 12:54:58 +00:00
committed by Compute-Runtime-Automation
parent 4a369ad88d
commit 5af9509877
35 changed files with 853 additions and 735 deletions

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -135,7 +136,7 @@ const HardwareInfo EhlHwConfig::hwInfo = {
&EHL::workaroundTable,
&EhlHwConfig::gtSystemInfo,
EHL::capabilityTable,
};
AOT::EHL};
GT_SYSTEM_INFO EhlHwConfig::gtSystemInfo = {0};
void EhlHwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -135,7 +136,7 @@ const HardwareInfo IcllpHw1x8x8::hwInfo = {
&ICLLP::workaroundTable,
&IcllpHw1x8x8::gtSystemInfo,
ICLLP::capabilityTable,
};
AOT::ICL};
GT_SYSTEM_INFO IcllpHw1x8x8::gtSystemInfo = {0};
void IcllpHw1x8x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -157,7 +158,7 @@ const HardwareInfo IcllpHw1x4x8::hwInfo = {
&ICLLP::workaroundTable,
&IcllpHw1x4x8::gtSystemInfo,
ICLLP::capabilityTable,
};
AOT::ICL};
GT_SYSTEM_INFO IcllpHw1x4x8::gtSystemInfo = {0};
void IcllpHw1x4x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -176,7 +177,7 @@ const HardwareInfo IcllpHw1x6x8::hwInfo = {
&ICLLP::workaroundTable,
&IcllpHw1x6x8::gtSystemInfo,
ICLLP::capabilityTable,
};
AOT::ICL};
GT_SYSTEM_INFO IcllpHw1x6x8::gtSystemInfo = {0};
void IcllpHw1x6x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -135,7 +136,7 @@ const HardwareInfo LkfHw1x8x8::hwInfo = {
&LKF::workaroundTable,
&LkfHw1x8x8::gtSystemInfo,
LKF::capabilityTable,
};
AOT::LKF};
GT_SYSTEM_INFO LkfHw1x8x8::gtSystemInfo = {0};
void LkfHw1x8x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
LKF::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);

View File

@@ -13,6 +13,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -133,7 +134,7 @@ const HardwareInfo AdlnHwConfig::hwInfo = {
&ADLN::workaroundTable,
&AdlnHwConfig::gtSystemInfo,
ADLN::capabilityTable,
};
AOT::ADL_N};
GT_SYSTEM_INFO AdlnHwConfig::gtSystemInfo = {0};
void AdlnHwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -13,6 +13,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -134,7 +135,7 @@ const HardwareInfo AdlpHwConfig::hwInfo = {
&ADLP::workaroundTable,
&AdlpHwConfig::gtSystemInfo,
ADLP::capabilityTable,
};
AOT::ADL_P};
GT_SYSTEM_INFO AdlpHwConfig::gtSystemInfo = {0};
void AdlpHwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -13,6 +13,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -134,7 +135,7 @@ const HardwareInfo AdlsHwConfig::hwInfo = {
&ADLS::workaroundTable,
&AdlsHwConfig::gtSystemInfo,
ADLS::capabilityTable,
};
AOT::ADL_S};
GT_SYSTEM_INFO AdlsHwConfig::gtSystemInfo = {0};
void AdlsHwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -13,6 +13,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -139,7 +140,7 @@ const HardwareInfo Dg1HwConfig::hwInfo = {
&DG1::workaroundTable,
&Dg1HwConfig::gtSystemInfo,
DG1::capabilityTable,
};
AOT::DG1};
GT_SYSTEM_INFO Dg1HwConfig::gtSystemInfo = {0};
void Dg1HwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -13,6 +13,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -137,7 +138,7 @@ const HardwareInfo RklHwConfig::hwInfo = {
&RKL::workaroundTable,
&RklHwConfig::gtSystemInfo,
RKL::capabilityTable,
};
AOT::RKL};
GT_SYSTEM_INFO RklHwConfig::gtSystemInfo = {0};
void RklHwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -13,6 +13,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -134,7 +135,7 @@ const HardwareInfo TgllpHw1x6x16::hwInfo = {
&TGLLP::workaroundTable,
&TgllpHw1x6x16::gtSystemInfo,
TGLLP::capabilityTable,
};
AOT::TGL};
GT_SYSTEM_INFO TgllpHw1x6x16::gtSystemInfo = {0};
void TgllpHw1x6x16::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -162,7 +163,7 @@ const HardwareInfo TgllpHw1x2x16::hwInfo = {
&TGLLP::workaroundTable,
&TgllpHw1x2x16::gtSystemInfo,
TGLLP::capabilityTable,
};
AOT::TGL};
GT_SYSTEM_INFO TgllpHw1x2x16::gtSystemInfo = {0};
void TgllpHw1x2x16::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -124,7 +125,7 @@ const HardwareInfo BdwHw1x2x6::hwInfo = {
&BDW::workaroundTable,
&BdwHw1x2x6::gtSystemInfo,
BDW::capabilityTable,
};
AOT::BDW};
GT_SYSTEM_INFO BdwHw1x2x6::gtSystemInfo = {0};
void BdwHw1x2x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -143,7 +144,7 @@ const HardwareInfo BdwHw1x3x6::hwInfo = {
&BDW::workaroundTable,
&BdwHw1x3x6::gtSystemInfo,
BDW::capabilityTable,
};
AOT::BDW};
GT_SYSTEM_INFO BdwHw1x3x6::gtSystemInfo = {0};
void BdwHw1x3x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
BDW::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -161,7 +162,7 @@ const HardwareInfo BdwHw1x3x8::hwInfo = {
&BDW::workaroundTable,
&BdwHw1x3x8::gtSystemInfo,
BDW::capabilityTable,
};
AOT::BDW};
GT_SYSTEM_INFO BdwHw1x3x8::gtSystemInfo = {0};
void BdwHw1x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
BDW::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -179,7 +180,7 @@ const HardwareInfo BdwHw2x3x8::hwInfo = {
&BDW::workaroundTable,
&BdwHw2x3x8::gtSystemInfo,
BDW::capabilityTable,
};
AOT::BDW};
GT_SYSTEM_INFO BdwHw2x3x8::gtSystemInfo = {0};
void BdwHw2x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
BDW::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -133,7 +134,7 @@ const HardwareInfo BxtHw1x2x6::hwInfo = {
&BXT::workaroundTable,
&BxtHw1x2x6::gtSystemInfo,
BXT::capabilityTable,
};
AOT::APL};
GT_SYSTEM_INFO BxtHw1x2x6::gtSystemInfo = {0};
void BxtHw1x2x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
BXT::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -151,7 +152,7 @@ const HardwareInfo BxtHw1x3x6::hwInfo = {
&BXT::workaroundTable,
&BxtHw1x3x6::gtSystemInfo,
BXT::capabilityTable,
};
AOT::APL};
GT_SYSTEM_INFO BxtHw1x3x6::gtSystemInfo = {0};
void BxtHw1x3x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
BXT::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -132,7 +133,7 @@ const HardwareInfo CflHw1x2x6::hwInfo = {
&CFL::workaroundTable,
&CflHw1x2x6::gtSystemInfo,
CFL::capabilityTable,
};
AOT::CFL};
GT_SYSTEM_INFO CflHw1x2x6::gtSystemInfo = {0};
void CflHw1x2x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
CFL::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -150,7 +151,7 @@ const HardwareInfo CflHw1x3x6::hwInfo = {
&CFL::workaroundTable,
&CflHw1x3x6::gtSystemInfo,
CFL::capabilityTable,
};
AOT::CFL};
GT_SYSTEM_INFO CflHw1x3x6::gtSystemInfo = {0};
void CflHw1x3x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -169,7 +170,7 @@ const HardwareInfo CflHw1x3x8::hwInfo = {
&CFL::workaroundTable,
&CflHw1x3x8::gtSystemInfo,
CFL::capabilityTable,
};
AOT::CFL};
GT_SYSTEM_INFO CflHw1x3x8::gtSystemInfo = {0};
void CflHw1x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -188,7 +189,7 @@ const HardwareInfo CflHw2x3x8::hwInfo = {
&CFL::workaroundTable,
&CflHw2x3x8::gtSystemInfo,
CFL::capabilityTable,
};
AOT::CFL};
GT_SYSTEM_INFO CflHw2x3x8::gtSystemInfo = {0};
void CflHw2x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
CFL::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -206,7 +207,7 @@ const HardwareInfo CflHw3x3x8::hwInfo = {
&CFL::workaroundTable,
&CflHw3x3x8::gtSystemInfo,
CFL::capabilityTable,
};
AOT::CFL};
GT_SYSTEM_INFO CflHw3x3x8::gtSystemInfo = {0};
void CflHw3x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
CFL::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -134,7 +135,7 @@ const HardwareInfo GlkHw1x3x6::hwInfo = {
&GLK::workaroundTable,
&GlkHw1x3x6::gtSystemInfo,
GLK::capabilityTable,
};
AOT::GLK};
GT_SYSTEM_INFO GlkHw1x3x6::gtSystemInfo = {0};
void GlkHw1x3x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -153,7 +154,7 @@ const HardwareInfo GlkHw1x2x6::hwInfo = {
&GLK::workaroundTable,
&GlkHw1x2x6::gtSystemInfo,
GLK::capabilityTable,
};
AOT::GLK};
GT_SYSTEM_INFO GlkHw1x2x6::gtSystemInfo = {0};
void GlkHw1x2x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -138,7 +139,7 @@ const HardwareInfo KblHw1x2x6::hwInfo = {
&KBL::workaroundTable,
&KblHw1x2x6::gtSystemInfo,
KBL::capabilityTable,
};
AOT::KBL};
GT_SYSTEM_INFO KblHw1x2x6::gtSystemInfo = {0};
void KblHw1x2x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
KBL::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -156,7 +157,7 @@ const HardwareInfo KblHw1x3x6::hwInfo = {
&KBL::workaroundTable,
&KblHw1x3x6::gtSystemInfo,
KBL::capabilityTable,
};
AOT::KBL};
GT_SYSTEM_INFO KblHw1x3x6::gtSystemInfo = {0};
void KblHw1x3x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -175,7 +176,7 @@ const HardwareInfo KblHw1x3x8::hwInfo = {
&KBL::workaroundTable,
&KblHw1x3x8::gtSystemInfo,
KBL::capabilityTable,
};
AOT::KBL};
GT_SYSTEM_INFO KblHw1x3x8::gtSystemInfo = {0};
void KblHw1x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
KBL::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -193,7 +194,7 @@ const HardwareInfo KblHw2x3x8::hwInfo = {
&KBL::workaroundTable,
&KblHw2x3x8::gtSystemInfo,
KBL::capabilityTable,
};
AOT::KBL};
GT_SYSTEM_INFO KblHw2x3x8::gtSystemInfo = {0};
void KblHw2x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
KBL::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -211,7 +212,7 @@ const HardwareInfo KblHw3x3x8::hwInfo = {
&KBL::workaroundTable,
&KblHw3x3x8::gtSystemInfo,
KBL::capabilityTable,
};
AOT::KBL};
GT_SYSTEM_INFO KblHw3x3x8::gtSystemInfo = {0};
void KblHw3x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
KBL::setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);

View File

@@ -11,6 +11,7 @@
#include "shared/source/helpers/constants.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -145,7 +146,7 @@ const HardwareInfo SklHw1x2x6::hwInfo = {
&SKL::workaroundTable,
&SklHw1x2x6::gtSystemInfo,
SKL::capabilityTable,
};
AOT::SKL};
GT_SYSTEM_INFO SklHw1x2x6::gtSystemInfo = {0};
void SklHw1x2x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -163,7 +164,7 @@ const HardwareInfo SklHw1x3x6::hwInfo = {
&SKL::workaroundTable,
&SklHw1x3x6::gtSystemInfo,
SKL::capabilityTable,
};
AOT::SKL};
GT_SYSTEM_INFO SklHw1x3x6::gtSystemInfo = {0};
void SklHw1x3x6::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -181,7 +182,7 @@ const HardwareInfo SklHw1x3x8::hwInfo = {
&SKL::workaroundTable,
&SklHw1x3x8::gtSystemInfo,
SKL::capabilityTable,
};
AOT::SKL};
GT_SYSTEM_INFO SklHw1x3x8::gtSystemInfo = {0};
void SklHw1x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -199,7 +200,7 @@ const HardwareInfo SklHw2x3x8::hwInfo = {
&SKL::workaroundTable,
&SklHw2x3x8::gtSystemInfo,
SKL::capabilityTable,
};
AOT::SKL};
GT_SYSTEM_INFO SklHw2x3x8::gtSystemInfo = {0};
void SklHw2x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);
@@ -217,7 +218,7 @@ const HardwareInfo SklHw3x3x8::hwInfo = {
&SKL::workaroundTable,
&SklHw3x3x8::gtSystemInfo,
SKL::capabilityTable,
};
AOT::SKL};
GT_SYSTEM_INFO SklHw3x3x8::gtSystemInfo = {0};
void SklHw3x3x8::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
setupHardwareInfoBase(hwInfo, setupFeatureTableAndWorkaroundTable);

View File

@@ -15,8 +15,8 @@
namespace NEO {
HardwareInfo::HardwareInfo(const PLATFORM *platform, const FeatureTable *featureTable, const WorkaroundTable *workaroundTable,
const GT_SYSTEM_INFO *gtSystemInfo, const RuntimeCapabilityTable &capabilityTable)
: platform(*platform), featureTable(*featureTable), workaroundTable(*workaroundTable), gtSystemInfo(*gtSystemInfo), capabilityTable(capabilityTable) {
const GT_SYSTEM_INFO *gtSystemInfo, const RuntimeCapabilityTable &capabilityTable, HardwareIpVersion ipVersion)
: platform(*platform), featureTable(*featureTable), workaroundTable(*workaroundTable), gtSystemInfo(*gtSystemInfo), capabilityTable(capabilityTable), ipVersion(ipVersion) {
}
// Global table of hardware prefixes

View File

@@ -135,7 +135,7 @@ inline bool operator==(const RuntimeCapabilityTable &lhs, const RuntimeCapabilit
struct HardwareInfo {
HardwareInfo() = default;
HardwareInfo(const PLATFORM *platform, const FeatureTable *featureTable, const WorkaroundTable *workaroundTable,
const GT_SYSTEM_INFO *gtSystemInfo, const RuntimeCapabilityTable &capabilityTable);
const GT_SYSTEM_INFO *gtSystemInfo, const RuntimeCapabilityTable &capabilityTable, HardwareIpVersion ipVersion);
PLATFORM platform{};
FeatureTable featureTable{};

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2022 Intel Corporation
* Copyright (C) 2022-2023 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
@@ -10,6 +10,8 @@
namespace NEO {
struct HardwareIpVersion {
HardwareIpVersion() = default;
HardwareIpVersion(uint32_t ipVersion) : value(ipVersion){};
union {
uint32_t value;
struct

View File

@@ -13,6 +13,7 @@
#include "shared/source/xe_hpc_core/hw_cmds_pvc.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -172,7 +173,7 @@ const HardwareInfo PvcHwConfig::hwInfo = {
&PVC::workaroundTable,
&PvcHwConfig::gtSystemInfo,
PVC::capabilityTable,
};
AOT::PVC_XT_A0};
GT_SYSTEM_INFO PvcHwConfig::gtSystemInfo = {0};
void PvcHwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {

View File

@@ -1,10 +1,11 @@
/*
* Copyright (C) 2022 Intel Corporation
* Copyright (C) 2022-2023 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
namespace NEO {
const HardwareInfo MTL::hwInfo = MtlHwConfig::hwInfo;
const uint64_t MTL::defaultHardwareInfoConfig = 0;
@@ -13,4 +14,5 @@ void setupMTLHardwareInfoImpl(HardwareInfo *hwInfo, bool setupFeatureTableAndWor
MtlHwConfig::setupHardwareInfo(hwInfo, setupFeatureTableAndWorkaroundTable);
}
void (*MTL::setupHardwareInfo)(HardwareInfo *, bool, const uint64_t) = setupMTLHardwareInfoImpl;
void (*MTL::setupHardwareInfo)(HardwareInfo *, bool, const uint64_t) = setupMTLHardwareInfoImpl;
} // namespace NEO

View File

@@ -143,8 +143,9 @@ bool ProductHelperHw<gfxProduct>::isPrefetchDisablingRequired(const HardwareInfo
template <>
std::pair<bool, bool> ProductHelperHw<gfxProduct>::isPipeControlPriorToNonPipelinedStateCommandsWARequired(const HardwareInfo &hwInfo, bool isRcs) const {
auto isBasicWARequired = true;
auto isExtendedWARequired = hwInfo.gtSystemInfo.CCSInfo.NumberOfCCSEnabled > 1 && !isRcs;
auto isAcm = DG2::isG10(hwInfo) || DG2::isG11(hwInfo) || DG2::isG12(hwInfo);
auto isBasicWARequired = isAcm;
auto isExtendedWARequired = isAcm && hwInfo.gtSystemInfo.CCSInfo.NumberOfCCSEnabled > 1 && !isRcs;
if (DebugManager.flags.ProgramExtendedPipeControlPriorToNonPipelinedStateCommand.get() != -1) {
isExtendedWARequired = DebugManager.flags.ProgramExtendedPipeControlPriorToNonPipelinedStateCommand.get();

View File

@@ -13,6 +13,7 @@
#include "aubstream/engine_node.h"
#include "device_ids_configs_dg2.h"
#include "platforms.h"
namespace NEO {
@@ -147,7 +148,7 @@ const HardwareInfo Dg2HwConfig::hwInfo = {
&DG2::workaroundTable,
&Dg2HwConfig::gtSystemInfo,
DG2::capabilityTable,
};
AOT::DG2_G10_A0};
GT_SYSTEM_INFO Dg2HwConfig::gtSystemInfo = {0};
void Dg2HwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
GT_SYSTEM_INFO *gtSysInfo = &hwInfo->gtSystemInfo;

View File

@@ -12,6 +12,7 @@
#include "shared/source/xe_hpg_core/hw_cmds_mtl.h"
#include "aubstream/engine_node.h"
#include "platforms.h"
namespace NEO {
@@ -148,7 +149,7 @@ const HardwareInfo MtlHwConfig::hwInfo = {
&MTL::workaroundTable,
&MtlHwConfig::gtSystemInfo,
MTL::capabilityTable,
};
AOT::XE_LPG_MD_A0};
GT_SYSTEM_INFO MtlHwConfig::gtSystemInfo = {0};
void MtlHwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTableAndWorkaroundTable) {
@@ -185,6 +186,5 @@ void MtlHwConfig::setupHardwareInfo(HardwareInfo *hwInfo, bool setupFeatureTable
}
};
#include "hw_info_setup_mtl.inl"
} // namespace NEO
#include "hw_info_setup_mtl.inl"

View File

@@ -80,7 +80,7 @@ uint32_t ProductHelperHw<gfxProduct>::getSteppingFromHwRevId(const HardwareInfo
template <>
std::pair<bool, bool> ProductHelperHw<gfxProduct>::isPipeControlPriorToNonPipelinedStateCommandsWARequired(const HardwareInfo &hwInfo, bool isRcs) const {
auto isBasicWARequired = GfxCoreHelper::isWorkaroundRequired(REVISION_A0, REVISION_B, hwInfo, *this);
auto isBasicWARequired = getProductConfigFromHwInfo(hwInfo) == AOT::XE_LPG_MD_A0 || getProductConfigFromHwInfo(hwInfo) == AOT::XE_LPG_LG_A0;
auto isExtendedWARequired = false;
return {isBasicWARequired, isExtendedWARequired};