Re: [PATCH] media: davinci: Fix implicit enum conversion warning

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Sep 14, 2018 at 11:16 PM Nathan Chancellor
<natechancellor@xxxxxxxxx> wrote:
>
> Clang warns when one enumerated type is implicitly converted to another.
>
> drivers/media/platform/davinci/vpbe_display.c:524:24: warning: implicit
> conversion from enumeration type 'enum osd_v_exp_ratio' to different
> enumeration type 'enum osd_h_exp_ratio' [-Wenum-conversion]
>                         layer_info->h_exp = V_EXP_6_OVER_5;
>                                           ~ ^~~~~~~~~~~~~~
> 1 warning generated.
>
> This appears to be a copy and paste error judging from the couple of
> lines directly above this statement and the way that height is handled
> in the if block above this one.


The above code for reference looks like:
   492                 if (h_exp)
   493                         layer_info->h_exp = H_EXP_9_OVER_8;

so it makes sense to me that:
if (h_exp) layer_info->h_exp = H_EXP_...;
then
if (v_exp) layer_info->v_exp = V_EXP_...;

Thanks for this patch Nathan, looks like an actual bug has been fixed.
Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

We should send this to stable if/when it lands.  Maybe the maintainers
could apply it with:
Cc: stable@xxxxxxxxxxxxxxx


>
> Reported-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>
> Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx>
> ---
>  drivers/media/platform/davinci/vpbe_display.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/davinci/vpbe_display.c b/drivers/media/platform/davinci/vpbe_display.c
> index d6bf96ad474c..5c235898af7b 100644
> --- a/drivers/media/platform/davinci/vpbe_display.c
> +++ b/drivers/media/platform/davinci/vpbe_display.c
> @@ -521,7 +521,7 @@ vpbe_disp_calculate_scale_factor(struct vpbe_display *disp_dev,
>                 else if (v_scale == 4)
>                         layer_info->v_zoom = ZOOM_X4;
>                 if (v_exp)
> -                       layer_info->h_exp = V_EXP_6_OVER_5;
> +                       layer_info->v_exp = V_EXP_6_OVER_5;
>         } else {
>                 /* no scaling, only cropping. Set display area to crop area */
>                 cfg->ysize = expected_ysize;
> --
> 2.18.0
>


-- 
Thanks,
~Nick Desaulniers



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux