All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] pwm: iqs620a: Replace one remaining instance of regmap_update_bits()
@ 2022-12-27  5:02 Jeff LaBundy
  2022-12-27  9:02 ` Uwe Kleine-König
  0 siblings, 1 reply; 3+ messages in thread
From: Jeff LaBundy @ 2022-12-27  5:02 UTC (permalink / raw)
  To: thierry.reding; +Cc: u.kleine-koenig, linux-pwm, jeff

The call to regmap_update_bits() which was responsible for clearing
the PWM output enable register bit was recently dropped in favor of
a call to regmap_clear_bits(), thereby simplifying the code.

Similarly, the call to regmap_update_bits() which sets the same bit
can be simplified with a call to regmap_set_bits().

Fixes: 2c85895bf3d2 ("pwm: iqs620a: Use regmap_clear_bits and regmap_set_bits where applicable")
Signed-off-by: Jeff LaBundy <jeff@labundy.com>
---
 drivers/pwm/pwm-iqs620a.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/pwm/pwm-iqs620a.c b/drivers/pwm/pwm-iqs620a.c
index 4987ca940b64..8362b4870c66 100644
--- a/drivers/pwm/pwm-iqs620a.c
+++ b/drivers/pwm/pwm-iqs620a.c
@@ -55,8 +55,8 @@ static int iqs620_pwm_init(struct iqs620_pwm_private *iqs620_pwm,
 	if (ret)
 		return ret;
 
-	return regmap_update_bits(iqs62x->regmap, IQS620_PWR_SETTINGS,
-				  IQS620_PWR_SETTINGS_PWM_OUT, 0xff);
+	return regmap_set_bits(iqs62x->regmap, IQS620_PWR_SETTINGS,
+			       IQS620_PWR_SETTINGS_PWM_OUT);
 }
 
 static int iqs620_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] pwm: iqs620a: Replace one remaining instance of regmap_update_bits()
  2022-12-27  5:02 [PATCH] pwm: iqs620a: Replace one remaining instance of regmap_update_bits() Jeff LaBundy
@ 2022-12-27  9:02 ` Uwe Kleine-König
  2022-12-27 14:00   ` Jeff LaBundy
  0 siblings, 1 reply; 3+ messages in thread
From: Uwe Kleine-König @ 2022-12-27  9:02 UTC (permalink / raw)
  To: Jeff LaBundy; +Cc: thierry.reding, linux-pwm

[-- Attachment #1: Type: text/plain, Size: 1654 bytes --]

Hello Jeff,

On Mon, Dec 26, 2022 at 11:02:41PM -0600, Jeff LaBundy wrote:
> The call to regmap_update_bits() which was responsible for clearing
> the PWM output enable register bit was recently dropped in favor of
> a call to regmap_clear_bits(), thereby simplifying the code.
> 
> Similarly, the call to regmap_update_bits() which sets the same bit
> can be simplified with a call to regmap_set_bits().
> 
> Fixes: 2c85895bf3d2 ("pwm: iqs620a: Use regmap_clear_bits and regmap_set_bits where applicable")

I wouldn't call this a fix. This trailer triggers the stable guys to
backport the commit for stable. I wouldn't support that.

> Signed-off-by: Jeff LaBundy <jeff@labundy.com>
> ---
>  drivers/pwm/pwm-iqs620a.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/pwm/pwm-iqs620a.c b/drivers/pwm/pwm-iqs620a.c
> index 4987ca940b64..8362b4870c66 100644
> --- a/drivers/pwm/pwm-iqs620a.c
> +++ b/drivers/pwm/pwm-iqs620a.c
> @@ -55,8 +55,8 @@ static int iqs620_pwm_init(struct iqs620_pwm_private *iqs620_pwm,
>  	if (ret)
>  		return ret;
>  
> -	return regmap_update_bits(iqs62x->regmap, IQS620_PWR_SETTINGS,
> -				  IQS620_PWR_SETTINGS_PWM_OUT, 0xff);

This is strange, because val has more bits set than mask
(IQS620_PWR_SETTINGS_PWM_OUT == 0x80).

> +	return regmap_set_bits(iqs62x->regmap, IQS620_PWR_SETTINGS,
> +			       IQS620_PWR_SETTINGS_PWM_OUT);
>  }

The change looks fine however.

Best regards
Uwe

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

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] pwm: iqs620a: Replace one remaining instance of regmap_update_bits()
  2022-12-27  9:02 ` Uwe Kleine-König
