RE: [PATCH 6/7] drm/amd/powerplay: Use proper enums in vega20_print_clk_levels

From: Quan, Evan
Date: Mon Jul 15 2019 - 21:00:10 EST


Thanks! This is reviewed-by: Evan Quan <evan.quan@xxxxxxx>

Regards
Evan
> -----Original Message-----
> From: Nathan Chancellor <natechancellor@xxxxxxxxx>
> Sent: Monday, July 15, 2019 11:40 PM
> To: Arnd Bergmann <arnd@xxxxxxxx>
> Cc: Deucher, Alexander <Alexander.Deucher@xxxxxxx>; Koenig, Christian
> <Christian.Koenig@xxxxxxx>; Zhou, David(ChunMing)
> <David1.Zhou@xxxxxxx>; Wentland, Harry <Harry.Wentland@xxxxxxx>;
> Li, Sun peng (Leo) <Sunpeng.Li@xxxxxxx>; Rex Zhu <rex.zhu@xxxxxxx>;
> Quan, Evan <Evan.Quan@xxxxxxx>; David Airlie <airlied@xxxxxxxx>; Daniel
> Vetter <daniel@xxxxxxxx>; amd-gfx list <amd-gfx@xxxxxxxxxxxxxxxxxxxxx>; dri-
> devel <dri-devel@xxxxxxxxxxxxxxxxxxxxx>; Linux Kernel Mailing List <linux-
> kernel@xxxxxxxxxxxxxxx>; clang-built-linux <clang-built-
> linux@xxxxxxxxxxxxxxxx>; Wang, Kevin(Yang) <Kevin1.Wang@xxxxxxx>
> Subject: Re: [PATCH 6/7] drm/amd/powerplay: Use proper enums in
> vega20_print_clk_levels
>
> On Mon, Jul 15, 2019 at 11:25:29AM +0200, Arnd Bergmann wrote:
> > On Thu, Jul 4, 2019 at 7:52 AM Nathan Chancellor
> > <natechancellor@xxxxxxxxx> wrote:
> > >
> > > clang warns:
> > >
> > > drivers/gpu/drm/amd/amdgpu/../powerplay/vega20_ppt.c:995:39:
> warning:
> > > implicit conversion from enumeration type 'PPCLK_e' to different
> > > enumeration type 'enum smu_clk_type' [-Wenum-conversion]
> > > ret = smu_get_current_clk_freq(smu, PPCLK_SOCCLK, &now);
> > >
> > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
> > > drivers/gpu/drm/amd/amdgpu/../powerplay/vega20_ppt.c:1016:39:
> warning:
> > > implicit conversion from enumeration type 'PPCLK_e' to different
> > > enumeration type 'enum smu_clk_type' [-Wenum-conversion]
> > > ret = smu_get_current_clk_freq(smu, PPCLK_FCLK, &now);
> > >
> > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
> > > drivers/gpu/drm/amd/amdgpu/../powerplay/vega20_ppt.c:1031:39:
> warning:
> > > implicit conversion from enumeration type 'PPCLK_e' to different
> > > enumeration type 'enum smu_clk_type' [-Wenum-conversion]
> > > ret = smu_get_current_clk_freq(smu, PPCLK_DCEFCLK, &now);
> > >
> > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
> > >
> > > The values are mapped one to one in vega20_get_smu_clk_index so just
> > > use the proper enums here.
> > >
> > > Fixes: 096761014227 ("drm/amd/powerplay: support sysfs to get
> > > socclk, fclk, dcefclk")
> > > Link: https://github.com/ClangBuiltLinux/linux/issues/587
> > > Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx>
> > > ---
> >
> > Adding Kevin Wang for further review, as he sent a related patch in
> > d36893362d22 ("drm/amd/powerplay: fix smu clock type change miss
> > error")
> >
> > I assume this one is still required as it triggers the same warning.
> > Kevin, can you have a look?
> >
> > Arnd
>
> Indeed, this one and https://github.com/ClangBuiltLinux/linux/issues/586
> are still outstanding.
>
> https://patchwork.freedesktop.org/patch/315581/
>
> Cheers,
> Nathan
>
> >
> > > drivers/gpu/drm/amd/powerplay/vega20_ppt.c | 6 +++---
> > > 1 file changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
> > > b/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
> > > index 0f14fe14ecd8..e62dd6919b24 100644
> > > --- a/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
> > > +++ b/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
> > > @@ -992,7 +992,7 @@ static int vega20_print_clk_levels(struct
> smu_context *smu,
> > > break;
> > >
> > > case SMU_SOCCLK:
> > > - ret = smu_get_current_clk_freq(smu, PPCLK_SOCCLK, &now);
> > > + ret = smu_get_current_clk_freq(smu, SMU_SOCCLK,
> > > + &now);
> > > if (ret) {
> > > pr_err("Attempt to get current socclk Failed!");
> > > return ret;
> > > @@ -1013,7 +1013,7 @@ static int vega20_print_clk_levels(struct
> smu_context *smu,
> > > break;
> > >
> > > case SMU_FCLK:
> > > - ret = smu_get_current_clk_freq(smu, PPCLK_FCLK, &now);
> > > + ret = smu_get_current_clk_freq(smu, SMU_FCLK, &now);
> > > if (ret) {
> > > pr_err("Attempt to get current fclk Failed!");
> > > return ret;
> > > @@ -1028,7 +1028,7 @@ static int vega20_print_clk_levels(struct
> smu_context *smu,
> > > break;
> > >
> > > case SMU_DCEFCLK:
> > > - ret = smu_get_current_clk_freq(smu, PPCLK_DCEFCLK, &now);
> > > + ret = smu_get_current_clk_freq(smu, SMU_DCEFCLK,
> > > + &now);
> > > if (ret) {
> > > pr_err("Attempt to get current dcefclk Failed!");
> > > return ret;