diff --git a/level_zero/core/source/image/image_hw.inl b/level_zero/core/source/image/image_hw.inl index 54faeabef1..4c1141c463 100644 --- a/level_zero/core/source/image/image_hw.inl +++ b/level_zero/core/source/image/image_hw.inl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019-2020 Intel Corporation + * Copyright (C) 2019-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -103,7 +103,7 @@ ze_result_t ImageCoreFamily::initialize(Device *device, const ze_ surfaceState.setNumberOfMultisamples(RENDER_SURFACE_STATE::NUMBER_OF_MULTISAMPLES::NUMBER_OF_MULTISAMPLES_MULTISAMPLECOUNT_1); if (gmm && gmm->isRenderCompressed) { - NEO::setAuxParamsForCCS(&surfaceState, gmm); + NEO::EncodeSurfaceState::setAuxParamsForCCS(&surfaceState, gmm); } } { @@ -144,7 +144,7 @@ ze_result_t ImageCoreFamily::initialize(Device *device, const ze_ redescribedSurfaceState.setNumberOfMultisamples(RENDER_SURFACE_STATE::NUMBER_OF_MULTISAMPLES::NUMBER_OF_MULTISAMPLES_MULTISAMPLECOUNT_1); if (gmm && gmm->isRenderCompressed) { - NEO::setAuxParamsForCCS(&redescribedSurfaceState, gmm); + NEO::EncodeSurfaceState::setAuxParamsForCCS(&redescribedSurfaceState, gmm); } } diff --git a/opencl/source/mem_obj/image.h b/opencl/source/mem_obj/image.h index f89b52e5cd..68297807e7 100644 --- a/opencl/source/mem_obj/image.h +++ b/opencl/source/mem_obj/image.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2020 Intel Corporation + * Copyright (C) 2018-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -302,7 +302,6 @@ class ImageHw : public Image { void setImageArg(void *memory, bool setAsMediaBlockImage, uint32_t mipLevel, uint32_t rootDeviceIndex) override; void setAuxParamsForMultisamples(RENDER_SURFACE_STATE *surfaceState); - MOCKABLE_VIRTUAL void setAuxParamsForMCSCCS(RENDER_SURFACE_STATE *surfaceState, Gmm *gmm); void setMediaImageArg(void *memory, uint32_t rootDeviceIndex) override; void setMediaSurfaceRotation(void *memory) override; void setSurfaceMemoryObjectControlStateIndexToMocsTable(void *memory, uint32_t value) override; diff --git a/opencl/source/mem_obj/image.inl b/opencl/source/mem_obj/image.inl index 32cc9dfca3..f9bd6dcf78 100644 --- a/opencl/source/mem_obj/image.inl +++ b/opencl/source/mem_obj/image.inl @@ -89,7 +89,7 @@ void ImageHw::setImageArg(void *memory, bool setAsMediaBlockImage, ui if (imageDesc.num_samples > 1) { setAuxParamsForMultisamples(surfaceState); } else if (gmm && gmm->isRenderCompressed) { - setAuxParamsForCCS(surfaceState, gmm); + EncodeSurfaceState::setAuxParamsForCCS(surfaceState, gmm); } appendSurfaceStateDepthParams(surfaceState, gmm); EncodeSurfaceState::appendImageCompressionParams(surfaceState, graphicsAllocation, gmmHelper, isImageFromBuffer()); @@ -105,13 +105,13 @@ void ImageHw::setAuxParamsForMultisamples(RENDER_SURFACE_STATE *surfa auto mcsGmm = getMcsAllocation()->getDefaultGmm(); if (mcsGmm->unifiedAuxTranslationCapable() && mcsGmm->hasMultisampleControlSurface()) { - setAuxParamsForMCSCCS(surfaceState, mcsGmm); + EncodeSurfaceState::setAuxParamsForMCSCCS(surfaceState); surfaceState->setAuxiliarySurfacePitch(mcsGmm->getUnifiedAuxPitchTiles()); surfaceState->setAuxiliarySurfaceQpitch(mcsGmm->getAuxQPitch()); - setClearColorParams(surfaceState, mcsGmm); + EncodeSurfaceState::setClearColorParams(surfaceState, mcsGmm); setUnifiedAuxBaseAddress(surfaceState, mcsGmm); } else if (mcsGmm->unifiedAuxTranslationCapable()) { - setAuxParamsForCCS(surfaceState, mcsGmm); + EncodeSurfaceState::setAuxParamsForCCS(surfaceState, mcsGmm); } else { surfaceState->setAuxiliarySurfaceMode((typename RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE)1); surfaceState->setAuxiliarySurfacePitch(mcsSurfaceInfo.pitch); @@ -199,7 +199,4 @@ void ImageHw::transformImage3dTo2dArray(void *memory) { surfaceState->setSurfaceArray(true); } -template -void ImageHw::setAuxParamsForMCSCCS(RENDER_SURFACE_STATE *surfaceState, Gmm *gmm) { -} } // namespace NEO diff --git a/opencl/source/mem_obj/image_tgllp_plus.inl b/opencl/source/mem_obj/image_tgllp_plus.inl index 1ea6c60b7f..4fa1af6216 100644 --- a/opencl/source/mem_obj/image_tgllp_plus.inl +++ b/opencl/source/mem_obj/image_tgllp_plus.inl @@ -1,15 +1,10 @@ /* - * Copyright (C) 2019-2020 Intel Corporation + * Copyright (C) 2019-2021 Intel Corporation * * SPDX-License-Identifier: MIT * */ -template <> -void ImageHw::setAuxParamsForMCSCCS(RENDER_SURFACE_STATE *surfaceState, Gmm *gmm) { - surfaceState->setAuxiliarySurfaceMode(AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_MCS_LCE); -} - template <> void ImageHw::appendSurfaceStateDepthParams(RENDER_SURFACE_STATE *surfaceState, Gmm *gmm) { if (gmm) { diff --git a/opencl/test/unit_test/CMakeLists.txt b/opencl/test/unit_test/CMakeLists.txt index 8f9c841ea4..6c6d950db8 100644 --- a/opencl/test/unit_test/CMakeLists.txt +++ b/opencl/test/unit_test/CMakeLists.txt @@ -202,7 +202,10 @@ set_target_properties(copy_test_files_per_product PROPERTIES FOLDER ${OPENCL_TES set_target_properties(prepare_test_kernels PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER}) set_target_properties(run_unit_tests PROPERTIES FOLDER ${OPENCL_TEST_PROJECTS_FOLDER}) -target_include_directories(igdrcl_tests BEFORE PRIVATE ${NEO_SHARED_TEST_DIRECTORY}/unit_test/test_macros/header${BRANCH_DIR_SUFFIX}) +target_include_directories(igdrcl_tests BEFORE PRIVATE + ${NEO_SHARED_TEST_DIRECTORY}/unit_test/test_macros/header${BRANCH_DIR_SUFFIX} + ${NEO_SHARED_TEST_DIRECTORY}/unit_test/helpers/includes${BRANCH_DIR_SUFFIX} +) if(NOT DEFINED cloc_cmd_prefix) if(WIN32) diff --git a/opencl/test/unit_test/gen11/image_tests_gen11.cpp b/opencl/test/unit_test/gen11/image_tests_gen11.cpp index 4f4410b09c..10f27f2ab6 100644 --- a/opencl/test/unit_test/gen11/image_tests_gen11.cpp +++ b/opencl/test/unit_test/gen11/image_tests_gen11.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2018-2020 Intel Corporation + * Copyright (C) 2018-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -89,7 +89,7 @@ GEN11TEST_F(gen11ImageTests, givenImageForGen11WhenClearColorParametersAreSetThe EXPECT_EQ(0, memcmp(&surfaceStateBefore, &surfaceStateAfter, sizeof(RENDER_SURFACE_STATE))); - setClearColorParams(&surfaceStateAfter, imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm()); + EncodeSurfaceState::setClearColorParams(&surfaceStateAfter, imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm()); EXPECT_EQ(0, memcmp(&surfaceStateBefore, &surfaceStateAfter, sizeof(RENDER_SURFACE_STATE))); } diff --git a/opencl/test/unit_test/gen12lp/image_tests_gen12lp.inl b/opencl/test/unit_test/gen12lp/image_tests_gen12lp.inl index 95b511ae0e..837dd0df14 100644 --- a/opencl/test/unit_test/gen12lp/image_tests_gen12lp.inl +++ b/opencl/test/unit_test/gen12lp/image_tests_gen12lp.inl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2019-2020 Intel Corporation + * Copyright (C) 2019-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -54,7 +54,7 @@ GEN12LPTEST_F(ImageClearColorFixture, givenImageForGen12LpWhenClearColorParamete std::unique_ptr> imageHw(static_cast *>(ImageHelper::create(&context))); auto gmm = imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm(); gmm->gmmResourceInfo->getResourceFlags()->Gpu.IndirectClearColor = 1; - setClearColorParams(&surfaceState, gmm); + EncodeSurfaceState::setClearColorParams(&surfaceState, gmm); EXPECT_EQ(true, surfaceState.getClearValueAddressEnable()); EXPECT_NE(0u, surfaceState.getClearColorAddress()); @@ -73,7 +73,7 @@ GEN12LPTEST_F(ImageClearColorFixture, givenImageForGen12LpWhenCanonicalAddresFor std::unique_ptr> imageHw(static_cast *>(ImageHelper::create(&context))); auto gmm = imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm(); gmm->gmmResourceInfo->getResourceFlags()->Gpu.IndirectClearColor = 1; - EXPECT_NO_THROW(setClearColorParams(&surfaceState, gmm)); + EXPECT_NO_THROW(EncodeSurfaceState::setClearColorParams(&surfaceState, gmm)); uint64_t nonCanonicalAddress = ((static_cast(surfaceState.getClearColorAddressHigh()) << 32) | surfaceState.getClearColorAddress()); EXPECT_EQ(GmmHelper::decanonize(canonicalAddress), nonCanonicalAddress); @@ -120,7 +120,7 @@ GEN12LPTEST_F(gen12LpImageTests, givenRenderCompressionThenSurfaceStateParamsAre auto surfaceState = FamilyType::cmdInitRenderSurfaceState; auto imageHw = static_cast *>(image.get()); imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm()->gmmResourceInfo->getResourceFlags()->Info.RenderCompressed = true; - setAuxParamsForCCS(&surfaceState, imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm()); + EncodeSurfaceState::setAuxParamsForCCS(&surfaceState, imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm()); EXPECT_FALSE(surfaceState.getMemoryCompressionEnable()); EXPECT_EQ(surfaceState.getAuxiliarySurfaceMode(), RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); @@ -136,7 +136,7 @@ GEN12LPTEST_F(gen12LpImageTests, givenMediaCompressionThenSurfaceStateParamsAreS auto imageHw = static_cast *>(image.get()); imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm()->gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = true; surfaceState.setAuxiliarySurfaceMode(RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); - setAuxParamsForCCS(&surfaceState, imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm()); + EncodeSurfaceState::setAuxParamsForCCS(&surfaceState, imageHw->getGraphicsAllocation(context.getDevice(0)->getRootDeviceIndex())->getDefaultGmm()); EXPECT_TRUE(surfaceState.getMemoryCompressionEnable()); EXPECT_EQ(surfaceState.getAuxiliarySurfaceMode(), RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); diff --git a/opencl/test/unit_test/mem_obj/image_tests.cpp b/opencl/test/unit_test/mem_obj/image_tests.cpp index 212f5db306..833bb32df5 100644 --- a/opencl/test/unit_test/mem_obj/image_tests.cpp +++ b/opencl/test/unit_test/mem_obj/image_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2017-2020 Intel Corporation + * Copyright (C) 2017-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -1594,67 +1594,6 @@ HWTEST_F(ImageTransformTest, givenSurfaceBaseAddressAndUnifiedSurfaceWhenSetUnif EXPECT_EQ(surfBsaseAddress + offset, surfaceState.getAuxiliarySurfaceBaseAddress()); } -template -class MockImageHw : public ImageHw { - public: - MockImageHw(Context *context, const cl_image_format &format, const cl_image_desc &desc, ClSurfaceFormatInfo &surfaceFormatInfo, GraphicsAllocation *graphicsAllocation) : ImageHw(context, {}, 0, 0, 0, nullptr, nullptr, format, desc, false, GraphicsAllocationHelper::toMultiGraphicsAllocation(graphicsAllocation), false, 0, 0, surfaceFormatInfo) { - } - - void setAuxParamsForMCSCCS(typename FamilyName::RENDER_SURFACE_STATE *surfaceState, Gmm *gmm) override; - bool setAuxParamsForMCSCCSCalled = false; -}; - -template -void MockImageHw::setAuxParamsForMCSCCS(typename FamilyName::RENDER_SURFACE_STATE *surfaceState, Gmm *gmm) { - this->setAuxParamsForMCSCCSCalled = true; -} - -using HwImageTest = ::testing::Test; -HWTEST_F(HwImageTest, givenImageHwWithUnifiedSurfaceAndMcsWhenSettingParamsForMultisampleImageThenSetParamsForCcsMcsIsCalled) { - - MockContext context; - OsAgnosticMemoryManager memoryManager(*context.getDevice(0)->getExecutionEnvironment()); - context.memoryManager = &memoryManager; - - cl_image_desc imgDesc = {}; - imgDesc.image_height = 1; - imgDesc.image_width = 4; - imgDesc.image_depth = 1; - imgDesc.image_type = CL_MEM_OBJECT_IMAGE1D; - imgDesc.num_samples = 8; - cl_image_format format = {}; - - auto imgInfo = MockGmm::initImgInfo(imgDesc, 0, nullptr); - auto memoryProperties = MemoryPropertiesHelper::createMemoryProperties(0, 0, 0, &context.getDevice(0)->getDevice()); - AllocationProperties allocProperties = MemObjHelper::getAllocationPropertiesWithImageInfo(0, imgInfo, true, memoryProperties, context.getDevice(0)->getHardwareInfo(), context.getDeviceBitfieldForAllocation(0)); - - auto graphicsAllocation = memoryManager.allocateGraphicsMemoryInPreferredPool(allocProperties, nullptr); - - ClSurfaceFormatInfo formatInfo = {}; - std::unique_ptr> mockImage(new MockImageHw(&context, format, imgDesc, formatInfo, graphicsAllocation)); - - McsSurfaceInfo msi = {10, 20, 3}; - auto mcsAlloc = context.getMemoryManager()->allocateGraphicsMemoryWithProperties(MockAllocationProperties{context.getDevice(0)->getRootDeviceIndex(), MemoryConstants::pageSize}); - mcsAlloc->setDefaultGmm(new Gmm(context.getDevice(0)->getGmmClientContext(), nullptr, 1, false)); - - auto mockMcsGmmResInfo = reinterpret_cast<::testing::NiceMock *>(mcsAlloc->getDefaultGmm()->gmmResourceInfo.get()); - mockMcsGmmResInfo->setUnifiedAuxTranslationCapable(); - mockMcsGmmResInfo->setMultisampleControlSurface(); - EXPECT_TRUE(mcsAlloc->getDefaultGmm()->unifiedAuxTranslationCapable()); - EXPECT_TRUE(mcsAlloc->getDefaultGmm()->hasMultisampleControlSurface()); - - mockImage->setMcsSurfaceInfo(msi); - mockImage->setMcsAllocation(mcsAlloc); - - typedef typename FamilyType::RENDER_SURFACE_STATE RENDER_SURFACE_STATE; - auto surfaceState = FamilyType::cmdInitRenderSurfaceState; - - EXPECT_FALSE(mockImage->setAuxParamsForMCSCCSCalled); - mockImage->setAuxParamsForMultisamples(&surfaceState); - - EXPECT_TRUE(mockImage->setAuxParamsForMCSCCSCalled); -} - using ImageMultiRootDeviceTests = MultiRootDeviceFixture; TEST_F(ImageMultiRootDeviceTests, WhenImageIsCreatedThenImageAllocationHasCorrectRootDeviceIndex) { diff --git a/shared/source/command_container/command_encoder.h b/shared/source/command_container/command_encoder.h index 965be27a25..c61c4d1768 100644 --- a/shared/source/command_container/command_encoder.h +++ b/shared/source/command_container/command_encoder.h @@ -251,6 +251,10 @@ struct EncodeSurfaceState { size_t numberOfBindingTableStates, size_t offsetOfBindingTable); static void appendImageCompressionParams(R_SURFACE_STATE *surfaceState, GraphicsAllocation *allocation, GmmHelper *gmmHelper, bool imageFromBuffer); + static void setAuxParamsForCCS(R_SURFACE_STATE *surfaceState, Gmm *gmm); + static void setAuxParamsForMCSCCS(R_SURFACE_STATE *surfaceState); + static void setClearColorParams(R_SURFACE_STATE *surfaceState, Gmm *gmm); + static void setFlagsForMediaCompression(R_SURFACE_STATE *surfaceState, Gmm *gmm); }; template diff --git a/shared/source/command_container/command_encoder.inl b/shared/source/command_container/command_encoder.inl index 8969a64ae0..31010847f1 100644 --- a/shared/source/command_container/command_encoder.inl +++ b/shared/source/command_container/command_encoder.inl @@ -20,6 +20,7 @@ #include "shared/source/helpers/register_offsets.h" #include "shared/source/helpers/simd_helper.h" #include "shared/source/helpers/string.h" +#include "shared/source/image/image_surface_state.h" #include "shared/source/kernel/dispatch_kernel_encoder_interface.h" #include "shared/source/kernel/kernel_descriptor.h" @@ -425,6 +426,17 @@ size_t EncodeSurfaceState::pushBindingTableAndSurfaceStates(IndirectHeap template void EncodeSurfaceState::encodeExtraCacheSettings(R_SURFACE_STATE *surfaceState, const HardwareInfo &hwInfo) {} +template +void EncodeSurfaceState::setAuxParamsForCCS(R_SURFACE_STATE *surfaceState, Gmm *gmm) { + using AUXILIARY_SURFACE_MODE = typename Family::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE; + // Its expected to not program pitch/qpitch/baseAddress for Aux surface in CCS scenarios + surfaceState->setAuxiliarySurfaceMode(AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); + setFlagsForMediaCompression(surfaceState, gmm); + + setClearColorParams(surfaceState, gmm); + setUnifiedAuxBaseAddress(surfaceState, gmm); +} + template void *EncodeDispatchKernel::getInterfaceDescriptor(CommandContainer &container, uint32_t &iddOffset) { diff --git a/shared/source/command_container/image_surface_state/CMakeLists.txt b/shared/source/command_container/image_surface_state/CMakeLists.txt index a373f553c8..f442f3b56f 100644 --- a/shared/source/command_container/image_surface_state/CMakeLists.txt +++ b/shared/source/command_container/image_surface_state/CMakeLists.txt @@ -7,6 +7,7 @@ set(NEO_CORE_COMMAND_CONTAINER_IMAGE_SURFACE_STATE ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${CMAKE_CURRENT_SOURCE_DIR}/compression_params_bdw_plus.inl + ${CMAKE_CURRENT_SOURCE_DIR}/compression_params_tgllp_plus.inl ) set_property(GLOBAL APPEND PROPERTY NEO_CORE_COMMAND_CONTAINER ${NEO_CORE_COMMAND_CONTAINER_IMAGE_SURFACE_STATE}) diff --git a/shared/source/image/image_tgllp_plus.inl b/shared/source/command_container/image_surface_state/compression_params_tgllp_plus.inl similarity index 63% rename from shared/source/image/image_tgllp_plus.inl rename to shared/source/command_container/image_surface_state/compression_params_tgllp_plus.inl index 589eddcd70..60e6f4e6ba 100644 --- a/shared/source/image/image_tgllp_plus.inl +++ b/shared/source/command_container/image_surface_state/compression_params_tgllp_plus.inl @@ -1,12 +1,18 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2021 Intel Corporation * * SPDX-License-Identifier: MIT * */ -template <> -void setClearColorParams(typename Family::RENDER_SURFACE_STATE *surfaceState, const Gmm *gmm) { +namespace NEO { +template +void EncodeSurfaceState::setAuxParamsForMCSCCS(R_SURFACE_STATE *surfaceState) { + surfaceState->setAuxiliarySurfaceMode(AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_MCS_LCE); +} + +template +void EncodeSurfaceState::setClearColorParams(R_SURFACE_STATE *surfaceState, Gmm *gmm) { if (gmm->gmmResourceInfo->getResourceFlags()->Gpu.IndirectClearColor) { surfaceState->setClearValueAddressEnable(true); @@ -17,8 +23,8 @@ void setClearColorParams(typename Family::RENDER_SURFACE_STATE *surfaceS } } -template <> -void setFlagsForMediaCompression(typename Family::RENDER_SURFACE_STATE *surfaceState, Gmm *gmm) { +template +void EncodeSurfaceState::setFlagsForMediaCompression(R_SURFACE_STATE *surfaceState, Gmm *gmm) { if (gmm->gmmResourceInfo->getResourceFlags()->Info.MediaCompressed) { surfaceState->setAuxiliarySurfaceMode(Family::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); surfaceState->setMemoryCompressionEnable(true); @@ -26,3 +32,5 @@ void setFlagsForMediaCompression(typename Family::RENDER_SURFACE_STATE * surfaceState->setMemoryCompressionEnable(false); } } + +} // namespace NEO diff --git a/shared/source/gen11/command_encoder_gen11.cpp b/shared/source/gen11/command_encoder_gen11.cpp index dd5623e182..ccc39f37be 100644 --- a/shared/source/gen11/command_encoder_gen11.cpp +++ b/shared/source/gen11/command_encoder_gen11.cpp @@ -23,6 +23,21 @@ bool EncodeSurfaceState::doBindingTablePrefetch() { return false; } +template <> +void EncodeSurfaceState::setAuxParamsForMCSCCS(R_SURFACE_STATE *surfaceState) { +} + +template <> +void EncodeSurfaceState::setClearColorParams(R_SURFACE_STATE *surfaceState, Gmm *gmm) { +} + +template <> +void EncodeSurfaceState::setFlagsForMediaCompression(R_SURFACE_STATE *surfaceState, Gmm *gmm) { + if (gmm->gmmResourceInfo->getResourceFlags()->Info.MediaCompressed) { + surfaceState->setAuxiliarySurfaceMode(Family::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); + } +} + template struct EncodeDispatchKernel; template struct EncodeStates; template struct EncodeMath; diff --git a/shared/source/gen12lp/command_encoder_gen12lp.cpp b/shared/source/gen12lp/command_encoder_gen12lp.cpp index e2ebcd15cc..d1babd1ebd 100644 --- a/shared/source/gen12lp/command_encoder_gen12lp.cpp +++ b/shared/source/gen12lp/command_encoder_gen12lp.cpp @@ -16,6 +16,7 @@ using Family = NEO::TGLLPFamily; #include "shared/source/command_container/command_encoder_bdw_plus.inl" #include "shared/source/command_container/encode_compute_mode_tgllp_plus.inl" #include "shared/source/command_container/image_surface_state/compression_params_bdw_plus.inl" +#include "shared/source/command_container/image_surface_state/compression_params_tgllp_plus.inl" #include "shared/source/command_stream/command_stream_receiver.h" namespace NEO { diff --git a/shared/source/gen12lp/image_core_gen12lp.cpp b/shared/source/gen12lp/image_core_gen12lp.cpp index 3338ca5387..210beb6eb5 100644 --- a/shared/source/gen12lp/image_core_gen12lp.cpp +++ b/shared/source/gen12lp/image_core_gen12lp.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -16,7 +16,6 @@ template <> void setFilterMode(Family::RENDER_SURFACE_STATE *surfaceState, const HardwareInfo *hwInfo){}; // clang-format off -#include "shared/source/image/image_tgllp_plus.inl" #include "shared/source/image/image_skl_plus.inl" // clang-format on } // namespace NEO diff --git a/shared/source/gen8/command_encoder_gen8.cpp b/shared/source/gen8/command_encoder_gen8.cpp index 4fe610f72d..b48f8cec0e 100644 --- a/shared/source/gen8/command_encoder_gen8.cpp +++ b/shared/source/gen8/command_encoder_gen8.cpp @@ -17,6 +17,21 @@ using Family = NEO::BDWFamily; #include "shared/source/command_container/image_surface_state/compression_params_bdw_plus.inl" namespace NEO { +template <> +void EncodeSurfaceState::setAuxParamsForMCSCCS(R_SURFACE_STATE *surfaceState) { +} + +template <> +void EncodeSurfaceState::setClearColorParams(R_SURFACE_STATE *surfaceState, Gmm *gmm) { +} + +template <> +void EncodeSurfaceState::setFlagsForMediaCompression(R_SURFACE_STATE *surfaceState, Gmm *gmm) { + if (gmm->gmmResourceInfo->getResourceFlags()->Info.MediaCompressed) { + surfaceState->setAuxiliarySurfaceMode(Family::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); + } +} + template struct EncodeDispatchKernel; template struct EncodeStates; template struct EncodeMath; diff --git a/shared/source/gen9/command_encoder_gen9.cpp b/shared/source/gen9/command_encoder_gen9.cpp index de03b3f43c..51435303dd 100644 --- a/shared/source/gen9/command_encoder_gen9.cpp +++ b/shared/source/gen9/command_encoder_gen9.cpp @@ -17,6 +17,21 @@ using Family = NEO::SKLFamily; #include "shared/source/command_container/image_surface_state/compression_params_bdw_plus.inl" namespace NEO { +template <> +void EncodeSurfaceState::setAuxParamsForMCSCCS(R_SURFACE_STATE *surfaceState) { +} + +template <> +void EncodeSurfaceState::setClearColorParams(R_SURFACE_STATE *surfaceState, Gmm *gmm) { +} + +template <> +void EncodeSurfaceState::setFlagsForMediaCompression(R_SURFACE_STATE *surfaceState, Gmm *gmm) { + if (gmm->gmmResourceInfo->getResourceFlags()->Info.MediaCompressed) { + surfaceState->setAuxiliarySurfaceMode(Family::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); + } +} + template struct EncodeDispatchKernel; template struct EncodeStates; template struct EncodeMath; diff --git a/shared/source/image/CMakeLists.txt b/shared/source/image/CMakeLists.txt index 126df67185..2ed48a26ee 100644 --- a/shared/source/image/CMakeLists.txt +++ b/shared/source/image/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (C) 2020 Intel Corporation +# Copyright (C) 2020-2021 Intel Corporation # # SPDX-License-Identifier: MIT # @@ -8,7 +8,6 @@ set(NEO_CORE_IMAGE ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${CMAKE_CURRENT_SOURCE_DIR}/image_surface_state.h ${CMAKE_CURRENT_SOURCE_DIR}/image_bdw_plus.inl - ${CMAKE_CURRENT_SOURCE_DIR}/image_tgllp_plus.inl ${CMAKE_CURRENT_SOURCE_DIR}/image_skl_plus.inl ) diff --git a/shared/source/image/image_bdw_plus.inl b/shared/source/image/image_bdw_plus.inl index 2dfa9e5629..7e49cf6dab 100644 --- a/shared/source/image/image_bdw_plus.inl +++ b/shared/source/image/image_bdw_plus.inl @@ -1,21 +1,9 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2021 Intel Corporation * * SPDX-License-Identifier: MIT * */ template <> -void setClearColorParams(typename Family::RENDER_SURFACE_STATE *surfaceState, const Gmm *gmm) { -} - -template <> -void setFlagsForMediaCompression(typename Family::RENDER_SURFACE_STATE *surfaceState, Gmm *gmm) { - using AUXILIARY_SURFACE_MODE = typename Family::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE; - if (gmm->gmmResourceInfo->getResourceFlags()->Info.MediaCompressed) { - surfaceState->setAuxiliarySurfaceMode(AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); - } -} - -template <> -void setFilterMode(typename Family::RENDER_SURFACE_STATE *surfaceState, const HardwareInfo *hwInfo){}; \ No newline at end of file +void setFilterMode(typename Family::RENDER_SURFACE_STATE *surfaceState, const HardwareInfo *hwInfo){}; diff --git a/shared/source/image/image_surface_state.h b/shared/source/image/image_surface_state.h index d5b9af818d..efc3e95517 100644 --- a/shared/source/image/image_surface_state.h +++ b/shared/source/image/image_surface_state.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -123,23 +123,7 @@ inline void setUnifiedAuxBaseAddress(typename GfxFamily::RENDER_SURFACE_STATE *s surfaceState->setAuxiliarySurfaceBaseAddress(baseAddress); } -template -void setFlagsForMediaCompression(typename GfxFamily::RENDER_SURFACE_STATE *surfaceState, Gmm *gmm); - -template -void setClearColorParams(typename GfxFamily::RENDER_SURFACE_STATE *surfaceState, const Gmm *gmm); - template void setMipTailStartLod(typename GfxFamily::RENDER_SURFACE_STATE *surfaceState, Gmm *gmm); -template -inline void setAuxParamsForCCS(typename GfxFamily::RENDER_SURFACE_STATE *surfaceState, Gmm *gmm) { - using AUXILIARY_SURFACE_MODE = typename GfxFamily::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE; - // Its expected to not program pitch/qpitch/baseAddress for Aux surface in CCS scenarios - surfaceState->setAuxiliarySurfaceMode(AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); - setFlagsForMediaCompression(surfaceState, gmm); - - setClearColorParams(surfaceState, gmm); - setUnifiedAuxBaseAddress(surfaceState, gmm); -} } // namespace NEO diff --git a/shared/test/unit_test/CMakeLists.txt b/shared/test/unit_test/CMakeLists.txt index eeda0b328f..a851523f20 100644 --- a/shared/test/unit_test/CMakeLists.txt +++ b/shared/test/unit_test/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (C) 2019-2020 Intel Corporation +# Copyright (C) 2019-2021 Intel Corporation # # SPDX-License-Identifier: MIT # @@ -96,6 +96,7 @@ if(NOT SKIP_UNIT_TESTS) ${CMAKE_CURRENT_SOURCE_DIR} ${ENGINE_NODE_DIR} ${NEO_SHARED_TEST_DIRECTORY}/unit_test/test_macros/header${BRANCH_DIR_SUFFIX} + ${NEO_SHARED_TEST_DIRECTORY}/unit_test/helpers/includes${BRANCH_DIR_SUFFIX} ) if(UNIX) diff --git a/shared/test/unit_test/gen11/CMakeLists.txt b/shared/test/unit_test/gen11/CMakeLists.txt index 49b9707d78..df453883af 100644 --- a/shared/test/unit_test/gen11/CMakeLists.txt +++ b/shared/test/unit_test/gen11/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (C) 2019-2020 Intel Corporation +# Copyright (C) 2019-2021 Intel Corporation # # SPDX-License-Identifier: MIT # @@ -10,6 +10,7 @@ if(TESTS_GEN11) ${CMAKE_CURRENT_SOURCE_DIR}/preamble_tests_gen11.cpp ${CMAKE_CURRENT_SOURCE_DIR}/simd_helper_tests_gen11.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_preamble_gen11.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_traits_gen11.h ) set_property(GLOBAL PROPERTY NEO_CORE_TESTS_GEN11 ${NEO_CORE_TESTS_GEN11}) add_subdirectories() diff --git a/shared/test/unit_test/gen11/image_surface_state_tests_gen11.cpp b/shared/test/unit_test/gen11/image_surface_state_tests_gen11.cpp index 30f155657b..614afe0141 100644 --- a/shared/test/unit_test/gen11/image_surface_state_tests_gen11.cpp +++ b/shared/test/unit_test/gen11/image_surface_state_tests_gen11.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -18,10 +18,10 @@ GEN11TEST_F(ImageSurfaceStateTestsGen11, givenGmmWithMediaCompressedWhenSetFlags castSurfaceState->setAuxiliarySurfaceMode(FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); mockGmm.gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = false; - setFlagsForMediaCompression(castSurfaceState, &mockGmm); + EncodeSurfaceState::setFlagsForMediaCompression(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); mockGmm.gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = true; - setFlagsForMediaCompression(castSurfaceState, &mockGmm); + EncodeSurfaceState::setFlagsForMediaCompression(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); } diff --git a/shared/test/unit_test/gen11/test_traits_gen11.h b/shared/test/unit_test/gen11/test_traits_gen11.h new file mode 100644 index 0000000000..9f95a21e4d --- /dev/null +++ b/shared/test/unit_test/gen11/test_traits_gen11.h @@ -0,0 +1,13 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#pragma once +#include "shared/test/unit_test/helpers/test_traits.h" + +template <> +struct TestTraits { +}; diff --git a/shared/test/unit_test/gen12lp/CMakeLists.txt b/shared/test/unit_test/gen12lp/CMakeLists.txt index 8a8095dc2f..d8822eea9f 100644 --- a/shared/test/unit_test/gen12lp/CMakeLists.txt +++ b/shared/test/unit_test/gen12lp/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (C) 2019-2020 Intel Corporation +# Copyright (C) 2019-2021 Intel Corporation # # SPDX-License-Identifier: MIT # @@ -10,6 +10,7 @@ if(TESTS_GEN12LP) ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${CMAKE_CURRENT_SOURCE_DIR}/simd_helper_tests_gen12lp.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_preamble_gen12lp.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_traits_gen12lp.h ) set_property(GLOBAL PROPERTY NEO_CORE_TESTS_GEN12LP ${NEO_CORE_TESTS_GEN12LP}) add_subdirectories() diff --git a/shared/test/unit_test/gen12lp/image_surface_state_tests_gen12lp.cpp b/shared/test/unit_test/gen12lp/image_surface_state_tests_gen12lp.cpp index c3602209a8..d91f5e4e98 100644 --- a/shared/test/unit_test/gen12lp/image_surface_state_tests_gen12lp.cpp +++ b/shared/test/unit_test/gen12lp/image_surface_state_tests_gen12lp.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -18,11 +18,11 @@ GEN12LPTEST_F(ImageSurfaceStateTestsGen12LP, givenGmmWithMediaCompressedWhenSetF castSurfaceState->setAuxiliarySurfaceMode(TGLLPFamily::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); mockGmm.gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = false; - setFlagsForMediaCompression(castSurfaceState, &mockGmm); + EncodeSurfaceState::setFlagsForMediaCompression(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), TGLLPFamily::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); EXPECT_EQ(castSurfaceState->getMemoryCompressionEnable(), false); mockGmm.gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = true; - setFlagsForMediaCompression(castSurfaceState, &mockGmm); + EncodeSurfaceState::setFlagsForMediaCompression(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), TGLLPFamily::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); EXPECT_EQ(castSurfaceState->getMemoryCompressionEnable(), true); } @@ -33,7 +33,7 @@ GEN12LPTEST_F(ImageSurfaceStateTestsGen12LP, givenGmmWhenSetClearColorParamsThen auto castSurfaceState = reinterpret_cast(surfaceState.get()); mockGmm.gmmResourceInfo->getResourceFlags()->Gpu.IndirectClearColor = true; - setClearColorParams(castSurfaceState, &mockGmm); + EncodeSurfaceState::setClearColorParams(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getClearValueAddressEnable(), true); } diff --git a/shared/test/unit_test/gen12lp/test_traits_gen12lp.h b/shared/test/unit_test/gen12lp/test_traits_gen12lp.h new file mode 100644 index 0000000000..027e64af02 --- /dev/null +++ b/shared/test/unit_test/gen12lp/test_traits_gen12lp.h @@ -0,0 +1,13 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#pragma once +#include "shared/test/unit_test/helpers/test_traits.h" + +template <> +struct TestTraits { +}; diff --git a/shared/test/unit_test/gen8/CMakeLists.txt b/shared/test/unit_test/gen8/CMakeLists.txt index 832614156f..f62c591244 100644 --- a/shared/test/unit_test/gen8/CMakeLists.txt +++ b/shared/test/unit_test/gen8/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (C) 2019-2020 Intel Corporation +# Copyright (C) 2019-2021 Intel Corporation # # SPDX-License-Identifier: MIT # @@ -10,6 +10,7 @@ if(TESTS_GEN8) ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${CMAKE_CURRENT_SOURCE_DIR}/simd_helper_tests_gen8.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_preamble_gen8.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_traits_gen8.h ) set_property(GLOBAL PROPERTY NEO_CORE_TESTS_GEN8 ${NEO_CORE_TESTS_GEN8}) add_subdirectories() diff --git a/shared/test/unit_test/gen8/image_surface_state_tests_gen8.cpp b/shared/test/unit_test/gen8/image_surface_state_tests_gen8.cpp index be19188b79..4b05efe32e 100644 --- a/shared/test/unit_test/gen8/image_surface_state_tests_gen8.cpp +++ b/shared/test/unit_test/gen8/image_surface_state_tests_gen8.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -18,10 +18,10 @@ GEN8TEST_F(ImageSurfaceStateTestsGen8, givenGmmWithMediaCompressedWhenSetFlagsFo castSurfaceState->setAuxiliarySurfaceMode(FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); mockGmm.gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = false; - setFlagsForMediaCompression(castSurfaceState, &mockGmm); + EncodeSurfaceState::setFlagsForMediaCompression(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); mockGmm.gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = true; - setFlagsForMediaCompression(castSurfaceState, &mockGmm); + EncodeSurfaceState::setFlagsForMediaCompression(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); } diff --git a/shared/test/unit_test/gen8/test_traits_gen8.h b/shared/test/unit_test/gen8/test_traits_gen8.h new file mode 100644 index 0000000000..07e6484749 --- /dev/null +++ b/shared/test/unit_test/gen8/test_traits_gen8.h @@ -0,0 +1,13 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#pragma once +#include "shared/test/unit_test/helpers/test_traits.h" + +template <> +struct TestTraits { +}; diff --git a/shared/test/unit_test/gen9/CMakeLists.txt b/shared/test/unit_test/gen9/CMakeLists.txt index 9ee3d82f5d..db6bad43af 100644 --- a/shared/test/unit_test/gen9/CMakeLists.txt +++ b/shared/test/unit_test/gen9/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (C) 2019-2020 Intel Corporation +# Copyright (C) 2019-2021 Intel Corporation # # SPDX-License-Identifier: MIT # @@ -10,6 +10,7 @@ if(TESTS_GEN9) ${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt ${CMAKE_CURRENT_SOURCE_DIR}/preamble_tests_gen9.cpp ${CMAKE_CURRENT_SOURCE_DIR}/simd_helper_tests_gen9.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_traits_gen9.h ) set_property(GLOBAL PROPERTY NEO_CORE_TESTS_GEN9 ${NEO_CORE_TESTS_GEN9}) add_subdirectories() diff --git a/shared/test/unit_test/gen9/image_surface_state_tests_gen9.cpp b/shared/test/unit_test/gen9/image_surface_state_tests_gen9.cpp index 00e501d8ed..8d462b3466 100644 --- a/shared/test/unit_test/gen9/image_surface_state_tests_gen9.cpp +++ b/shared/test/unit_test/gen9/image_surface_state_tests_gen9.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -18,10 +18,10 @@ GEN9TEST_F(ImageSurfaceStateTestsGen9, givenGmmWithMediaCompressedWhenSetFlagsFo castSurfaceState->setAuxiliarySurfaceMode(FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); mockGmm.gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = false; - setFlagsForMediaCompression(castSurfaceState, &mockGmm); + EncodeSurfaceState::setFlagsForMediaCompression(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); mockGmm.gmmResourceInfo->getResourceFlags()->Info.MediaCompressed = true; - setFlagsForMediaCompression(castSurfaceState, &mockGmm); + EncodeSurfaceState::setFlagsForMediaCompression(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_NONE); } diff --git a/shared/test/unit_test/gen9/test_traits_gen9.h b/shared/test/unit_test/gen9/test_traits_gen9.h new file mode 100644 index 0000000000..3e4bb08c5f --- /dev/null +++ b/shared/test/unit_test/gen9/test_traits_gen9.h @@ -0,0 +1,13 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#pragma once +#include "shared/test/unit_test/helpers/test_traits.h" + +template <> +struct TestTraits { +}; diff --git a/shared/test/unit_test/helpers/CMakeLists.txt b/shared/test/unit_test/helpers/CMakeLists.txt index 3bbee2d275..d0d4d23047 100644 --- a/shared/test/unit_test/helpers/CMakeLists.txt +++ b/shared/test/unit_test/helpers/CMakeLists.txt @@ -25,6 +25,8 @@ set(NEO_CORE_HELPERS_TESTS ${CMAKE_CURRENT_SOURCE_DIR}/simd_helper_tests.inl ${CMAKE_CURRENT_SOURCE_DIR}/string_tests.cpp ${CMAKE_CURRENT_SOURCE_DIR}/string_to_hash_tests.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_traits.h + ${CMAKE_CURRENT_SOURCE_DIR}/includes${BRANCH_DIR_SUFFIX}/test_traits_common.h ${CMAKE_CURRENT_SOURCE_DIR}/ult_hw_config.h ${CMAKE_CURRENT_SOURCE_DIR}/ult_hw_config.inl ${CMAKE_CURRENT_SOURCE_DIR}/ult_hw_helper.h diff --git a/shared/test/unit_test/helpers/includes/test_traits_common.h b/shared/test/unit_test/helpers/includes/test_traits_common.h new file mode 100644 index 0000000000..adc14841d1 --- /dev/null +++ b/shared/test/unit_test/helpers/includes/test_traits_common.h @@ -0,0 +1,12 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#pragma once +#include "shared/test/unit_test/gen11/test_traits_gen11.h" +#include "shared/test/unit_test/gen12lp/test_traits_gen12lp.h" +#include "shared/test/unit_test/gen8/test_traits_gen8.h" +#include "shared/test/unit_test/gen9/test_traits_gen9.h" diff --git a/shared/test/unit_test/helpers/test_traits.h b/shared/test/unit_test/helpers/test_traits.h new file mode 100644 index 0000000000..d8d0cd4a5b --- /dev/null +++ b/shared/test/unit_test/helpers/test_traits.h @@ -0,0 +1,13 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#pragma once + +#include "igfxfmid.h" + +template +struct TestTraits; diff --git a/shared/test/unit_test/image/image_surface_state_tests.cpp b/shared/test/unit_test/image/image_surface_state_tests.cpp index d2cf9e1c50..8539e39a7a 100644 --- a/shared/test/unit_test/image/image_surface_state_tests.cpp +++ b/shared/test/unit_test/image/image_surface_state_tests.cpp @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Intel Corporation + * Copyright (C) 2020-2021 Intel Corporation * * SPDX-License-Identifier: MIT * @@ -101,7 +101,7 @@ HWTEST_F(ImageSurfaceStateTests, givenGmmWhenSetAuxParamsForCCSThenAuxiliarySurf auto size = sizeof(typename FamilyType::RENDER_SURFACE_STATE); auto surfaceState = std::make_unique(size); auto castSurfaceState = reinterpret_cast(surfaceState.get()); - setAuxParamsForCCS(castSurfaceState, &mockGmm); + EncodeSurfaceState::setAuxParamsForCCS(castSurfaceState, &mockGmm); EXPECT_EQ(castSurfaceState->getAuxiliarySurfaceMode(), FamilyType::RENDER_SURFACE_STATE::AUXILIARY_SURFACE_MODE::AUXILIARY_SURFACE_MODE_AUX_CCS_E); }