@ 2022-12-27 14:00   ` Jeff LaBundy
  0 siblings, 0 replies; 3+ messages in thread
From: Jeff LaBundy @ 2022-12-27 14:00 UTC (permalink / raw)
  To: Uwe Kleine-König; +Cc: thierry.reding, linux-pwm

Hi Uwe,

Thank you for taking a look!

On Tue, Dec 27, 2022 at 10:02:53AM +0100, Uwe Kleine-König wrote:
> Hello Jeff,
> 
> On Mon, Dec 26, 2022 at 11:02:41PM -0600, Jeff LaBundy wrote:
> > The call to regmap_update_bits() which was responsible for clearing
> > the PWM output enable register bit was recently dropped in favor of
> > a call to regmap_clear_bits(), thereby simplifying the code.
> > 
> > Similarly, the call to regmap_update_bits() which sets the same bit
> > can be simplified with a call to regmap_set_bits().
> > 
> > Fixes: 2c85895bf3d2 ("pwm: iqs620a: Use regmap_clear_bits and regmap_set_bits where applicable")
> 
> I wouldn't call this a fix. This trailer triggers the stable guys to
> backport the commit for stable. I wouldn't support that.

My naive assumption was this commit would get ignored by stable for the
foreseeable future, since the original commit itself is not yet in any
stable trees. Rather, the intent was to complete the good intentions of
a recent commit and provide some context.

That being said, there is no functional change or bug to be addressed,
so the argument to not call this a fix is valid as well. I will update
the commit message.

> 
> > Signed-off-by: Jeff LaBundy <jeff@labundy.com>
> > ---
> >  drivers/pwm/pwm-iqs620a.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/pwm/pwm-iqs620a.c b/drivers/pwm/pwm-iqs620a.c
> > index 4987ca940b64..8362b4870c66 100644
> > --- a/drivers/pwm/pwm-iqs620a.c
> > +++ b/drivers/pwm/pwm-iqs620a.c
> > @@ -55,8 +55,8 @@ static int iqs620_pwm_init(struct iqs620_pwm_private *iqs620_pwm,
> >  	if (ret)
> >  		return ret;
> >  
> > -	return regmap_update_bits(iqs62x->regmap, IQS620_PWR_SETTINGS,
> > -				  IQS620_PWR_SETTINGS_PWM_OUT, 0xff);
> 
> This is strange, because val has more bits set than mask
> (IQS620_PWR_SETTINGS_PWM_OUT == 0x80).

Right, the intent was to make it blatantly obvious that all masked bits
are to be set, prior to being aware that regmap_set_bits() was recently
introduced at the time. Both are functionally equivalent to each other
as well as regmap_update_bits(regmap, reg, mask, ~0), the last of which
still exists in a handful of places. Granted I'm responsible for a few
of them ;)

> 
> > +	return regmap_set_bits(iqs62x->regmap, IQS620_PWR_SETTINGS,
> > +			       IQS620_PWR_SETTINGS_PWM_OUT);
> >  }
> 
> The change looks fine however.
> 
> Best regards
> Uwe
> 
> -- 
> Pengutronix e.K.                           | Uwe Kleine-König            |
> Industrial Linux Solutions                 | https://www.pengutronix.de/ |

Kind regards,
Jeff LaBundy

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-12-27 14:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-27  5:02 [PATCH] pwm: iqs620a: Replace one remaining instance of regmap_update_bits() Jeff LaBundy
2022-12-27  9:02 ` Uwe Kleine-König
2022-12-27 14:00   ` Jeff LaBundy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.