]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amd/pm: Drop legacy message fields from SMUv11
authorLijo Lazar <lijo.lazar@amd.com>
Tue, 16 Dec 2025 08:15:52 +0000 (13:45 +0530)
committerAlex Deucher <alexander.deucher@amd.com>
Sat, 10 Jan 2026 19:08:37 +0000 (14:08 -0500)
Remove usage of legacy message related fields from SMUv11 SOCs.

Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
Reviewed-by: Asad Kamal <asad.kamal@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/pm/swsmu/inc/smu_v11_0.h
drivers/gpu/drm/amd/pm/swsmu/smu11/arcturus_ppt.c
drivers/gpu/drm/amd/pm/swsmu/smu11/cyan_skillfish_ppt.c
drivers/gpu/drm/amd/pm/swsmu/smu11/navi10_ppt.c
drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c
drivers/gpu/drm/amd/pm/swsmu/smu11/smu_v11_0.c
drivers/gpu/drm/amd/pm/swsmu/smu11/vangogh_ppt.c
drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c

index 97c19005952c1e89f4689c832bd0359ed6e4fde6..7c1701ed3e1138856a37fd01c8a0f38b680c0f84 100644 (file)
@@ -282,7 +282,6 @@ int smu_v11_0_handle_passthrough_sbr(struct smu_context *smu, bool enable);
 
 int smu_v11_0_restore_user_od_settings(struct smu_context *smu);
 
-void smu_v11_0_set_smu_mailbox_registers(struct smu_context *smu);
 void smu_v11_0_init_msg_ctl(struct smu_context *smu,
                            const struct cmn2asic_msg_mapping *message_map);
 
index eadd81e413aa8963f3438ac23dbafb3d93217107..4de7ae6f7c8ed608b465523d2bacf7580f76ff66 100644 (file)
@@ -1959,12 +1959,10 @@ static const struct pptable_funcs arcturus_ppt_funcs = {
 void arcturus_set_ppt_funcs(struct smu_context *smu)
 {
        smu->ppt_funcs = &arcturus_ppt_funcs;
-       smu->message_map = arcturus_message_map;
        smu->clock_map = arcturus_clk_map;
        smu->feature_map = arcturus_feature_mask_map;
        smu->table_map = arcturus_table_map;
        smu->pwr_src_map = arcturus_pwr_src_map;
        smu->workload_map = arcturus_workload_map;
-       smu_v11_0_set_smu_mailbox_registers(smu);
        smu_v11_0_init_msg_ctl(smu, arcturus_message_map);
 }
index 5ae6ee87de0443783efce189e3b4ea3ef1c5a59d..15968b0574696430c4d691807c2034a22b8e2f33 100644 (file)
@@ -601,9 +601,7 @@ static const struct pptable_funcs cyan_skillfish_ppt_funcs = {
 void cyan_skillfish_set_ppt_funcs(struct smu_context *smu)
 {
        smu->ppt_funcs = &cyan_skillfish_ppt_funcs;
-       smu->message_map = cyan_skillfish_message_map;
        smu->table_map = cyan_skillfish_table_map;
        smu->is_apu = true;
-       smu_v11_0_set_smu_mailbox_registers(smu);
        smu_v11_0_init_msg_ctl(smu, cyan_skillfish_message_map);
 }
index 3596cb7f8adf21e2a4377e71dab56997213b89f4..d7aa16681e243ac53402ecc79d8c338e5d68eff9 100644 (file)
@@ -3369,12 +3369,10 @@ static const struct pptable_funcs navi10_ppt_funcs = {
 void navi10_set_ppt_funcs(struct smu_context *smu)
 {
        smu->ppt_funcs = &navi10_ppt_funcs;
-       smu->message_map = navi10_message_map;
        smu->clock_map = navi10_clk_map;
        smu->feature_map = navi10_feature_mask_map;
        smu->table_map = navi10_table_map;
        smu->pwr_src_map = navi10_pwr_src_map;
        smu->workload_map = navi10_workload_map;
-       smu_v11_0_set_smu_mailbox_registers(smu);
        smu_v11_0_init_msg_ctl(smu, navi10_message_map);
 }
index 087b4b6ce857538f76d7c8145f35e90913a095d2..90aba9adc24fce113830726c3c847564d78c2914 100644 (file)
@@ -3182,12 +3182,10 @@ static const struct pptable_funcs sienna_cichlid_ppt_funcs = {
 void sienna_cichlid_set_ppt_funcs(struct smu_context *smu)
 {
        smu->ppt_funcs = &sienna_cichlid_ppt_funcs;
-       smu->message_map = sienna_cichlid_message_map;
        smu->clock_map = sienna_cichlid_clk_map;
        smu->feature_map = sienna_cichlid_feature_mask_map;
        smu->table_map = sienna_cichlid_table_map;
        smu->pwr_src_map = sienna_cichlid_pwr_src_map;
        smu->workload_map = sienna_cichlid_workload_map;
-       smu_v11_0_set_smu_mailbox_registers(smu);
        smu_v11_0_init_msg_ctl(smu, sienna_cichlid_message_map);
 }
index 579b1dbd36acd0d67ddd4c8d3d4fed6bfdaa3d90..eb1b9faf8e5c34983dfd7742cf69e031180348cc 100644 (file)
@@ -2168,15 +2168,6 @@ int smu_v11_0_restore_user_od_settings(struct smu_context *smu)
        return ret;
 }
 
-void smu_v11_0_set_smu_mailbox_registers(struct smu_context *smu)
-{
-       struct amdgpu_device *adev = smu->adev;
-
-       smu->param_reg = SOC15_REG_OFFSET(MP1, 0, mmMP1_SMN_C2PMSG_82);
-       smu->msg_reg = SOC15_REG_OFFSET(MP1, 0, mmMP1_SMN_C2PMSG_66);
-       smu->resp_reg = SOC15_REG_OFFSET(MP1, 0, mmMP1_SMN_C2PMSG_90);
-}
-
 void smu_v11_0_init_msg_ctl(struct smu_context *smu,
                            const struct cmn2asic_msg_mapping *message_map)
 {
index fe1924289040cd119871db822aa28ca3bfbe0eca..4ca211ea628f04c942d8dc1daf3f5ab9677d1f9c 100644 (file)
@@ -2557,11 +2557,9 @@ static const struct pptable_funcs vangogh_ppt_funcs = {
 void vangogh_set_ppt_funcs(struct smu_context *smu)
 {
        smu->ppt_funcs = &vangogh_ppt_funcs;
-       smu->message_map = vangogh_message_map;
        smu->feature_map = vangogh_feature_mask_map;
        smu->table_map = vangogh_table_map;
        smu->workload_map = vangogh_workload_map;
        smu->is_apu = true;
-       smu_v11_0_set_smu_mailbox_registers(smu);
        smu_v11_0_init_msg_ctl(smu, vangogh_message_map);
 }
index 177643df1aab09a0bfe7bfe406d0b4b62565af20..6b673eefc7b1c03af83fbbb7482ce761c0211f6b 100644 (file)
@@ -584,10 +584,10 @@ int smu_cmn_to_asic_specific_index(struct smu_context *smu,
        switch (type) {
        case CMN2ASIC_MAPPING_MSG:
                if (index >= SMU_MSG_MAX_COUNT ||
-                   !smu->message_map)
+                   !smu->msg_ctl.message_map)
                        return -EINVAL;
 
-               msg_mapping = smu->message_map[index];
+               msg_mapping = smu->msg_ctl.message_map[index];
                if (!msg_mapping.valid_mapping)
                        return -EINVAL;