diff --git a/tests/kfdtest/src/Dispatch.cpp b/tests/kfdtest/src/Dispatch.cpp index 6ed67ce39b..3aa3892f38 100644 --- a/tests/kfdtest/src/Dispatch.cpp +++ b/tests/kfdtest/src/Dispatch.cpp @@ -30,6 +30,8 @@ #include "KFDBaseComponentTest.hpp" +#define mmCOMPUTE_PGM_RSRC3 0x2e2d + Dispatch::Dispatch(const HsaMemoryBuffer& isaBuf, const bool eventAutoReset) :m_IsaBuf(isaBuf), m_IndirectBuf(PACKETTYPE_PM4, PAGE_SIZE / sizeof(unsigned int), isaBuf.Node()), m_DimX(1), m_DimY(1), m_DimZ(1), m_pArg1(NULL), m_pArg2(NULL), m_pEop(NULL), m_ScratchEn(false), @@ -218,6 +220,12 @@ void Dispatch::BuildIb() { m_IndirectBuf.AddPacket(PM4SetShaderRegPacket(mmCOMPUTE_PGM_RSRC1, COMPUTE_PGM_RSRC, ARRAY_SIZE(COMPUTE_PGM_RSRC))); + if (m_FamilyId == FAMILY_AL) { + const unsigned int COMPUTE_PGM_RSRC3[] = {9}; + m_IndirectBuf.AddPacket(PM4SetShaderRegPacket(mmCOMPUTE_PGM_RSRC3, COMPUTE_PGM_RSRC3, + ARRAY_SIZE(COMPUTE_PGM_RSRC3))); + } + m_IndirectBuf.AddPacket(PM4SetShaderRegPacket(mmCOMPUTE_RESOURCE_LIMITS, COMPUTE_RESOURCE_LIMITS, ARRAY_SIZE(COMPUTE_RESOURCE_LIMITS))); m_IndirectBuf.AddPacket(PM4SetShaderRegPacket(mmCOMPUTE_TMPRING_SIZE, COMPUTE_TMPRING_SIZE, diff --git a/tests/kfdtest/src/IsaGenerator.cpp b/tests/kfdtest/src/IsaGenerator.cpp index 9c7376a0a4..3534e02159 100644 --- a/tests/kfdtest/src/IsaGenerator.cpp +++ b/tests/kfdtest/src/IsaGenerator.cpp @@ -92,6 +92,7 @@ IsaGenerator* IsaGenerator::Create(unsigned int familyId) { case FAMILY_AI: case FAMILY_RV: case FAMILY_AR: + case FAMILY_AL: return new IsaGenerator_Gfx9; case FAMILY_NV: return new IsaGenerator_Gfx10; diff --git a/tests/kfdtest/src/KFDTestFlags.hpp b/tests/kfdtest/src/KFDTestFlags.hpp index 921b8bc832..9087ba23f8 100644 --- a/tests/kfdtest/src/KFDTestFlags.hpp +++ b/tests/kfdtest/src/KFDTestFlags.hpp @@ -59,6 +59,7 @@ enum KfdFamilyId { FAMILY_AI, // Arctic Islands FAMILY_RV, // Raven FAMILY_AR, // Arcturus + FAMILY_AL, // Aldebaran FAMILY_NV, // Navi10 }; diff --git a/tests/kfdtest/src/KFDTestUtil.cpp b/tests/kfdtest/src/KFDTestUtil.cpp index b55cd80247..c4ff186686 100644 --- a/tests/kfdtest/src/KFDTestUtil.cpp +++ b/tests/kfdtest/src/KFDTestUtil.cpp @@ -149,8 +149,10 @@ unsigned int FamilyIdFromNode(const HsaNodeProperties *props) { familyId = FAMILY_AI; if (props->EngineId.ui32.Stepping == 2) familyId = FAMILY_RV; - if (props->EngineId.ui32.Stepping == 8) + else if (props->EngineId.ui32.Stepping == 8) familyId = FAMILY_AR; + else if (props->EngineId.ui32.Stepping == 10) + familyId = FAMILY_AL; break; case 10: familyId = FAMILY_NV;