mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 09:04:39 +02:00
drm/amd/pm: Add VCN reset message support for SMU v13.0.12
This commit adds support for VCN reset functionality in SMU v13.0.12 by: 1. Adding two new PPSMC messages in smu_v13_0_12_ppsmc.h: - PPSMC_MSG_ResetVCN (0x5E) - Updates PPSMC_Message_Count to 0x5F to account for new messages 2. Adding message mapping for ResetVCN in smu_v13_0_12_ppt.c: - Maps SMU_MSG_ResetVCN to PPSMC_MSG_ResetVCN These changes enable proper VCN reset handling through the SMU firmware interface for compatible AMD GPUs. v2: Added fw version check to support vcn queue reset. Acked-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Yang Wang <kevinyang.wang@amd.com> Reviewed-by: Sonny Jiang <sonny.jiang@amd.com> Signed-off-by: Jesse Zhang <Jesse.Zhang@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
5886090032
commit
4c709ccc47
|
|
@ -120,7 +120,8 @@
|
|||
#define PPSMC_MSG_GetBadPageSeverity 0x5B
|
||||
#define PPSMC_MSG_GetSystemMetricsTable 0x5C
|
||||
#define PPSMC_MSG_GetSystemMetricsVersion 0x5D
|
||||
#define PPSMC_Message_Count 0x5E
|
||||
#define PPSMC_MSG_ResetVCN 0x5E
|
||||
#define PPSMC_Message_Count 0x5F
|
||||
|
||||
//PPSMC Reset Types for driver msg argument
|
||||
#define PPSMC_RESET_TYPE_DRIVER_MODE_1_RESET 0x1
|
||||
|
|
|
|||
|
|
@ -136,6 +136,7 @@ const struct cmn2asic_msg_mapping smu_v13_0_12_message_map[SMU_MSG_MAX_COUNT] =
|
|||
MSG_MAP(RmaDueToBadPageThreshold, PPSMC_MSG_RmaDueToBadPageThreshold, 0),
|
||||
MSG_MAP(SetThrottlingPolicy, PPSMC_MSG_SetThrottlingPolicy, 0),
|
||||
MSG_MAP(ResetSDMA, PPSMC_MSG_ResetSDMA, 0),
|
||||
MSG_MAP(ResetVCN, PPSMC_MSG_ResetVCN, 0),
|
||||
MSG_MAP(GetStaticMetricsTable, PPSMC_MSG_GetStaticMetricsTable, 1),
|
||||
MSG_MAP(GetSystemMetricsTable, PPSMC_MSG_GetSystemMetricsTable, 1),
|
||||
};
|
||||
|
|
|
|||
|
|
@ -353,6 +353,9 @@ static void smu_v13_0_12_init_caps(struct smu_context *smu)
|
|||
smu_v13_0_6_cap_set(smu, SMU_CAP(PLDM_VERSION));
|
||||
}
|
||||
|
||||
if (fw_ver > 0x04560900)
|
||||
smu_v13_0_6_cap_set(smu, SMU_CAP(VCN_RESET));
|
||||
|
||||
if (fw_ver >= 0x04560700) {
|
||||
if (fw_ver >= 0x04560900) {
|
||||
smu_v13_0_6_cap_set(smu, SMU_CAP(TEMP_METRICS));
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user