2019-09-10 08:06:25

by Benjamin GAIGNARD

[permalink] [raw]
Subject: [PATCH] drm: include: fix W=1 warnings in struct drm_dsc_config

Change scale_increment_interval and nfl_bpg_offset fields to
u32 to avoid W=1 warnings because we are testing them against
65535.

Signed-off-by: Benjamin Gaignard <[email protected]>
---
include/drm/drm_dsc.h | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/include/drm/drm_dsc.h b/include/drm/drm_dsc.h
index 887954cbfc60..e495024e901c 100644
--- a/include/drm/drm_dsc.h
+++ b/include/drm/drm_dsc.h
@@ -207,11 +207,13 @@ struct drm_dsc_config {
* Number of group times between incrementing the scale factor value
* used at the beginning of a slice.
*/
- u16 scale_increment_interval;
+ u32 scale_increment_interval;
+
/**
* @nfl_bpg_offset: Non first line BPG offset to be used
*/
- u16 nfl_bpg_offset;
+
+ u32 nfl_bpg_offset;
/**
* @slice_bpg_offset: BPG offset used to enforce slice bit
*/
--
2.15.0


2019-09-10 13:52:03

by Harry Wentland

[permalink] [raw]
Subject: Re: [PATCH] drm: include: fix W=1 warnings in struct drm_dsc_config

+Manasi, Gaurav

On 2019-09-09 9:52 a.m., Benjamin Gaignard wrote:
> Change scale_increment_interval and nfl_bpg_offset fields to
> u32 to avoid W=1 warnings because we are testing them against
> 65535.
>
> Signed-off-by: Benjamin Gaignard <[email protected]>
> ---
> include/drm/drm_dsc.h | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/include/drm/drm_dsc.h b/include/drm/drm_dsc.h
> index 887954cbfc60..e495024e901c 100644
> --- a/include/drm/drm_dsc.h
> +++ b/include/drm/drm_dsc.h
> @@ -207,11 +207,13 @@ struct drm_dsc_config {
> * Number of group times between incrementing the scale factor value
> * used at the beginning of a slice.
> */
> - u16 scale_increment_interval;
> + u32 scale_increment_interval;

The DSC spec defines both as u16. I think the check in drm_dsc.c is
useless and should be dropped.

Harry

> +
> /**
> * @nfl_bpg_offset: Non first line BPG offset to be used
> */
> - u16 nfl_bpg_offset;
> +
> + u32 nfl_bpg_offset;
> /**
> * @slice_bpg_offset: BPG offset used to enforce slice bit
> */
>

2019-09-10 19:27:53

by Navare, Manasi

[permalink] [raw]
Subject: Re: [PATCH] drm: include: fix W=1 warnings in struct drm_dsc_config

On Tue, Sep 10, 2019 at 12:58:24PM +0000, Harry Wentland wrote:
> +Manasi, Gaurav
>
> On 2019-09-09 9:52 a.m., Benjamin Gaignard wrote:
> > Change scale_increment_interval and nfl_bpg_offset fields to
> > u32 to avoid W=1 warnings because we are testing them against
> > 65535.
> >
> > Signed-off-by: Benjamin Gaignard <[email protected]>
> > ---
> > include/drm/drm_dsc.h | 6 ++++--
> > 1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/include/drm/drm_dsc.h b/include/drm/drm_dsc.h
> > index 887954cbfc60..e495024e901c 100644
> > --- a/include/drm/drm_dsc.h
> > +++ b/include/drm/drm_dsc.h
> > @@ -207,11 +207,13 @@ struct drm_dsc_config {
> > * Number of group times between incrementing the scale factor value
> > * used at the beginning of a slice.
> > */
> > - u16 scale_increment_interval;
> > + u32 scale_increment_interval;
>
> The DSC spec defines both as u16. I think the check in drm_dsc.c is
> useless and should be dropped.
>

I agree with Harry here, all these variables should match the number of bits
in the spec, increasing them to u32 allows more values which violates the
DSC spec.

It should stay u16

Manasi

> Harry
>
> > +
> > /**
> > * @nfl_bpg_offset: Non first line BPG offset to be used
> > */
> > - u16 nfl_bpg_offset;
> > +
> > + u32 nfl_bpg_offset;
> > /**
> > * @slice_bpg_offset: BPG offset used to enforce slice bit
> > */
> >
> _______________________________________________
> dri-devel mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/dri-devel