> -----Original Message----- > From: Evan Quan [mailto:evan.quan at amd.com] > Sent: Friday, September 29, 2017 9:10 PM > To: amd-gfx at lists.freedesktop.org > Cc: Deucher, Alexander; Zhang, Jerry; Quan, Evan > Subject: [PATCH 2/4] drm/amd/powerplay: get raven max/min gfx clocks > > Change-Id: I56e713e16b9a794857e7ecbb7ca47e0ddd727862 > Signed-off-by: Evan Quan <evan.quan at amd.com> > --- > drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c | 20 > ++++++++++++++++++++ > drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h | 2 ++ > 2 files changed, 22 insertions(+) > > diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c > b/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c > index 6f0b2e5..e2ad41d 100644 > --- a/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c > +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c > @@ -421,6 +421,26 @@ static int rv_populate_clock_table(struct pp_hwmgr > *hwmgr) > rv_get_clock_voltage_dependency_table(hwmgr, &pinfo- > >vdd_dep_on_phyclk, > ARRAY_SIZE(VddPhyClk), > &VddPhyClk[0]); > > + PP_ASSERT_WITH_CODE(!smum_send_msg_to_smc(hwmgr- > >smumgr, > + PPSMC_MSG_GetMinGfxclkFrequency), > + "Attempt to get min GFXCLK Failed!", > + return -1); > + PP_ASSERT_WITH_CODE(!rv_read_arg_from_smc(hwmgr->smumgr, > + &result), > + "Attempt to get min GFXCLK Failed!", > + return -1); > + rv_data->gfx_min_freq_limit = result * 100; > + > + PP_ASSERT_WITH_CODE(!smum_send_msg_to_smc(hwmgr- > >smumgr, > + PPSMC_MSG_GetMaxGfxclkFrequency), > + "Attempt to get max GFXCLK Failed!", > + return -1); > + PP_ASSERT_WITH_CODE(!rv_read_arg_from_smc(hwmgr->smumgr, > + &result), > + "Attempt to get max GFXCLK Failed!", > + return -1); Return proper error codes in this function. Maybe -EINVAL? With that fixed: Reviewed-by: Alex Deucher <alexander.deucher at amd.com> > + rv_data->gfx_max_freq_limit = result * 100; > + > return 0; > } > > diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h > b/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h > index 68d61bd..9dc5030 100644 > --- a/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h > +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h > @@ -283,6 +283,8 @@ struct rv_hwmgr { > uint32_t vclk_soft_min; > uint32_t dclk_soft_min; > uint32_t gfx_actual_soft_min_freq; > + uint32_t gfx_min_freq_limit; > + uint32_t gfx_max_freq_limit; > > bool vcn_power_gated; > bool vcn_dpg_mode; > -- > 2.7.4