From a993473e130ca89c92ba631a99553f4de8cdc4db Mon Sep 17 00:00:00 2001 From: Dalibor Stanisavljevic Date: Mon, 10 Jun 2024 17:08:47 +0200 Subject: [PATCH] Changed type to uint32_t oam_id due to header unification Signed-off-by: Dalibor Stanisavljevic Change-Id: I351415f4a766ad6aa0c2e81adf8b416d066048ea [ROCm/amdsmi commit: 80043adb8187412cfcbbe63a5fedf0af8fe5fa46] --- projects/amdsmi/include/amd_smi/amdsmi.h | 4 +-- .../amdsmi/py-interface/amdsmi_wrapper.py | 36 +++++++++---------- projects/amdsmi/src/amd_smi/amd_smi.cc | 6 ++-- 3 files changed, 24 insertions(+), 22 deletions(-) diff --git a/projects/amdsmi/include/amd_smi/amdsmi.h b/projects/amdsmi/include/amd_smi/amdsmi.h index 01139461a7..50ec669255 100644 --- a/projects/amdsmi/include/amd_smi/amdsmi.h +++ b/projects/amdsmi/include/amd_smi/amdsmi.h @@ -587,8 +587,8 @@ typedef struct { uint64_t device_id; //< The device id of a GPU uint32_t rev_id; char asic_serial[AMDSMI_NORMAL_STRING_LENGTH]; - uint16_t oam_id; //< 0xFFFF if not supported - uint16_t reserved[37]; + uint32_t oam_id; //< 0xFFFF if not supported + uint32_t reserved[18]; } amdsmi_asic_info_t; typedef enum { diff --git a/projects/amdsmi/py-interface/amdsmi_wrapper.py b/projects/amdsmi/py-interface/amdsmi_wrapper.py index df85038505..61b005e3f9 100644 --- a/projects/amdsmi/py-interface/amdsmi_wrapper.py +++ b/projects/amdsmi/py-interface/amdsmi_wrapper.py @@ -900,8 +900,8 @@ struct_amdsmi_asic_info_t._fields_ = [ ('device_id', ctypes.c_uint64), ('rev_id', ctypes.c_uint32), ('asic_serial', ctypes.c_char * 32), - ('oam_id', ctypes.c_uint16), - ('reserved', ctypes.c_uint16 * 37), + ('oam_id', ctypes.c_uint32), + ('reserved', ctypes.c_uint32 * 18), ] amdsmi_asic_info_t = struct_amdsmi_asic_info_t @@ -1519,7 +1519,7 @@ struct_amdsmi_dpm_policy_entry_t._fields_ = [ ('policy_description', ctypes.c_char * 32), ] -struct_amdsmi_dpm_policy_entry_t = struct_amdsmi_dpm_policy_entry_t +amdsmi_dpm_policy_entry_t = struct_amdsmi_dpm_policy_entry_t class struct_amdsmi_dpm_policy_t(Structure): pass @@ -2619,10 +2619,10 @@ __all__ = \ 'amdsmi_get_cpu_socket_power', 'amdsmi_get_cpu_socket_power_cap', 'amdsmi_get_cpu_socket_power_cap_max', 'amdsmi_get_cpu_socket_temperature', 'amdsmi_get_cpucore_handles', - 'amdsmi_get_cpusocket_handles', 'amdsmi_get_soc_pstate', - 'amdsmi_get_energy_count', 'amdsmi_get_esmi_err_msg', - 'amdsmi_get_fw_info', 'amdsmi_get_gpu_activity', - 'amdsmi_get_gpu_asic_info', 'amdsmi_get_gpu_available_counters', + 'amdsmi_get_cpusocket_handles', 'amdsmi_get_energy_count', + 'amdsmi_get_esmi_err_msg', 'amdsmi_get_fw_info', + 'amdsmi_get_gpu_activity', 'amdsmi_get_gpu_asic_info', + 'amdsmi_get_gpu_available_counters', 'amdsmi_get_gpu_bad_page_info', 'amdsmi_get_gpu_bdf_id', 'amdsmi_get_gpu_board_info', 'amdsmi_get_gpu_cache_info', 'amdsmi_get_gpu_compute_partition', @@ -2666,11 +2666,11 @@ __all__ = \ 'amdsmi_get_processor_handles', 'amdsmi_get_processor_handles_by_type', 'amdsmi_get_processor_info', 'amdsmi_get_processor_type', - 'amdsmi_get_socket_handles', 'amdsmi_get_socket_info', - 'amdsmi_get_temp_metric', 'amdsmi_get_utilization_count', - 'amdsmi_get_xgmi_info', 'amdsmi_get_xgmi_plpd', - 'amdsmi_gpu_block_t', 'amdsmi_gpu_cache_info_t', - 'amdsmi_gpu_control_counter', + 'amdsmi_get_soc_pstate', 'amdsmi_get_socket_handles', + 'amdsmi_get_socket_info', 'amdsmi_get_temp_metric', + 'amdsmi_get_utilization_count', 'amdsmi_get_xgmi_info', + 'amdsmi_get_xgmi_plpd', 'amdsmi_gpu_block_t', + 'amdsmi_gpu_cache_info_t', 'amdsmi_gpu_control_counter', 'amdsmi_gpu_counter_group_supported', 'amdsmi_gpu_create_counter', 'amdsmi_gpu_destroy_counter', 'amdsmi_gpu_metrics_t', 'amdsmi_gpu_read_counter', 'amdsmi_gpu_xgmi_error_status', @@ -2703,7 +2703,6 @@ __all__ = \ 'amdsmi_set_cpu_socket_boostlimit', 'amdsmi_set_cpu_socket_lclk_dpm_level', 'amdsmi_set_cpu_socket_power_cap', 'amdsmi_set_cpu_xgmi_width', - 'amdsmi_set_soc_pstate', 'amdsmi_set_gpu_run_cleaner_shader', 'amdsmi_set_gpu_clk_range', 'amdsmi_set_gpu_compute_partition', 'amdsmi_set_gpu_event_notification_mask', 'amdsmi_set_gpu_fan_speed', 'amdsmi_set_gpu_memory_partition', @@ -2711,11 +2710,12 @@ __all__ = \ 'amdsmi_set_gpu_overdrive_level', 'amdsmi_set_gpu_pci_bandwidth', 'amdsmi_set_gpu_perf_determinism_mode', 'amdsmi_set_gpu_perf_level', 'amdsmi_set_gpu_power_profile', - 'amdsmi_set_gpu_process_isolation', 'amdsmi_set_power_cap', - 'amdsmi_set_xgmi_plpd', 'amdsmi_shut_down', - 'amdsmi_smu_fw_version_t', 'amdsmi_socket_handle', - 'amdsmi_status_code_to_string', 'amdsmi_status_t', - 'amdsmi_stop_gpu_event_notification', + 'amdsmi_set_gpu_process_isolation', + 'amdsmi_set_gpu_run_cleaner_shader', 'amdsmi_set_power_cap', + 'amdsmi_set_soc_pstate', 'amdsmi_set_xgmi_plpd', + 'amdsmi_shut_down', 'amdsmi_smu_fw_version_t', + 'amdsmi_socket_handle', 'amdsmi_status_code_to_string', + 'amdsmi_status_t', 'amdsmi_stop_gpu_event_notification', 'amdsmi_temp_range_refresh_rate_t', 'amdsmi_temperature_metric_t', 'amdsmi_temperature_type_t', 'amdsmi_topo_get_link_type', 'amdsmi_topo_get_link_weight', 'amdsmi_topo_get_numa_node_number', diff --git a/projects/amdsmi/src/amd_smi/amd_smi.cc b/projects/amdsmi/src/amd_smi/amd_smi.cc index 39c4e7972b..66cfe15dbd 100644 --- a/projects/amdsmi/src/amd_smi/amd_smi.cc +++ b/projects/amdsmi/src/amd_smi/amd_smi.cc @@ -750,9 +750,11 @@ amdsmi_get_gpu_asic_info(amdsmi_processor_handle processor_handle, amdsmi_asic_i } // default to 0xffff as not supported - info->oam_id = std::numeric_limits::max(); + info->oam_id = std::numeric_limits::max(); + uint16_t tmp_oam_id = 0; status = rsmi_wrapper(rsmi_dev_oam_id_get, processor_handle, - &(info->oam_id)); + &(tmp_oam_id)); + info->oam_id = tmp_oam_id; return AMDSMI_STATUS_SUCCESS; }