Skip to content

Commit 9403814

Browse files
Loader Driver Interaction conformance tests for Sysman Exp and Ext APIs
Added tests for PciLinkSpeedDowngrade, PowerLimits, RasState, Firmwaresecurityversion, SysmanDeviceMapping functions which includes the specs experimental and the extension APIs. Related-To: NEO-15551 Signed-off-by: Pratik Bari <pratik.bari@intel.com>
1 parent 8270cbd commit 9403814

2 files changed

Lines changed: 233 additions & 0 deletions

File tree

test/CMakeLists.txt

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -494,6 +494,16 @@ else()
494494
set_property(TEST tests_multi_driver_sysman_vf_management_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/lib/libze_null_test1.so,${CMAKE_BINARY_DIR}/lib/libze_null_test2.so")
495495
endif()
496496

497+
add_test(NAME tests_single_driver_sysman_driver_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManDriverApisThenExpectNullDriverIsReachedSuccessfully)
498+
set_property(TEST tests_single_driver_sysman_driver_api PROPERTY ENVIRONMENT "ZE_ENABLE_NULL_DRIVER=1")
499+
500+
add_test(NAME tests_multi_driver_sysman_driver_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManDriverApisThenExpectNullDriverIsReachedSuccessfully)
501+
if (MSVC)
502+
set_property(TEST tests_multi_driver_sysman_driver_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test1.dll,${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test2.dll")
503+
else()
504+
set_property(TEST tests_multi_driver_sysman_driver_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/lib/libze_null_test1.so,${CMAKE_BINARY_DIR}/lib/libze_null_test2.so")
505+
endif()
506+
497507
add_test(NAME tests_single_driver_sysman_device_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManDeviceApisThenExpectNullDriverIsReachedSuccessfully)
498508
set_property(TEST tests_single_driver_sysman_device_api PROPERTY ENVIRONMENT "ZE_ENABLE_NULL_DRIVER=1")
499509

@@ -704,7 +714,55 @@ else()
704714
set_property(TEST tests_multi_driver_sysman_overclock_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/lib/libze_null_test1.so,${CMAKE_BINARY_DIR}/lib/libze_null_test2.so")
705715
endif()
706716

717+
add_test(NAME tests_single_driver_sysman_pci_link_speed_downgrade_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManPciLinkSpeedDowngradeApisThenExpectNullDriverIsReachedSuccessfully)
718+
set_property(TEST tests_single_driver_sysman_pci_link_speed_downgrade_api PROPERTY ENVIRONMENT "ZE_ENABLE_NULL_DRIVER=1")
719+
720+
add_test(NAME tests_multi_driver_sysman_pci_link_speed_downgrade_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManPciLinkSpeedDowngradeApisThenExpectNullDriverIsReachedSuccessfully)
721+
if (MSVC)
722+
set_property(TEST tests_multi_driver_sysman_pci_link_speed_downgrade_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test1.dll,${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test2.dll")
723+
else()
724+
set_property(TEST tests_multi_driver_sysman_pci_link_speed_downgrade_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/lib/libze_null_test1.so,${CMAKE_BINARY_DIR}/lib/libze_null_test2.so")
725+
endif()
726+
727+
add_test(NAME tests_single_driver_sysman_power_limits_ext_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManPowerLimitsExtApisThenExpectNullDriverIsReachedSuccessfully)
728+
set_property(TEST tests_single_driver_sysman_power_limits_ext_api PROPERTY ENVIRONMENT "ZE_ENABLE_NULL_DRIVER=1")
729+
730+
add_test(NAME tests_multi_driver_sysman_power_limits_ext_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManPowerLimitsExtApisThenExpectNullDriverIsReachedSuccessfully)
731+
if (MSVC)
732+
set_property(TEST tests_multi_driver_sysman_power_limits_ext_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test1.dll,${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test2.dll")
733+
else()
734+
set_property(TEST tests_multi_driver_sysman_power_limits_ext_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/lib/libze_null_test1.so,${CMAKE_BINARY_DIR}/lib/libze_null_test2.so")
735+
endif()
736+
737+
add_test(NAME tests_single_driver_sysman_ras_state_ext_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManRasStateExtApisThenExpectNullDriverIsReachedSuccessfully)
738+
set_property(TEST tests_single_driver_sysman_ras_state_ext_api PROPERTY ENVIRONMENT "ZE_ENABLE_NULL_DRIVER=1")
739+
740+
add_test(NAME tests_multi_driver_sysman_ras_state_ext_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManRasStateExtApisThenExpectNullDriverIsReachedSuccessfully)
741+
if (MSVC)
742+
set_property(TEST tests_multi_driver_sysman_ras_state_ext_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test1.dll,${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test2.dll")
743+
else()
744+
set_property(TEST tests_multi_driver_sysman_ras_state_ext_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/lib/libze_null_test1.so,${CMAKE_BINARY_DIR}/lib/libze_null_test2.so")
745+
endif()
746+
747+
add_test(NAME tests_single_driver_sysman_firmware_security_version_ext_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManFirmwareSecurityVersionExtApisThenExpectNullDriverIsReachedSuccessfully)
748+
set_property(TEST tests_single_driver_sysman_firmware_security_version_ext_api PROPERTY ENVIRONMENT "ZE_ENABLE_NULL_DRIVER=1")
749+
750+
add_test(NAME tests_multi_driver_sysman_firmware_security_version_ext_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManFirmwareSecurityVersionExtApisThenExpectNullDriverIsReachedSuccessfully)
751+
if (MSVC)
752+
set_property(TEST tests_multi_driver_sysman_firmware_security_version_ext_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test1.dll,${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test2.dll")
753+
else()
754+
set_property(TEST tests_multi_driver_sysman_firmware_security_version_ext_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/lib/libze_null_test1.so,${CMAKE_BINARY_DIR}/lib/libze_null_test2.so")
755+
endif()
756+
757+
add_test(NAME tests_single_driver_sysman_device_mapping_ext_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManDeviceMappingExtApisThenExpectNullDriverIsReachedSuccessfully)
758+
set_property(TEST tests_single_driver_sysman_device_mapping_ext_api PROPERTY ENVIRONMENT "ZE_ENABLE_NULL_DRIVER=1")
707759

760+
add_test(NAME tests_multi_driver_sysman_device_mapping_ext_api COMMAND tests --gtest_filter=*GivenLevelZeroLoaderPresentWhenCallingSysManDeviceMappingExtApisThenExpectNullDriverIsReachedSuccessfully)
761+
if (MSVC)
762+
set_property(TEST tests_multi_driver_sysman_device_mapping_ext_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test1.dll,${CMAKE_BINARY_DIR}/bin/$<CONFIG>/ze_null_test2.dll")
763+
else()
764+
set_property(TEST tests_multi_driver_sysman_device_mapping_ext_api APPEND PROPERTY ENVIRONMENT "ZE_ENABLE_LOADER_DEBUG_TRACE=1;ZE_ENABLE_ALT_DRIVERS=${CMAKE_BINARY_DIR}/lib/libze_null_test1.so,${CMAKE_BINARY_DIR}/lib/libze_null_test2.so")
765+
endif()
708766

709767
# Driver ordering tests - each test added individually
710768
add_test(NAME tests_driver_ordering_specific_type_and_index COMMAND tests --gtest_filter=*GivenZelDriversOrderWithSpecificTypeAndIndexWhenCallingZeInitDriversThenSuccessfulReturn)

test/loader_api.cpp

Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2026,6 +2026,30 @@ TEST(
20262026
}
20272027
}
20282028

2029+
TEST(
2030+
SysManApiLoaderDriverInteraction,
2031+
GivenLevelZeroLoaderPresentWhenCallingSysManDriverApisThenExpectNullDriverIsReachedSuccessfully)
2032+
{
2033+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesInit(0));
2034+
uint32_t driverCount = 0;
2035+
std::vector<zes_driver_handle_t> driverHandles{};
2036+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, nullptr));
2037+
EXPECT_GT(driverCount, 0);
2038+
driverHandles.resize(driverCount);
2039+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, driverHandles.data()));
2040+
for (std::size_t i = 0; i < driverHandles.size(); i++)
2041+
{
2042+
uint32_t count = 1;
2043+
zes_driver_extension_properties_t extensionProperties{};
2044+
char * functionName = nullptr;
2045+
void * pFunctionAddress = nullptr;
2046+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGetExtensionProperties(driverHandles[i], &count, &extensionProperties));
2047+
EXPECT_TRUE(compare_env("zesDriverGetExtensionProperties", std::to_string(i + 1)));
2048+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGetExtensionFunctionAddress(driverHandles[i], functionName, &pFunctionAddress));
2049+
EXPECT_TRUE(compare_env("zesDriverGetExtensionFunctionAddress", std::to_string(i + 1)));
2050+
}
2051+
}
2052+
20292053
TEST(
20302054
SysManApiLoaderDriverInteraction,
20312055
GivenLevelZeroLoaderPresentWhenCallingSysManDeviceApisThenExpectNullDriverIsReachedSuccessfully)
@@ -2362,6 +2386,7 @@ TEST(
23622386
zes_fan_properties_t fanProperties{};
23632387
zes_fan_config_t fanConfig{};
23642388
zes_fan_speed_t fanSpeed{};
2389+
zes_fan_speed_table_t speedTable{};
23652390
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceGet(driverHandles[i], &deviceCount, &deviceHandle));
23662391
EXPECT_TRUE(compare_env("zesDeviceGet", std::to_string(i + 1)));
23672392
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceEnumFans(deviceHandle, &count, &fanHandle));
@@ -2374,6 +2399,8 @@ TEST(
23742399
EXPECT_TRUE(compare_env("zesFanSetDefaultMode", std::to_string(i + 1)));
23752400
EXPECT_EQ(ZE_RESULT_SUCCESS, zesFanSetFixedSpeedMode(fanHandle, &fanSpeed));
23762401
EXPECT_TRUE(compare_env("zesFanSetFixedSpeedMode", std::to_string(i + 1)));
2402+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesFanSetSpeedTableMode(fanHandle, &speedTable));
2403+
EXPECT_TRUE(compare_env("zesFanSetSpeedTableMode", std::to_string(i + 1)));
23772404
EXPECT_EQ(ZE_RESULT_SUCCESS, zesFanGetState(fanHandle, ZES_FAN_SPEED_UNITS_RPM, &fanSpeed.speed));
23782405
EXPECT_TRUE(compare_env("zesFanGetState", std::to_string(i + 1)));
23792406
}
@@ -2864,6 +2891,154 @@ TEST(
28642891
}
28652892
}
28662893

2894+
TEST(
2895+
SysManApiLoaderDriverInteraction,
2896+
GivenLevelZeroLoaderPresentWhenCallingSysManPciLinkSpeedDowngradeApisThenExpectNullDriverIsReachedSuccessfully)
2897+
{
2898+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesInit(0));
2899+
uint32_t driverCount = 0;
2900+
std::vector<zes_driver_handle_t> driverHandles{};
2901+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, nullptr));
2902+
EXPECT_GT(driverCount, 0);
2903+
driverHandles.resize(driverCount);
2904+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, driverHandles.data()));
2905+
2906+
for (std::size_t i = 0; i < driverHandles.size(); i++)
2907+
{
2908+
uint32_t deviceCount = 1;
2909+
zes_device_handle_t deviceHandle{};
2910+
zes_device_action_t pendingAction{};
2911+
ze_bool_t shouldDowngrade = true;
2912+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceGet(driverHandles[i], &deviceCount, &deviceHandle));
2913+
EXPECT_TRUE(compare_env("zesDeviceGet", std::to_string(i + 1)));
2914+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDevicePciLinkSpeedUpdateExt(deviceHandle, shouldDowngrade, &pendingAction));
2915+
EXPECT_TRUE(compare_env("zesDevicePciLinkSpeedUpdateExt", std::to_string(i + 1)));
2916+
}
2917+
}
2918+
2919+
TEST(
2920+
SysManApiLoaderDriverInteraction,
2921+
GivenLevelZeroLoaderPresentWhenCallingSysManPowerLimitsExtApisThenExpectNullDriverIsReachedSuccessfully)
2922+
{
2923+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesInit(0));
2924+
uint32_t driverCount = 0;
2925+
std::vector<zes_driver_handle_t> driverHandles{};
2926+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, nullptr));
2927+
EXPECT_GT(driverCount, 0);
2928+
driverHandles.resize(driverCount);
2929+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, driverHandles.data()));
2930+
2931+
for (std::size_t i = 0; i < driverHandles.size(); i++)
2932+
{
2933+
uint32_t deviceCount = 1;
2934+
zes_device_handle_t deviceHandle{};
2935+
zes_pwr_handle_t powerHandle{};
2936+
uint32_t count = 1;
2937+
zes_power_limit_ext_desc_t powerLimitsExt{};
2938+
2939+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceGet(driverHandles[i], &deviceCount, &deviceHandle));
2940+
EXPECT_TRUE(compare_env("zesDeviceGet", std::to_string(i + 1)));
2941+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceEnumPowerDomains(deviceHandle, &count, &powerHandle));
2942+
EXPECT_TRUE(compare_env("zesDeviceEnumPowerDomains", std::to_string(i + 1)));
2943+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesPowerGetLimitsExt(powerHandle, &count, &powerLimitsExt));
2944+
EXPECT_TRUE(compare_env("zesPowerGetLimitsExt", std::to_string(i + 1)));
2945+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesPowerSetLimitsExt(powerHandle, &count, &powerLimitsExt));
2946+
EXPECT_TRUE(compare_env("zesPowerSetLimitsExt", std::to_string(i + 1)));
2947+
}
2948+
}
2949+
2950+
TEST(
2951+
SysManApiLoaderDriverInteraction,
2952+
GivenLevelZeroLoaderPresentWhenCallingSysManRasStateExtApisThenExpectNullDriverIsReachedSuccessfully)
2953+
{
2954+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesInit(0));
2955+
uint32_t driverCount = 0;
2956+
std::vector<zes_driver_handle_t> driverHandles{};
2957+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, nullptr));
2958+
EXPECT_GT(driverCount, 0);
2959+
driverHandles.resize(driverCount);
2960+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, driverHandles.data()));
2961+
2962+
for (std::size_t i = 0; i < driverHandles.size(); i++)
2963+
{
2964+
uint32_t deviceCount = 1;
2965+
zes_device_handle_t deviceHandle{};
2966+
zes_ras_handle_t rasHandle{};
2967+
zes_ras_state_exp_t rasState{};
2968+
zes_ras_error_category_exp_t errorCategory = ZES_RAS_ERROR_CATEGORY_EXP_CACHE_ERRORS;
2969+
uint32_t count = 1;
2970+
uint32_t stateCount = 0;
2971+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceGet(driverHandles[i], &deviceCount, &deviceHandle));
2972+
EXPECT_TRUE(compare_env("zesDeviceGet", std::to_string(i + 1)));
2973+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceEnumRasErrorSets(deviceHandle, &count, &rasHandle));
2974+
EXPECT_TRUE(compare_env("zesDeviceEnumRasErrorSets", std::to_string(i + 1)));
2975+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesRasGetStateExp(rasHandle, &stateCount, &rasState));
2976+
EXPECT_TRUE(compare_env("zesRasGetStateExp", std::to_string(i + 1)));
2977+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesRasClearStateExp(rasHandle, errorCategory));
2978+
EXPECT_TRUE(compare_env("zesRasClearStateExp", std::to_string(i + 1)));
2979+
}
2980+
}
2981+
2982+
TEST(
2983+
SysManApiLoaderDriverInteraction,
2984+
GivenLevelZeroLoaderPresentWhenCallingSysManFirmwareSecurityVersionExtApisThenExpectNullDriverIsReachedSuccessfully)
2985+
{
2986+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesInit(0));
2987+
uint32_t driverCount = 0;
2988+
std::vector<zes_driver_handle_t> driverHandles{};
2989+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, nullptr));
2990+
EXPECT_GT(driverCount, 0);
2991+
driverHandles.resize(driverCount);
2992+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, driverHandles.data()));
2993+
2994+
for (std::size_t i = 0; i < driverHandles.size(); i++)
2995+
{
2996+
uint32_t deviceCount = 1;
2997+
zes_device_handle_t deviceHandle{};
2998+
uint32_t count = 1;
2999+
zes_firmware_handle_t firmwareHandle{};
3000+
char version[ZES_STRING_PROPERTY_SIZE];
3001+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceGet(driverHandles[i], &deviceCount, &deviceHandle));
3002+
EXPECT_TRUE(compare_env("zesDeviceGet", std::to_string(i + 1)));
3003+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceEnumFirmwares(deviceHandle, &count, &firmwareHandle));
3004+
EXPECT_TRUE(compare_env("zesDeviceEnumFirmwares", std::to_string(i + 1)));
3005+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesFirmwareGetSecurityVersionExp(firmwareHandle, version));
3006+
EXPECT_TRUE(compare_env("zesFirmwareGetSecurityVersionExp", std::to_string(i + 1)));
3007+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesFirmwareSetSecurityVersionExp(firmwareHandle));
3008+
EXPECT_TRUE(compare_env("zesFirmwareSetSecurityVersionExp", std::to_string(i + 1)));
3009+
}
3010+
}
3011+
3012+
TEST(
3013+
SysManApiLoaderDriverInteraction,
3014+
GivenLevelZeroLoaderPresentWhenCallingSysManDeviceMappingExtApisThenExpectNullDriverIsReachedSuccessfully)
3015+
{
3016+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesInit(0));
3017+
uint32_t driverCount = 0;
3018+
std::vector<zes_driver_handle_t> driverHandles{};
3019+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, nullptr));
3020+
EXPECT_GT(driverCount, 0);
3021+
driverHandles.resize(driverCount);
3022+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGet(&driverCount, driverHandles.data()));
3023+
3024+
for (std::size_t i = 0; i < driverHandles.size(); i++)
3025+
{
3026+
uint32_t deviceCount = 1;
3027+
zes_device_handle_t deviceHandle{};
3028+
zes_subdevice_exp_properties_t subDeviceProps{};
3029+
zes_uuid_t uuid{};
3030+
uint32_t subDeviceCount = 0;
3031+
uint32_t subdeviceId = 0;
3032+
ze_bool_t onSubdevice = false;
3033+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceGet(driverHandles[i], &deviceCount, &deviceHandle));
3034+
EXPECT_TRUE(compare_env("zesDeviceGet", std::to_string(i + 1)));
3035+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDeviceGetSubDevicePropertiesExp(deviceHandle, &subDeviceCount, &subDeviceProps));
3036+
EXPECT_TRUE(compare_env("zesDeviceGetSubDevicePropertiesExp", std::to_string(i + 1)));
3037+
EXPECT_EQ(ZE_RESULT_SUCCESS, zesDriverGetDeviceByUuidExp(driverHandles[i], uuid, &deviceHandle, &onSubdevice, &subdeviceId));
3038+
EXPECT_TRUE(compare_env("zesDriverGetDeviceByUuidExp", std::to_string(i + 1)));
3039+
}
3040+
}
3041+
28673042
// Helper function to clear ZEL_DRIVERS_ORDER environment variable
28683043
void clearDriverOrderEnv() {
28693044
putenv_safe(const_cast<char *>("ZEL_DRIVERS_ORDER="));

0 commit comments

Comments
 (0)