From: zhexzhan <zhexi.zhang@xxxxxxx> Issue: DROOP coef read by HDT appear to be mismatch with requirement of BKM0.83 Root cause: These values are supposed to be overwritten by PPLIB. However, driver missed code of this part. Solution: Add overwriting process when reading pptable from vBIOS Hardcode specific coef with correct values: GbVdroopTableCksoffA0 = 0xFFFCD2E7 GbVdroopTableCksoffA1 = 0x24902 GbVdroopTableCksoffA2 = 0x249BA Signed-off-by: zhexzhan <zhexi.zhang@xxxxxxx> --- drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.c b/drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.c index 615cf2c0..b827c2c 100644 --- a/drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.c +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.c @@ -293,6 +293,13 @@ int pp_atomfwctrl_get_avfs_information(struct pp_hwmgr *hwmgr, format_revision = ((struct atom_common_table_header *)profile)->format_revision; content_revision = ((struct atom_common_table_header *)profile)->content_revision; + if (format_revision == 4) + { + profile->gb_vdroop_table_cksoff_a0 = 0xfffcd2e7; + profile->gb_vdroop_table_cksoff_a1 = 0x24902; + profile->gb_vdroop_table_cksoff_a2 = 0x249ba; + } + if (format_revision == 4 && content_revision == 1) { param->ulMaxVddc = le32_to_cpu(profile->maxvddc); param->ulMinVddc = le32_to_cpu(profile->minvddc); -- 2.7.4 _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx