Re: [PATCH 1/6] staging: media: intel-ipu3: replace bit shifts with BIT() macro

From: Sakari Ailus
Date: Mon Apr 12 2021 - 07:00:36 EST


On Mon, Apr 12, 2021 at 12:55:52PM +0200, Greg KH wrote:
> On Mon, Apr 12, 2021 at 01:44:35PM +0300, Sakari Ailus wrote:
> > Hi Greg,
> >
> > On Mon, Apr 12, 2021 at 11:49:43AM +0200, Greg KH wrote:
> > > On Mon, Apr 12, 2021 at 12:42:30PM +0300, Sakari Ailus wrote:
> > > > Hi Mitali,
> > > >
> > > > On Mon, Apr 12, 2021 at 04:38:39AM +0530, Mitali Borkar wrote:
> > > > > Added #include <linux/bitops.h> and replaced bit shifts by BIT() macro.
> > > > > This BIT() macro from linux/bitops.h is used to define IPU3_UAPI_GRID_Y_START_EN
> > > > > and IPU3_UAPI_AWB_RGBS_THR_B_* bitmask.
> > > > > Use of macro is better and neater. It maintains consistency.
> > > > > Reported by checkpatch.
> > > > >
> > > > > Signed-off-by: Mitali Borkar <mitaliborkar810@xxxxxxxxx>
> > > > > ---
> > > > > drivers/staging/media/ipu3/include/intel-ipu3.h | 7 ++++---
> > > > > 1 file changed, 4 insertions(+), 3 deletions(-)
> > > > >
> > > > > diff --git a/drivers/staging/media/ipu3/include/intel-ipu3.h b/drivers/staging/media/ipu3/include/intel-ipu3.h
> > > > > index edd8edda0647..589d5ccee3a7 100644
> > > > > --- a/drivers/staging/media/ipu3/include/intel-ipu3.h
> > > > > +++ b/drivers/staging/media/ipu3/include/intel-ipu3.h
> > > > > @@ -5,6 +5,7 @@
> > > > > #define __IPU3_UAPI_H
> > > > >
> > > > > #include <linux/types.h>
> > > > > +#include <linux/bitops.h>
> > > > >
> > > > > /* from /drivers/staging/media/ipu3/include/videodev2.h */
> > > > >
> > > > > @@ -22,11 +23,11 @@
> > > > > #define IPU3_UAPI_MAX_BUBBLE_SIZE 10
> > > > >
> > > > > #define IPU3_UAPI_GRID_START_MASK ((1 << 12) - 1)
> > > > > -#define IPU3_UAPI_GRID_Y_START_EN (1 << 15)
> > > > > +#define IPU3_UAPI_GRID_Y_START_EN BIT(15)
> > > >
> > > > This header is used in user space where you don't have the BIT() macro.
> > >
> > > If that is true, why is it not in a "uapi" subdir within this driver?
> > >
> > > Otherwise it is not obvious at all that this is the case :(
> >
> > It defines an interface towards the user space and the argument has been a
> > staging driver shouldn't be doing that (for the lack of ABI stability),
> > hence leaving it where it is currently.
>
> I think we are talking past each other here...
>
> If you have a userspace api, then put that in a .h file that has a
> "uapi" in the path. Just because you have this in a staging driver does
> not mean you should not have such a thing, otherwise you are going to
> constantly fight against people sending you patches like this as there
> is no obvious way to determine this.
>
> So how about moving this file to:
> drivers/staging/media/ipu3/include/uapi/intel-ipu3.h

Ah, sure! I'll send a patch.

--
Sakari Ailus