From dcac701482171ae485ae519022b13785565c50b6 Mon Sep 17 00:00:00 2001 From: Mateusz Jablonski Date: Wed, 5 Jun 2024 08:26:29 +0000 Subject: [PATCH] feature: add support for receiving FtrWalkerMTP flag Related-To: NEO-8188, NEO-10774 Signed-off-by: Mateusz Jablonski --- shared/source/os_interface/windows/sharedata_wrapper.h | 1 + .../source/sku_info/operations/windows/sku_info_receiver.h | 1 + shared/source/sku_info/sku_info_base.h | 5 +++-- shared/test/unit_test/sku_info/sku_info_base_reference.h | 1 + .../source/wsl_compute_helper_types_demarshall.h | 6 ++++++ .../source/wsl_compute_helper_types_tokens.h | 1 + 6 files changed, 13 insertions(+), 2 deletions(-) diff --git a/shared/source/os_interface/windows/sharedata_wrapper.h b/shared/source/os_interface/windows/sharedata_wrapper.h index c79977bad3..c9c37b47f2 100644 --- a/shared/source/os_interface/windows/sharedata_wrapper.h +++ b/shared/source/os_interface/windows/sharedata_wrapper.h @@ -96,6 +96,7 @@ struct SKU_FEATURE_TABLE_KMD : SKU_FEATURE_TABLE_GMM { // NOLINT(readability-ide bool FtrLocalMemoryAllows4KB : 1; // NOLINT(readability-identifier-naming) bool FtrHwScheduling : 1; // NOLINT(readability-identifier-naming) + bool FtrWalkerMTP : 1; // NOLINT(readability-identifier-naming) }; struct WA_TABLE_KMD : WA_TABLE_GMM { // NOLINT(readability-identifier-naming) diff --git a/shared/source/sku_info/operations/windows/sku_info_receiver.h b/shared/source/sku_info/operations/windows/sku_info_receiver.h index bc1d989b71..1227be0200 100644 --- a/shared/source/sku_info/operations/windows/sku_info_receiver.h +++ b/shared/source/sku_info/operations/windows/sku_info_receiver.h @@ -70,6 +70,7 @@ class SkuInfoReceiver { RECEIVE_FTR(Unified3DMediaCompressionFormats); RECEIVE_FTR(57bGPUAddressing); RECEIVE_FTR(Tile64Optimization); + RECEIVE_FTR(WalkerMTP); #undef RECEIVE_FTR } diff --git a/shared/source/sku_info/sku_info_base.h b/shared/source/sku_info/sku_info_base.h index 448b2441c6..6203e17eeb 100644 --- a/shared/source/sku_info/sku_info_base.h +++ b/shared/source/sku_info/sku_info_base.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2023 Intel Corporation + * Copyright (C) 2018-2024 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -66,7 +66,8 @@ struct FeatureTableBase { uint32_t ftrUnified3DMediaCompressionFormats : 1; uint32_t ftr57bGPUAddressing : 1; uint32_t ftrTile64Optimization : 1; - uint32_t reserved : 22; + uint32_t ftrWalkerMTP : 1; + uint32_t reserved : 21; }; BcsInfoMask ftrBcsInfo = 1; diff --git a/shared/test/unit_test/sku_info/sku_info_base_reference.h b/shared/test/unit_test/sku_info/sku_info_base_reference.h index 65b38468ff..7c6641ecf6 100644 --- a/shared/test/unit_test/sku_info/sku_info_base_reference.h +++ b/shared/test/unit_test/sku_info/sku_info_base_reference.h @@ -114,6 +114,7 @@ struct SkuInfoBaseReference { refFtrTable.flags.ftrTile64Optimization = true; refFtrTable.flags.ftrWddmHwQueues = true; + refFtrTable.flags.ftrWalkerMTP = true; } static void fillReferenceWaToReceive(WorkaroundTable &refWaTable) { diff --git a/shared/wsl_compute_helper/source/wsl_compute_helper_types_demarshall.h b/shared/wsl_compute_helper/source/wsl_compute_helper_types_demarshall.h index 5ba9e7dc05..6da759c541 100644 --- a/shared/wsl_compute_helper/source/wsl_compute_helper_types_demarshall.h +++ b/shared/wsl_compute_helper/source/wsl_compute_helper_types_demarshall.h @@ -1883,6 +1883,9 @@ struct Demarshaller { case TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS91822__FTR_ASSIGNED_GPU_TILE: { dst.FtrAssignedGpuTile = readTokValue(*tok); } break; + case TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WALKER_MTP: + dst.FtrWalkerMTP = readTokValue(*tok); + break; }; tok = tok + 1 + tok->valueDwordCount; } else { @@ -3086,6 +3089,9 @@ struct Demarshaller { case TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS91822__FTR_ASSIGNED_GPU_TILE: { dst.SkuTable.FtrAssignedGpuTile = readTokValue(*tokSkuTable); } break; + case TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WALKER_MTP: + dst.SkuTable.FtrWalkerMTP = readTokValue(*tokSkuTable); + break; }; tokSkuTable = tokSkuTable + 1 + tokSkuTable->valueDwordCount; } else { diff --git a/shared/wsl_compute_helper/source/wsl_compute_helper_types_tokens.h b/shared/wsl_compute_helper/source/wsl_compute_helper_types_tokens.h index cf75c3bb1e..184b9f8e75 100644 --- a/shared/wsl_compute_helper/source/wsl_compute_helper_types_tokens.h +++ b/shared/wsl_compute_helper/source/wsl_compute_helper_types_tokens.h @@ -875,6 +875,7 @@ enum TOK : uint32_t { TOK_FS_TIME_STAMP_DATA_HEADER__M_HEADER = 3986, TOK_FS_TIME_STAMP_DATA_HEADER__M_DATA = 3987, TOK_FS_GMM_TEXTURE_INFO_REC____PLATFORM = 3988, // !(_DEBUG || _RELEASE_INTERNAL) + TOK_FBD_SKU_FEATURE_TABLE__ANONYMOUS21990__FTR_WALKER_MTP = 4017, TOK_FBD_CREATECONTEXT_PVTDATA__UMD_CONTEXT_TYPE = 4271, TOK_FBD_GMM_RESOURCE_FLAG_REC__ANONYMOUS12521__DENIABLE_LOCAL_ONLY_FOR_COMPRESSION = 4283,