diff --git a/projects/amdsmi/CMakeLists.txt b/projects/amdsmi/CMakeLists.txt index 5534406493..62241381e6 100644 --- a/projects/amdsmi/CMakeLists.txt +++ b/projects/amdsmi/CMakeLists.txt @@ -119,12 +119,13 @@ if(ENABLE_ESMI_LIB) if(NOT EXISTS ${PROJECT_SOURCE_DIR}/esmi_ib_library/src) # TODO: use ExternalProject_Add instead or a submodule # as of 2023.10.16 CI builds are broken with an updated submodule - execute_process(COMMAND git clone --depth=1 -b esmi_pkg_ver-3.0.3 https://github.com/amd/esmi_ib_library.git ${PROJECT_SOURCE_DIR}/esmi_ib_library) - endif() - if(NOT EXISTS ${PROJECT_SOURCE_DIR}/esmi_ib_library/include/asm/amd_hsmp.h) - file(COPY "${PROJECT_SOURCE_DIR}/include/amd_smi/impl/amd_hsmp.h" - DESTINATION "${PROJECT_SOURCE_DIR}/esmi_ib_library/include/asm") + execute_process(COMMAND git clone --depth=1 -b esmi_pkg_ver-4.1.2 https://github.com/amd/esmi_ib_library.git ${PROJECT_SOURCE_DIR}/esmi_ib_library) endif() + + # Make sure to update the amd_hsmp.h file with the corresponding esmi version + file(COPY "${PROJECT_SOURCE_DIR}/include/amd_smi/impl/amd_hsmp.h" + DESTINATION "${PROJECT_SOURCE_DIR}/esmi_ib_library/include/asm") + add_definitions("-DENABLE_ESMI_LIB=1") set(ESMI_INC_DIR "${PROJECT_SOURCE_DIR}/esmi_ib_library/include") set(ESMI_SRC_DIR "${PROJECT_SOURCE_DIR}/esmi_ib_library/src") diff --git a/projects/amdsmi/py-interface/amdsmi_wrapper.py b/projects/amdsmi/py-interface/amdsmi_wrapper.py index 50fb8c752c..006a7533cf 100644 --- a/projects/amdsmi/py-interface/amdsmi_wrapper.py +++ b/projects/amdsmi/py-interface/amdsmi_wrapper.py @@ -815,19 +815,6 @@ amdsmi_card_form_factor_t = ctypes.c_uint32 # enum class struct_amdsmi_pcie_info_t(Structure): pass -class struct_pcie_static_(Structure): - pass - -struct_pcie_static_._pack_ = 1 # source:False -struct_pcie_static_._fields_ = [ - ('max_pcie_width', ctypes.c_uint16), - ('PADDING_0', ctypes.c_ubyte * 2), - ('max_pcie_speed', ctypes.c_uint32), - ('pcie_interface_version', ctypes.c_uint32), - ('slot_type', amdsmi_card_form_factor_t), - ('reserved', ctypes.c_uint64 * 10), -] - class struct_pcie_metric_(Structure): pass @@ -848,6 +835,19 @@ struct_pcie_metric_._fields_ = [ ('reserved', ctypes.c_uint64 * 12), ] +class struct_pcie_static_(Structure): + pass + +struct_pcie_static_._pack_ = 1 # source:False +struct_pcie_static_._fields_ = [ + ('max_pcie_width', ctypes.c_uint16), + ('PADDING_0', ctypes.c_ubyte * 2), + ('max_pcie_speed', ctypes.c_uint32), + ('pcie_interface_version', ctypes.c_uint32), + ('slot_type', amdsmi_card_form_factor_t), + ('reserved', ctypes.c_uint64 * 10), +] + struct_amdsmi_pcie_info_t._pack_ = 1 # source:False struct_amdsmi_pcie_info_t._fields_ = [ ('pcie_static', struct_pcie_static_), @@ -1649,17 +1649,6 @@ AMDSMI_FINE_GRAIN_MEM_ACTIVITY = 101 AMDSMI_FINE_DECODER_ACTIVITY = 102 AMDSMI_UTILIZATION_COUNTER_LAST = 102 amdsmi_utilization_counter_type_t = ctypes.c_uint32 # enum - -# values for enumeration 'amdsmi_power_type_t' -amdsmi_power_type_t__enumvalues = { - 0: 'AMDSMI_AVERAGE_POWER', - 1: 'AMDSMI_CURRENT_POWER', - 4294967295: 'AMDSMI_INVALID_POWER', -} -AMDSMI_AVERAGE_POWER = 0 -AMDSMI_CURRENT_POWER = 1 -AMDSMI_INVALID_POWER = 4294967295 -amdsmi_power_type_t = ctypes.c_uint32 # enum class struct_amdsmi_utilization_counter_t(Structure): pass @@ -2693,7 +2682,7 @@ __all__ = \ 'AMDSMI_ACCELERATOR_PARTITION_QPX', 'AMDSMI_ACCELERATOR_PARTITION_SPX', 'AMDSMI_ACCELERATOR_PARTITION_TPX', 'AMDSMI_ACCELERATOR_XCC', - 'AMDSMI_AVERAGE_POWER', 'AMDSMI_CACHE_PROPERTY_CPU_CACHE', + 'AMDSMI_CACHE_PROPERTY_CPU_CACHE', 'AMDSMI_CACHE_PROPERTY_DATA_CACHE', 'AMDSMI_CACHE_PROPERTY_ENABLED', 'AMDSMI_CACHE_PROPERTY_INST_CACHE', @@ -2714,8 +2703,8 @@ __all__ = \ 'AMDSMI_COMPUTE_PARTITION_INVALID', 'AMDSMI_COMPUTE_PARTITION_QPX', 'AMDSMI_COMPUTE_PARTITION_SPX', 'AMDSMI_COMPUTE_PARTITION_TPX', 'AMDSMI_CONTAINER_DOCKER', - 'AMDSMI_CONTAINER_LXC', 'AMDSMI_CURRENT_POWER', - 'AMDSMI_DEV_PERF_LEVEL_AUTO', 'AMDSMI_DEV_PERF_LEVEL_DETERMINISM', + 'AMDSMI_CONTAINER_LXC', 'AMDSMI_DEV_PERF_LEVEL_AUTO', + 'AMDSMI_DEV_PERF_LEVEL_DETERMINISM', 'AMDSMI_DEV_PERF_LEVEL_FIRST', 'AMDSMI_DEV_PERF_LEVEL_HIGH', 'AMDSMI_DEV_PERF_LEVEL_LAST', 'AMDSMI_DEV_PERF_LEVEL_LOW', 'AMDSMI_DEV_PERF_LEVEL_MANUAL', @@ -2795,8 +2784,7 @@ __all__ = \ 'AMDSMI_GPU_BLOCK_XGMI_WAFL', 'AMDSMI_INIT_ALL_PROCESSORS', 'AMDSMI_INIT_AMD_APUS', 'AMDSMI_INIT_AMD_CPUS', 'AMDSMI_INIT_AMD_GPUS', 'AMDSMI_INIT_NON_AMD_CPUS', - 'AMDSMI_INIT_NON_AMD_GPUS', 'AMDSMI_INVALID_POWER', - 'AMDSMI_IOLINK_TYPE_NUMIOLINKTYPES', + 'AMDSMI_INIT_NON_AMD_GPUS', 'AMDSMI_IOLINK_TYPE_NUMIOLINKTYPES', 'AMDSMI_IOLINK_TYPE_PCIEXPRESS', 'AMDSMI_IOLINK_TYPE_SIZE', 'AMDSMI_IOLINK_TYPE_UNDEFINED', 'AMDSMI_IOLINK_TYPE_XGMI', 'AMDSMI_LINK_TYPE_INTERNAL', 'AMDSMI_LINK_TYPE_NOT_APPLICABLE', @@ -3025,14 +3013,13 @@ __all__ = \ 'amdsmi_pcie_bandwidth_t', 'amdsmi_pcie_info_t', 'amdsmi_power_cap_info_t', 'amdsmi_power_info_t', 'amdsmi_power_profile_preset_masks_t', - 'amdsmi_power_profile_status_t', 'amdsmi_power_type_t', - 'amdsmi_proc_info_t', 'amdsmi_process_handle_t', - 'amdsmi_process_info_t', 'amdsmi_processor_handle', - 'amdsmi_range_t', 'amdsmi_ras_err_state_t', - 'amdsmi_ras_feature_t', 'amdsmi_reg_type_t', 'amdsmi_reset_gpu', - 'amdsmi_reset_gpu_fan', 'amdsmi_reset_gpu_xgmi_error', - 'amdsmi_retired_page_record_t', 'amdsmi_set_clk_freq', - 'amdsmi_set_cpu_core_boostlimit', + 'amdsmi_power_profile_status_t', 'amdsmi_proc_info_t', + 'amdsmi_process_handle_t', 'amdsmi_process_info_t', + 'amdsmi_processor_handle', 'amdsmi_range_t', + 'amdsmi_ras_err_state_t', 'amdsmi_ras_feature_t', + 'amdsmi_reg_type_t', 'amdsmi_reset_gpu', 'amdsmi_reset_gpu_fan', + 'amdsmi_reset_gpu_xgmi_error', 'amdsmi_retired_page_record_t', + 'amdsmi_set_clk_freq', 'amdsmi_set_cpu_core_boostlimit', 'amdsmi_set_cpu_df_pstate_range', 'amdsmi_set_cpu_gmi3_link_width_range', 'amdsmi_set_cpu_pcie_link_rate',