@@ -595,6 +595,7 @@ HWTEST2_F(KernelImmutableDataBindlessTest, givenGlobalVarBufferAndBindlessExplic
595595 void encodeBufferSurfaceState (EncodeSurfaceStateArgs &args) const override {
596596 savedSurfaceStateArgs = args;
597597 ++encodeBufferSurfaceStateCalled;
598+ NEO::GfxCoreHelperHw<FamilyType>::encodeBufferSurfaceState (args);
598599 }
599600 };
600601
@@ -651,6 +652,7 @@ HWTEST2_F(KernelImmutableDataBindlessTest, givenGlobalVarBufferAndBindlessExplic
651652}
652653
653654HWTEST2_F (KernelImmutableDataBindlessTest, givenGlobalConstBufferAndBindlessExplicitAndImplicitArgsAndBindlessHeapsHelperWhenInitializeKernelImmutableDataThenSurfaceStateIsSetAndImplicitArgBindlessOffsetIsPatched, IsAtLeastXeHpgCore) {
655+ using RENDER_SURFACE_STATE = typename FamilyType::RENDER_SURFACE_STATE;
654656 HardwareInfo hwInfo = *defaultHwInfo;
655657
656658 auto device = std::unique_ptr<NEO::MockDevice>(NEO::MockDevice::createWithNewExecutionEnvironment<NEO::MockDevice>(&hwInfo, 0 ));
@@ -667,6 +669,7 @@ HWTEST2_F(KernelImmutableDataBindlessTest, givenGlobalConstBufferAndBindlessExpl
667669 void encodeBufferSurfaceState (EncodeSurfaceStateArgs &args) const override {
668670 savedSurfaceStateArgs = args;
669671 ++encodeBufferSurfaceStateCalled;
672+ NEO::GfxCoreHelperHw<FamilyType>::encodeBufferSurfaceState (args);
670673 }
671674 };
672675
@@ -724,12 +727,17 @@ HWTEST2_F(KernelImmutableDataBindlessTest, givenGlobalConstBufferAndBindlessExpl
724727 EXPECT_EQ (allocSize, savedSurfaceStateArgs.size );
725728 EXPECT_EQ (gpuAddress, savedSurfaceStateArgs.graphicsAddress );
726729
727- EXPECT_EQ (globalConstBuffer.getBindlessInfo ().ssPtr , savedSurfaceStateArgs.outMemory );
730+ EXPECT_NE (globalConstBuffer.getBindlessInfo ().ssPtr , savedSurfaceStateArgs.outMemory );
731+
732+ const auto surfState = reinterpret_cast <RENDER_SURFACE_STATE *>(globalConstBuffer.getBindlessInfo ().ssPtr );
733+ ASSERT_NE (nullptr , surfState);
734+ EXPECT_EQ (gpuAddress, surfState->getSurfaceBaseAddress ());
728735 EXPECT_EQ (&globalConstBuffer, savedSurfaceStateArgs.allocation );
729736 }
730737}
731738
732739HWTEST2_F (KernelImmutableDataBindlessTest, givenGlobalVarBufferAndBindlessExplicitAndImplicitArgsAndBindlessHeapsHelperWhenInitializeKernelImmutableDataThenSurfaceStateIsSetAndImplicitArgBindlessOffsetIsPatched, IsAtLeastXeHpgCore) {
740+ using RENDER_SURFACE_STATE = typename FamilyType::RENDER_SURFACE_STATE;
733741 HardwareInfo hwInfo = *defaultHwInfo;
734742
735743 auto device = std::unique_ptr<NEO::MockDevice>(NEO::MockDevice::createWithNewExecutionEnvironment<NEO::MockDevice>(&hwInfo, 0 ));
@@ -746,6 +754,7 @@ HWTEST2_F(KernelImmutableDataBindlessTest, givenGlobalVarBufferAndBindlessExplic
746754 void encodeBufferSurfaceState (EncodeSurfaceStateArgs &args) const override {
747755 savedSurfaceStateArgs = args;
748756 ++encodeBufferSurfaceStateCalled;
757+ NEO::GfxCoreHelperHw<FamilyType>::encodeBufferSurfaceState (args);
749758 }
750759 };
751760
@@ -803,7 +812,11 @@ HWTEST2_F(KernelImmutableDataBindlessTest, givenGlobalVarBufferAndBindlessExplic
803812 EXPECT_EQ (allocSize, savedSurfaceStateArgs.size );
804813 EXPECT_EQ (gpuAddress, savedSurfaceStateArgs.graphicsAddress );
805814
806- EXPECT_EQ (globalVarBuffer.getBindlessInfo ().ssPtr , savedSurfaceStateArgs.outMemory );
815+ EXPECT_NE (globalVarBuffer.getBindlessInfo ().ssPtr , savedSurfaceStateArgs.outMemory );
816+
817+ const auto surfState = reinterpret_cast <RENDER_SURFACE_STATE *>(globalVarBuffer.getBindlessInfo ().ssPtr );
818+ ASSERT_NE (nullptr , surfState);
819+ EXPECT_EQ (gpuAddress, surfState->getSurfaceBaseAddress ());
807820 EXPECT_EQ (&globalVarBuffer, savedSurfaceStateArgs.allocation );
808821 }
809822}
0 commit comments