Commit 316178f0 authored by Jerry (Fangzhi) Zuo's avatar Jerry (Fangzhi) Zuo Committed by Alex Deucher

drm/amd/display: Allow passing of syspll id to get_smu_clock_info

Signed-off-by: default avatarJerry (Fangzhi) Zuo <Jerry.Zuo@amd.com>
Reviewed-by: default avatarHersen Wu <hersenxs.wu@amd.com>
Acked-by: default avatarHarry Wentland <harry.wentland@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 623a7e96
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
#include "bios_parser_common.h" #include "bios_parser_common.h"
#define LAST_RECORD_TYPE 0xff #define LAST_RECORD_TYPE 0xff
#define SMU9_SYSPLL0_ID 0
struct i2c_id_config_access { struct i2c_id_config_access {
uint8_t bfI2C_LineMux:4; uint8_t bfI2C_LineMux:4;
...@@ -1220,7 +1220,7 @@ static unsigned int bios_parser_get_smu_clock_info( ...@@ -1220,7 +1220,7 @@ static unsigned int bios_parser_get_smu_clock_info(
if (!bp->cmd_tbl.get_smu_clock_info) if (!bp->cmd_tbl.get_smu_clock_info)
return BP_RESULT_FAILURE; return BP_RESULT_FAILURE;
return bp->cmd_tbl.get_smu_clock_info(bp); return bp->cmd_tbl.get_smu_clock_info(bp, 0);
} }
static enum bp_result bios_parser_program_crtc_timing( static enum bp_result bios_parser_program_crtc_timing(
...@@ -1376,7 +1376,7 @@ static enum bp_result get_firmware_info_v3_1( ...@@ -1376,7 +1376,7 @@ static enum bp_result get_firmware_info_v3_1(
if (bp->cmd_tbl.get_smu_clock_info != NULL) { if (bp->cmd_tbl.get_smu_clock_info != NULL) {
/* VBIOS gives in 10KHz */ /* VBIOS gives in 10KHz */
info->smu_gpu_pll_output_freq = info->smu_gpu_pll_output_freq =
bp->cmd_tbl.get_smu_clock_info(bp) * 10; bp->cmd_tbl.get_smu_clock_info(bp, SMU9_SYSPLL0_ID) * 10;
} }
return BP_RESULT_OK; return BP_RESULT_OK;
......
...@@ -796,7 +796,7 @@ static enum bp_result set_dce_clock_v2_1( ...@@ -796,7 +796,7 @@ static enum bp_result set_dce_clock_v2_1(
****************************************************************************** ******************************************************************************
*****************************************************************************/ *****************************************************************************/
static unsigned int get_smu_clock_info_v3_1(struct bios_parser *bp); static unsigned int get_smu_clock_info_v3_1(struct bios_parser *bp, uint8_t id);
static void init_get_smu_clock_info(struct bios_parser *bp) static void init_get_smu_clock_info(struct bios_parser *bp)
{ {
...@@ -805,12 +805,13 @@ static void init_get_smu_clock_info(struct bios_parser *bp) ...@@ -805,12 +805,13 @@ static void init_get_smu_clock_info(struct bios_parser *bp)
} }
static unsigned int get_smu_clock_info_v3_1(struct bios_parser *bp) static unsigned int get_smu_clock_info_v3_1(struct bios_parser *bp, uint8_t id)
{ {
struct atom_get_smu_clock_info_parameters_v3_1 smu_input = {0}; struct atom_get_smu_clock_info_parameters_v3_1 smu_input = {0};
struct atom_get_smu_clock_info_output_parameters_v3_1 smu_output; struct atom_get_smu_clock_info_output_parameters_v3_1 smu_output;
smu_input.command = GET_SMU_CLOCK_INFO_V3_1_GET_PLLVCO_FREQ; smu_input.command = GET_SMU_CLOCK_INFO_V3_1_GET_PLLVCO_FREQ;
smu_input.syspll_id = id;
/* Get Specific Clock */ /* Get Specific Clock */
if (EXEC_BIOS_CMD_TABLE(getsmuclockinfo, smu_input)) { if (EXEC_BIOS_CMD_TABLE(getsmuclockinfo, smu_input)) {
......
...@@ -96,7 +96,7 @@ struct cmd_tbl { ...@@ -96,7 +96,7 @@ struct cmd_tbl {
struct bios_parser *bp, struct bios_parser *bp,
struct bp_set_dce_clock_parameters *bp_params); struct bp_set_dce_clock_parameters *bp_params);
unsigned int (*get_smu_clock_info)( unsigned int (*get_smu_clock_info)(
struct bios_parser *bp); struct bios_parser *bp, uint8_t id);
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment