[PATCH] pwm: sifive: simplify if-if to if-else
Uwe Kleine-König
u.kleine-koenig at pengutronix.de
Fri Apr 8 03:07:21 PDT 2022
On Fri, Apr 08, 2022 at 04:30:07PM +0800, Wan Jiabing wrote:
> use if and else instead of if(A) and if (!A).
>
> Signed-off-by: Wan Jiabing <wanjiabing at vivo.com>
> ---
> drivers/pwm/pwm-sifive.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/pwm/pwm-sifive.c b/drivers/pwm/pwm-sifive.c
> index 253c4a17d255..e6d05a329002 100644
> --- a/drivers/pwm/pwm-sifive.c
> +++ b/drivers/pwm/pwm-sifive.c
> @@ -138,10 +138,9 @@ static int pwm_sifive_enable(struct pwm_chip *chip, bool enable)
> dev_err(ddata->chip.dev, "Enable clk failed\n");
> return ret;
> }
> - }
> -
> - if (!enable)
> + } else {
> clk_disable(ddata->clk);
> + }
>
> return 0;
> }
The patch looks fine. I wonder if it would be sensible to clean up even
more: pwm_sifive_apply() is only a single caller of
pwm_sifive_enable(). If this is optimized to skip the duty_cycle and
period calculation for the state->enabled = false case and just disables
the clock this should still work.
Also I wonder if there is a clk mismatch issue in this driver: .probe
enables the clk and if the PWM is off (i.e. .get_state diagnoses that)
the clock will never be disabled while the driver is bound, will it?
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-König |
Industrial Linux Solutions | https://www.pengutronix.de/ |
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-riscv/attachments/20220408/3f2e6e8a/attachment.sig>
More information about the linux-riscv
mailing list