Re: [PATCH v14 3/3] Input: new da7280 haptic driver

From: Uwe Kleine-KÃnig
Date: Fri Jun 26 2020 - 11:56:23 EST


On Fri, Jun 26, 2020 at 01:17:29PM +0000, Roy Im wrote:
> > On Fri, June 26, 2020 3:19 PM, Uwe Kleine-König wrote:
> > Hello,
> > from the PWM POV I'm happy now. Just a few minor comments that I noticed while checking the PWM details.
>
> Many thanks for your comments.
>
> >
> > On Thu, Jun 25, 2020 at 01:59:29AM +0900, Roy Im wrote:
> > > + val = haptics->ps_seq_id << DA7280_PS_SEQ_ID_SHIFT |
> > > + haptics->ps_seq_loop << DA7280_PS_SEQ_LOOP_SHIFT;
> >
> > If you write this as:
> >
> > val = FIELD_PREP(DA7280_PS_SEQ_ID_MASK, haptics->ps_seq_id) |
> > FIELD_PREP(DA7280_PS_SEQ_LOOP_MASK, haptics->ps_seq_loop);
> >
> > you get some additional checks for free and can drop all defines for ..._SHIFT .
>
> It is not difficult to update that as you advise, but I think having
> the shift there explicitly makes it more readable, so most of the
> drivers from my team have the defines(shift) up to now. I guess this
> is a kind of subjective thing.
> Do you think it is still necessary? Then I will update as you said.

No, from my side it's not a hard requirement (and after all I'm not the
one who will take your commit). I personally like it better with
FIELD_PREP, but I can still sleep if you don't agree :-)

What I don't like about having both ..._SHIFT and ..._MASK is that there
is some duplication as ..._SHIFT can be calculated from ..._MASK:

#define LALA_SHIFT (ffs(LALA_MASK) - 1)

Best regards
Uwe

--
Pengutronix e.K. | Uwe Kleine-König |
Industrial Linux Solutions | https://www.pengutronix.de/ |

Attachment: signature.asc
Description: PGP signature