Re: [PATCH] amdgpu/dc: Add missing cast in dce_clock_set_min_clocks_state()
From: Harry Wentland
Date: Fri Feb 09 2018 - 16:56:14 EST
On 2018-02-09 04:28 PM, Matthias Kaehlcke wrote:
> dce_clock_set_min_clocks_state() assigns (intentionally) a value of type
> 'enum dm_pp_clocks_state' to a variable of type 'enum dm_pp_power_level'
> without an explicit cast. This causes clang to raise the following
> warning:
>
> drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_clocks.c:308:4: error:
> implicit conversion from enumeration type 'enum dm_pp_clocks_state'
> to different enumeration type 'enum dm_pp_power_level' [-Werror,-Wenum-conversion]
> clocks_state };
>
> Make the cast explicit.
>
> Signed-off-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>
> ---
> drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c b/drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c
> index 9e98a5f39a6d..db3ceb283255 100644
> --- a/drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c
> +++ b/drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c
> @@ -304,7 +304,8 @@ static bool dce_clock_set_min_clocks_state(
> enum dm_pp_clocks_state clocks_state)
> {
> struct dm_pp_power_level_change_request level_change_req = {
> - clocks_state };
> + .power_level = (enum dm_pp_power_level)clocks_state
Thanks for spotting this. Looks like both enums are exactly the same so no need to keep both. I sent a patch to remove the dm_pp_power_level enum to amd-gfx and CC'd you on it.
Harry
> + };
>
> if (clocks_state > clk->max_clks_state) {
> /*Requested state exceeds max supported state.*/
>