[SWDEV-522996] Syncing Unified Header and AMDSMI
Signed-off-by: Joseph Narlo <joseph.narlo@amd.com>
This commit is contained in:
committad av
Arif, Maisam
förälder
996917e9bc
incheckning
ee43ec71e8
+117
-111
@@ -73,7 +73,7 @@ typedef enum {
|
||||
/**
|
||||
* @brief Common defines
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
*/
|
||||
#define AMDSMI_MAX_NUM_XGMI_PHYSICAL_LINK 64
|
||||
#define AMDSMI_MAX_CONTAINER_TYPE 2
|
||||
@@ -182,6 +182,8 @@ typedef enum {
|
||||
|
||||
/**
|
||||
* @brief Max Number of AFIDs that will be inside one cper entry
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @tag{guest_windows} @endcond
|
||||
*/
|
||||
#define MAX_NUMBER_OF_AFIDS_PER_RECORD 12
|
||||
|
||||
@@ -466,7 +468,7 @@ typedef enum {
|
||||
* @brief The values of this enum are used to identify the various firmware
|
||||
* blocks.
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{guest_windows} @tag{host} @endcond
|
||||
*/
|
||||
typedef enum {
|
||||
AMDSMI_FW_ID_SMU = 1,
|
||||
@@ -681,7 +683,7 @@ typedef struct {
|
||||
/**
|
||||
* @brief bdf types
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
*/
|
||||
typedef union {
|
||||
struct bdf_ {
|
||||
@@ -783,7 +785,7 @@ typedef struct {
|
||||
/**
|
||||
* @brief cache properties
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
*/
|
||||
typedef enum {
|
||||
AMDSMI_CACHE_PROPERTY_ENABLED = 0x00000001,
|
||||
@@ -796,7 +798,7 @@ typedef enum {
|
||||
/**
|
||||
* @brief GPU Cache Information
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
*/
|
||||
typedef struct {
|
||||
uint32_t num_cache_types;
|
||||
@@ -814,7 +816,7 @@ typedef struct {
|
||||
/**
|
||||
* @brief Firmware Information
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @tag{guest_windows} @endcond
|
||||
*/
|
||||
typedef struct {
|
||||
uint8_t num_fw_info;
|
||||
@@ -964,7 +966,7 @@ typedef struct {
|
||||
/**
|
||||
* @brief Link Metrics
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
*/
|
||||
typedef struct {
|
||||
uint32_t num_links; //!< number of links
|
||||
@@ -1028,13 +1030,12 @@ typedef struct {
|
||||
uint64_t socket_power; //!< Units in uW {@host}, Host only
|
||||
uint32_t current_socket_power; //!< Units in W {@linux_bm}, Linux only, Mi 300+ Series cards
|
||||
uint32_t average_socket_power; //!< Units in W {@linux_bm}, Linux only, Navi + Mi 200 and earlier Series cards
|
||||
uint32_t gfx_voltage; //!< GFX voltage measurement in mV {@linux_bm} or V {@host}
|
||||
uint32_t soc_voltage; //!< SOC voltage measurement in mV {@linux_bm} or V {@host}
|
||||
uint32_t mem_voltage; //!< MEM voltage measurement in mV {@linux_bm} or V {@host}
|
||||
uint64_t gfx_voltage; //!< GFX voltage measurement in mV {@linux_bm} or V {@host}
|
||||
uint64_t soc_voltage; //!< SOC voltage measurement in mV {@linux_bm} or V {@host}
|
||||
uint64_t mem_voltage; //!< MEM voltage measurement in mV {@linux_bm} or V {@host}
|
||||
uint32_t power_limit; //!< The power limit in W {@linux_bm}, Linux only
|
||||
uint32_t reserved[2];
|
||||
uint64_t reserved[18];
|
||||
} amdsmi_power_info_t;
|
||||
|
||||
/**
|
||||
* @brief Clock Information
|
||||
*
|
||||
@@ -1246,23 +1247,21 @@ typedef struct {
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
*/
|
||||
typedef enum {
|
||||
AMDSMI_EVT_NOTIF_NONE = 0, //!< Not used
|
||||
AMDSMI_EVT_NOTIF_VMFAULT = 1, //!< VM page fault
|
||||
AMDSMI_EVT_NOTIF_NONE = 0, //!< Not used
|
||||
AMDSMI_EVT_NOTIF_VMFAULT = 1, //!< VM page fault
|
||||
AMDSMI_EVT_NOTIF_FIRST = AMDSMI_EVT_NOTIF_VMFAULT,
|
||||
AMDSMI_EVT_NOTIF_THERMAL_THROTTLE = 2, //!< thermal throttle
|
||||
AMDSMI_EVT_NOTIF_GPU_PRE_RESET = 3, //!< pre reset; event includes message indicating cause
|
||||
//!< causes include job hang, RAS error,
|
||||
//!< MES hang, HWS hang, user trigger, and unknown
|
||||
AMDSMI_EVT_NOTIF_GPU_POST_RESET = 4, //!< post reset
|
||||
AMDSMI_EVT_NOTIF_MIGRATE_START = 5, //!< migrate start
|
||||
AMDSMI_EVT_NOTIF_MIGRATE_END = 6, //!< migrate end
|
||||
AMDSMI_EVT_NOTIF_PAGE_FAULT_START = 7, //!< page fault start
|
||||
AMDSMI_EVT_NOTIF_PAGE_FAULT_END = 8, //!< page fault end
|
||||
AMDSMI_EVT_NOTIF_QUEUE_EVICTION = 9, //!< queue eviction
|
||||
AMDSMI_EVT_NOTIF_QUEUE_RESTORE = 10, //!< queue restore
|
||||
AMDSMI_EVT_NOTIF_UNMAP_FROM_GPU = 11, //!< unmap from GPU
|
||||
AMDSMI_EVT_NOTIF_PROCESS_START = 12, //!< KFD process start
|
||||
AMDSMI_EVT_NOTIF_PROCESS_END = 13, //!< KFD process end
|
||||
AMDSMI_EVT_NOTIF_THERMAL_THROTTLE = 2, //!< thermal throttle
|
||||
AMDSMI_EVT_NOTIF_GPU_PRE_RESET = 3, //!< pre-reset
|
||||
AMDSMI_EVT_NOTIF_GPU_POST_RESET = 4, //!< post-reset
|
||||
AMDSMI_EVT_NOTIF_MIGRATE_START = 5, //!< migrate start
|
||||
AMDSMI_EVT_NOTIF_MIGRATE_END = 6, //!< migrate end
|
||||
AMDSMI_EVT_NOTIF_PAGE_FAULT_START = 7, //!< page fault start
|
||||
AMDSMI_EVT_NOTIF_PAGE_FAULT_END = 8, //!< page fault end
|
||||
AMDSMI_EVT_NOTIF_QUEUE_EVICTION = 9, //!< queue eviction
|
||||
AMDSMI_EVT_NOTIF_QUEUE_RESTORE = 10, //!< queue restore
|
||||
AMDSMI_EVT_NOTIF_UNMAP_FROM_GPU = 11, //!< unmap from GPU
|
||||
AMDSMI_EVT_NOTIF_PROCESS_START = 12, //!< KFD process start
|
||||
AMDSMI_EVT_NOTIF_PROCESS_END = 13, //!< KFD process end
|
||||
|
||||
AMDSMI_EVT_NOTIF_LAST = AMDSMI_EVT_NOTIF_PROCESS_END
|
||||
} amdsmi_evt_notification_type_t;
|
||||
@@ -1361,7 +1360,7 @@ typedef enum {
|
||||
AMDSMI_VOLT_TYPE_FIRST = 0,
|
||||
|
||||
AMDSMI_VOLT_TYPE_VDDGFX = AMDSMI_VOLT_TYPE_FIRST, //!< Vddgfx GPU voltage
|
||||
AMDSMI_VOLT_TYPE_VDDBOARD, //!< Voltage for VDDBOARD
|
||||
AMDSMI_VOLT_TYPE_VDDBOARD, //!< Voltage for VDDBOARD
|
||||
AMDSMI_VOLT_TYPE_LAST = AMDSMI_VOLT_TYPE_VDDBOARD,
|
||||
AMDSMI_VOLT_TYPE_INVALID = 0xFFFFFFFF //!< Invalid type
|
||||
} amdsmi_voltage_type_t;
|
||||
@@ -1393,34 +1392,32 @@ typedef enum {
|
||||
/**
|
||||
* @brief This enum is used to identify different GPU blocks.
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
*/
|
||||
typedef enum {
|
||||
AMDSMI_GPU_BLOCK_INVALID = 0x0000000000000000, //!< Used to indicate an invalid block
|
||||
AMDSMI_GPU_BLOCK_FIRST = 0x0000000000000001,
|
||||
|
||||
AMDSMI_GPU_BLOCK_UMC = AMDSMI_GPU_BLOCK_FIRST, //!< UMC block
|
||||
AMDSMI_GPU_BLOCK_SDMA = 0x0000000000000002, //!< SDMA block
|
||||
AMDSMI_GPU_BLOCK_GFX = 0x0000000000000004, //!< GFX block
|
||||
AMDSMI_GPU_BLOCK_MMHUB = 0x0000000000000008, //!< MMHUB block
|
||||
AMDSMI_GPU_BLOCK_ATHUB = 0x0000000000000010, //!< ATHUB block
|
||||
AMDSMI_GPU_BLOCK_PCIE_BIF = 0x0000000000000020, //!< PCIE_BIF block
|
||||
AMDSMI_GPU_BLOCK_HDP = 0x0000000000000040, //!< HDP block
|
||||
AMDSMI_GPU_BLOCK_XGMI_WAFL = 0x0000000000000080, //!< XGMI block
|
||||
AMDSMI_GPU_BLOCK_DF = 0x0000000000000100, //!< DF block
|
||||
AMDSMI_GPU_BLOCK_SMN = 0x0000000000000200, //!< SMN block
|
||||
AMDSMI_GPU_BLOCK_SEM = 0x0000000000000400, //!< SEM block
|
||||
AMDSMI_GPU_BLOCK_MP0 = 0x0000000000000800, //!< MP0 block
|
||||
AMDSMI_GPU_BLOCK_MP1 = 0x0000000000001000, //!< MP1 block
|
||||
AMDSMI_GPU_BLOCK_FUSE = 0x0000000000002000, //!< Fuse block
|
||||
AMDSMI_GPU_BLOCK_MCA = 0x0000000000004000, //!< MCA block
|
||||
AMDSMI_GPU_BLOCK_VCN = 0x0000000000008000, //!< VCN block
|
||||
AMDSMI_GPU_BLOCK_JPEG = 0x0000000000010000, //!< JPEG block
|
||||
AMDSMI_GPU_BLOCK_IH = 0x0000000000020000, //!< IH block
|
||||
AMDSMI_GPU_BLOCK_MPIO = 0x0000000000040000, //!< MPIO block
|
||||
|
||||
AMDSMI_GPU_BLOCK_LAST = AMDSMI_GPU_BLOCK_MPIO, //!< The highest bit position for supported blocks
|
||||
AMDSMI_GPU_BLOCK_RESERVED = 0x8000000000000000
|
||||
AMDSMI_GPU_BLOCK_INVALID = 0, //!< Invalid block
|
||||
AMDSMI_GPU_BLOCK_FIRST = (1ULL << 0),
|
||||
AMDSMI_GPU_BLOCK_UMC = AMDSMI_GPU_BLOCK_FIRST, //!< UMC block
|
||||
AMDSMI_GPU_BLOCK_SDMA = (1ULL << 1), //!< SDMA block
|
||||
AMDSMI_GPU_BLOCK_GFX = (1ULL << 2), //!< GFX block
|
||||
AMDSMI_GPU_BLOCK_MMHUB = (1ULL << 3), //!< MMHUB block
|
||||
AMDSMI_GPU_BLOCK_ATHUB = (1ULL << 4), //!< ATHUB block
|
||||
AMDSMI_GPU_BLOCK_PCIE_BIF = (1ULL << 5), //!< PCIE_BIF block
|
||||
AMDSMI_GPU_BLOCK_HDP = (1ULL << 6), //!< HDP block
|
||||
AMDSMI_GPU_BLOCK_XGMI_WAFL = (1ULL << 7), //!< XGMI block
|
||||
AMDSMI_GPU_BLOCK_DF = (1ULL << 8), //!< DF block
|
||||
AMDSMI_GPU_BLOCK_SMN = (1ULL << 9), //!< SMN block
|
||||
AMDSMI_GPU_BLOCK_SEM = (1ULL << 10), //!< SEM block
|
||||
AMDSMI_GPU_BLOCK_MP0 = (1ULL << 11), //!< MP0 block
|
||||
AMDSMI_GPU_BLOCK_MP1 = (1ULL << 12), //!< MP1 block
|
||||
AMDSMI_GPU_BLOCK_FUSE = (1ULL << 13), //!< Fuse block
|
||||
AMDSMI_GPU_BLOCK_MCA = (1ULL << 14), //!< MCA block
|
||||
AMDSMI_GPU_BLOCK_VCN = (1ULL << 15), //!< VCN block
|
||||
AMDSMI_GPU_BLOCK_JPEG = (1ULL << 16), //!< JPEG block
|
||||
AMDSMI_GPU_BLOCK_IH = (1ULL << 17), //!< IH block
|
||||
AMDSMI_GPU_BLOCK_MPIO = (1ULL << 18), //!< MPIO block
|
||||
AMDSMI_GPU_BLOCK_LAST = AMDSMI_GPU_BLOCK_MPIO,
|
||||
AMDSMI_GPU_BLOCK_RESERVED = (1ULL << 63)
|
||||
} amdsmi_gpu_block_t;
|
||||
|
||||
/**
|
||||
@@ -1620,7 +1617,7 @@ typedef struct {
|
||||
/**
|
||||
* @brief The dpm policy.
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
*/
|
||||
typedef struct {
|
||||
uint32_t policy_id;
|
||||
@@ -1744,7 +1741,6 @@ typedef struct {
|
||||
uint32_t gfx_busy_inst[AMDSMI_MAX_NUM_XCC]; //!< Utilization Instantaneous in %
|
||||
uint16_t jpeg_busy[AMDSMI_MAX_NUM_JPEG_ENG_V1]; //!< Utilization Instantaneous in % (UPDATED: to 40 in v1.8)
|
||||
uint16_t vcn_busy[AMDSMI_MAX_NUM_VCN]; //!< Utilization Instantaneous in %
|
||||
|
||||
uint64_t gfx_busy_acc[AMDSMI_MAX_NUM_XCC]; //!< Utilization Accumulated in %
|
||||
|
||||
/**
|
||||
@@ -2007,7 +2003,7 @@ typedef enum {
|
||||
/**
|
||||
* @brief This structure holds ras feature
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
*/
|
||||
typedef struct {
|
||||
uint32_t ras_eeprom_version;
|
||||
@@ -2057,7 +2053,8 @@ typedef struct {
|
||||
* Place-holder "variant" for functions that have don't have any variants,
|
||||
* but do have monitors or sensors.
|
||||
*
|
||||
* @cond @tag{gpu_bm_linux} @endcond
|
||||
* @cond @tag{gpu_bm_linux} @tag{host} @endcond
|
||||
* @cond @endcond
|
||||
*/
|
||||
typedef enum {
|
||||
AMDSMI_VIRTUALIZATION_MODE_UNKNOWN = 0,
|
||||
@@ -2320,7 +2317,7 @@ typedef struct {
|
||||
*
|
||||
* @ingroup tagInitShutdown
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf}
|
||||
* @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details This function initializes the library and the internal data structures,
|
||||
@@ -2345,7 +2342,7 @@ amdsmi_status_t amdsmi_init(uint64_t init_flags);
|
||||
*
|
||||
* @ingroup tagInitShutdown
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf}
|
||||
* @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details This function shuts down the library and internal data structures and
|
||||
@@ -2368,7 +2365,7 @@ amdsmi_status_t amdsmi_shut_down(void);
|
||||
*
|
||||
* @ingroup tagProcDiscovery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf}
|
||||
* @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details Depends on what flag is passed to ::amdsmi_init. AMDSMI_INIT_AMD_GPUS
|
||||
@@ -2434,7 +2431,7 @@ amdsmi_status_t amdsmi_get_cpu_handles(uint32_t *cpu_count, amdsmi_processor_han
|
||||
*
|
||||
* @ingroup tagProcDiscovery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf}
|
||||
* @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details This function retrieves socket information. The @p socket_handle must
|
||||
@@ -2532,7 +2529,7 @@ amdsmi_status_t amdsmi_get_processor_handles_by_type(amdsmi_socket_handle socket
|
||||
*
|
||||
* @ingroup tagProcDiscovery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf}
|
||||
* @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details This function retrieves the processor handles of a socket. The
|
||||
@@ -2604,7 +2601,7 @@ amdsmi_status_t amdsmi_get_cpucore_handles(uint32_t *cores_count,
|
||||
*
|
||||
* @ingroup tagProcDiscovery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf}
|
||||
* @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details This function retrieves the processor type. A processor_handle must be provided
|
||||
@@ -2625,7 +2622,7 @@ amdsmi_status_t amdsmi_get_processor_type(amdsmi_processor_handle processor_hand
|
||||
*
|
||||
* @ingroup tagProcDiscovery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf}
|
||||
* @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details Given bdf info @p bdf, this function will get
|
||||
@@ -2644,7 +2641,7 @@ amdsmi_status_t amdsmi_get_processor_handle_from_bdf(amdsmi_bdf_t bdf, amdsmi_pr
|
||||
*
|
||||
* @ingroup tagProcDiscovery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{guest_windows}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
@@ -2683,7 +2680,7 @@ amdsmi_get_gpu_device_uuid(amdsmi_processor_handle processor_handle, unsigned in
|
||||
*
|
||||
* @ingroup tagProcDiscovery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{guest_1vf} @platform{guest_mvf} @platform{guest_windows}
|
||||
* @platform{gpu_bm_linux} @platform{guest_1vf} @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details This function returns Enumeration information of the corresponding
|
||||
* processor_handle. It will return the render number, card number,
|
||||
@@ -2727,6 +2724,27 @@ amdsmi_get_gpu_enumeration_info(amdsmi_processor_handle processor_handle, amdsmi
|
||||
amdsmi_status_t amdsmi_get_cpu_affinity_with_scope(amdsmi_processor_handle processor_handle,
|
||||
uint32_t cpu_set_size, uint64_t *cpu_set, amdsmi_affinity_scope_t scope);
|
||||
|
||||
/**
|
||||
* @brief Returns the virtualization mode for the target device.
|
||||
*
|
||||
* @ingroup tagProcDiscovery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{guest_1vf} @platform{host}
|
||||
*
|
||||
* @details The virtualization mode is detected and returned as an enum.
|
||||
*
|
||||
* @param[in] processor_handle The identifier of the given device.
|
||||
*
|
||||
* @param[in,out] mode Reference to the enum representing virtualization mode.
|
||||
* - When zero, the virtualization mode is unknown
|
||||
* - When non-zero, the virtualization mode is detected
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail.
|
||||
*/
|
||||
amdsmi_status_t
|
||||
amdsmi_get_gpu_virtualization_mode(amdsmi_processor_handle processor_handle,
|
||||
amdsmi_virtualization_mode_t* mode);
|
||||
|
||||
/** @} End tagProcDiscovery */
|
||||
|
||||
/*****************************************************************************/
|
||||
@@ -2911,27 +2929,6 @@ amdsmi_status_t amdsmi_get_gpu_subsystem_id(amdsmi_processor_handle processor_ha
|
||||
amdsmi_status_t
|
||||
amdsmi_get_gpu_subsystem_name(amdsmi_processor_handle processor_handle, char *name, size_t len);
|
||||
|
||||
/**
|
||||
* @brief Returns the virtualization mode for the target device.
|
||||
*
|
||||
* @ingroup tagIdentQuery
|
||||
*
|
||||
* @platform{gpu_bm_linux}
|
||||
*
|
||||
* @details The virtualization mode is detected and returned as an enum.
|
||||
*
|
||||
* @param[in] processor_handle The identifier of the given device.
|
||||
*
|
||||
* @param[in,out] mode Reference to the enum representing virtualization mode.
|
||||
* - When zero, the virtualization mode is unknown
|
||||
* - When non-zero, the virtualization mode is detected
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail.
|
||||
*/
|
||||
amdsmi_status_t
|
||||
amdsmi_get_gpu_virtualization_mode(amdsmi_processor_handle processor_handle,
|
||||
amdsmi_virtualization_mode_t* mode);
|
||||
|
||||
/** @} End tagIdentQuery */
|
||||
|
||||
/*****************************************************************************/
|
||||
@@ -3684,7 +3681,7 @@ amdsmi_status_t amdsmi_get_temp_metric(amdsmi_processor_handle processor_handle,
|
||||
*
|
||||
* @ingroup tagPhysicalStateQuery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
*
|
||||
* @param[in] processor_handle PF of a processor for which to query
|
||||
*
|
||||
@@ -4634,7 +4631,7 @@ amdsmi_status_t amdsmi_clean_gpu_local_data(amdsmi_processor_handle processor_ha
|
||||
*
|
||||
* @ingroup tagVersionQuery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{cpu_bm} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{cpu_bm} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{guest_windows}
|
||||
*
|
||||
* @details Get the major, minor, patch and build string for AMDSMI build
|
||||
@@ -4664,7 +4661,7 @@ amdsmi_status_t amdsmi_get_lib_version(amdsmi_version_t *version);
|
||||
*
|
||||
* @ingroup tagECCInfo
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
*
|
||||
* @details Given a processor handle @p processor_handle, an ::amdsmi_gpu_block_t @p block and a
|
||||
* pointer to an ::amdsmi_error_count_t @p ec, this function will write the error
|
||||
@@ -4840,10 +4837,17 @@ amdsmi_get_gpu_cper_entries(amdsmi_processor_handle processor_handle, uint32_t s
|
||||
|
||||
/** @} End tagECCInfo */
|
||||
|
||||
/*****************************************************************************/
|
||||
/** @defgroup tagRasInfo RAS information
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* @brief Get the AFIDs from CPER buffer
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf}
|
||||
* @ingroup tagRasInfo
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf}
|
||||
* @platform{guest_mvf} @platform{guest_windows}
|
||||
*
|
||||
* @details A utility function which retrieves the AFIDs from the CPER record.
|
||||
@@ -4863,8 +4867,9 @@ amdsmi_get_gpu_cper_entries(amdsmi_processor_handle processor_handle, uint32_t s
|
||||
*
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_afids_from_cper(
|
||||
char* cper_buffer, uint32_t buf_size, uint64_t* afids, uint32_t* num_afids);
|
||||
amdsmi_status_t amdsmi_get_afids_from_cper(char* cper_buffer, uint32_t buf_size, uint64_t* afids, uint32_t* num_afids);
|
||||
|
||||
/** @} End tagRasInfo */
|
||||
|
||||
/*****************************************************************************/
|
||||
/** @defgroup tagErrorQuery Error Queries
|
||||
@@ -4912,7 +4917,7 @@ amdsmi_status_t amdsmi_get_gpu_ecc_status(amdsmi_processor_handle processor_hand
|
||||
*
|
||||
* @ingroup tagErrorQuery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{cpu_bm} @platform{guest_1vf} @platform{guest_mvf}
|
||||
*
|
||||
* @details Set the provided pointer to a const char *, @p status_string, to
|
||||
* a string containing a description of the provided error code @p status.
|
||||
@@ -5512,7 +5517,7 @@ amdsmi_topo_get_link_type(amdsmi_processor_handle processor_handle_src,
|
||||
*
|
||||
* @ingroup tagHWTopology
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
*
|
||||
* @details Once called topology_nearest_info will get populated with a list of
|
||||
* all nearest devices for a given link_type. The list has a count of
|
||||
@@ -5567,7 +5572,7 @@ amdsmi_is_P2P_accessible(amdsmi_processor_handle processor_handle_src,
|
||||
*
|
||||
* @ingroup tagHWTopology
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
*
|
||||
* @details Given a source processor handle @p processor_handle_src and
|
||||
* a destination processor handle @p processor_handle_dst, a pointer to an amdsmi_link_type_t @p type,
|
||||
@@ -5748,7 +5753,7 @@ amdsmi_set_gpu_memory_partition(amdsmi_processor_handle processor_handle,
|
||||
*
|
||||
* @ingroup tagMemoryPartition
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
*
|
||||
* @param[in] processor_handle a processor handle
|
||||
*
|
||||
@@ -5795,7 +5800,7 @@ amdsmi_set_gpu_memory_partition_mode(amdsmi_processor_handle processor_handle,
|
||||
*
|
||||
* @ingroup tagAcceleratorPartition
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
*
|
||||
@@ -5813,7 +5818,7 @@ amdsmi_get_gpu_accelerator_partition_profile_config(amdsmi_processor_handle proc
|
||||
*
|
||||
* @ingroup tagAcceleratorPartition
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
*
|
||||
@@ -6009,7 +6014,7 @@ amdsmi_get_gpu_driver_info(amdsmi_processor_handle processor_handle, amdsmi_driv
|
||||
*
|
||||
* @ingroup tagAsicBoardInfo
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{guest_windows}
|
||||
*
|
||||
* @details This function returns ASIC information such as the product name,
|
||||
@@ -6053,7 +6058,7 @@ amdsmi_get_gpu_kfd_info(amdsmi_processor_handle processor_handle, amdsmi_kfd_inf
|
||||
*
|
||||
* @ingroup tagAsicBoardInfo
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
*
|
||||
* @param[in] processor_handle PF of a processor for which to query
|
||||
*
|
||||
@@ -6069,7 +6074,7 @@ amdsmi_status_t amdsmi_get_gpu_vram_info(amdsmi_processor_handle processor_handl
|
||||
*
|
||||
* @ingroup tagAsicBoardInfo
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
*
|
||||
@@ -6087,7 +6092,7 @@ amdsmi_get_gpu_board_info(amdsmi_processor_handle processor_handle, amdsmi_board
|
||||
*
|
||||
* @ingroup tagAsicBoardInfo
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
*
|
||||
@@ -6107,7 +6112,7 @@ amdsmi_get_power_cap_info(amdsmi_processor_handle processor_handle, uint32_t sen
|
||||
*
|
||||
* @ingroup tagAsicBoardInfo
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_windows}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_windows}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
*
|
||||
@@ -6123,7 +6128,7 @@ amdsmi_status_t amdsmi_get_pcie_info(amdsmi_processor_handle processor_handle, a
|
||||
*
|
||||
* @ingroup tagAsicBoardInfo
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{guest_1vf} @platform{guest_mvf}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
*
|
||||
@@ -6149,7 +6154,7 @@ amdsmi_status_t amdsmi_get_gpu_xcd_counter(amdsmi_processor_handle processor_han
|
||||
*
|
||||
* @ingroup tagFWVbiosQuery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{guest_windows}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
@@ -6166,7 +6171,7 @@ amdsmi_get_fw_info(amdsmi_processor_handle processor_handle, amdsmi_fw_info_t *i
|
||||
*
|
||||
* @ingroup tagFWVbiosQuery
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{gpu_bm_linux} @platform{host} @platform{guest_1vf} @platform{guest_mvf}
|
||||
* @platform{guest_windows}
|
||||
*
|
||||
* @param[in] processor_handle Device which to query
|
||||
@@ -6226,7 +6231,7 @@ amdsmi_status_t amdsmi_get_power_info(amdsmi_processor_handle processor_handle,
|
||||
*
|
||||
* @ingroup tagGPUMonitor
|
||||
*
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
* @platform{gpu_bm_linux} @platform{host}
|
||||
*
|
||||
* @param[in] processor_handle PF of a processor for which to query
|
||||
*
|
||||
@@ -7112,7 +7117,8 @@ amdsmi_status_t amdsmi_get_cpu_cores_per_socket(uint32_t sock_count, amdsmi_sock
|
||||
* @return ::amdsmi_status_t | ::AMDSMI_STATUS_SUCCESS on success, non-zero on fail
|
||||
*/
|
||||
amdsmi_status_t amdsmi_get_cpu_socket_count(uint32_t *sock_count);
|
||||
/** @} cpuAuxillary */
|
||||
|
||||
/** @} End cpuAuxillary */
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1220,11 +1220,12 @@ struct_amdsmi_power_info_t._fields_ = [
|
||||
('socket_power', ctypes.c_uint64),
|
||||
('current_socket_power', ctypes.c_uint32),
|
||||
('average_socket_power', ctypes.c_uint32),
|
||||
('gfx_voltage', ctypes.c_uint32),
|
||||
('soc_voltage', ctypes.c_uint32),
|
||||
('mem_voltage', ctypes.c_uint32),
|
||||
('gfx_voltage', ctypes.c_uint64),
|
||||
('soc_voltage', ctypes.c_uint64),
|
||||
('mem_voltage', ctypes.c_uint64),
|
||||
('power_limit', ctypes.c_uint32),
|
||||
('reserved', ctypes.c_uint32 * 2),
|
||||
('PADDING_0', ctypes.c_ubyte * 4),
|
||||
('reserved', ctypes.c_uint64 * 18),
|
||||
]
|
||||
|
||||
amdsmi_power_info_t = struct_amdsmi_power_info_t
|
||||
@@ -2381,6 +2382,9 @@ uint32_t = ctypes.c_uint32
|
||||
amdsmi_get_cpu_affinity_with_scope = _libraries['libamd_smi.so'].amdsmi_get_cpu_affinity_with_scope
|
||||
amdsmi_get_cpu_affinity_with_scope.restype = amdsmi_status_t
|
||||
amdsmi_get_cpu_affinity_with_scope.argtypes = [amdsmi_processor_handle, uint32_t, ctypes.POINTER(ctypes.c_uint64), amdsmi_affinity_scope_t]
|
||||
amdsmi_get_gpu_virtualization_mode = _libraries['libamd_smi.so'].amdsmi_get_gpu_virtualization_mode
|
||||
amdsmi_get_gpu_virtualization_mode.restype = amdsmi_status_t
|
||||
amdsmi_get_gpu_virtualization_mode.argtypes = [amdsmi_processor_handle, ctypes.POINTER(amdsmi_virtualization_mode_t)]
|
||||
amdsmi_get_gpu_id = _libraries['libamd_smi.so'].amdsmi_get_gpu_id
|
||||
amdsmi_get_gpu_id.restype = amdsmi_status_t
|
||||
amdsmi_get_gpu_id.argtypes = [amdsmi_processor_handle, ctypes.POINTER(ctypes.c_uint16)]
|
||||
@@ -2399,9 +2403,6 @@ amdsmi_get_gpu_subsystem_id.argtypes = [amdsmi_processor_handle, ctypes.POINTER(
|
||||
amdsmi_get_gpu_subsystem_name = _libraries['libamd_smi.so'].amdsmi_get_gpu_subsystem_name
|
||||
amdsmi_get_gpu_subsystem_name.restype = amdsmi_status_t
|
||||
amdsmi_get_gpu_subsystem_name.argtypes = [amdsmi_processor_handle, ctypes.POINTER(ctypes.c_char), size_t]
|
||||
amdsmi_get_gpu_virtualization_mode = _libraries['libamd_smi.so'].amdsmi_get_gpu_virtualization_mode
|
||||
amdsmi_get_gpu_virtualization_mode.restype = amdsmi_status_t
|
||||
amdsmi_get_gpu_virtualization_mode.argtypes = [amdsmi_processor_handle, ctypes.POINTER(amdsmi_virtualization_mode_t)]
|
||||
amdsmi_get_gpu_pci_bandwidth = _libraries['libamd_smi.so'].amdsmi_get_gpu_pci_bandwidth
|
||||
amdsmi_get_gpu_pci_bandwidth.restype = amdsmi_status_t
|
||||
amdsmi_get_gpu_pci_bandwidth.argtypes = [amdsmi_processor_handle, ctypes.POINTER(struct_amdsmi_pcie_bandwidth_t)]
|
||||
|
||||
Referens i nytt ärende
Block a user