diff mbox series

pwm: pca9685: Set ALL_LED_OFF_L to POR value

Message ID 20220122065819.69150-1-lionel.vitte@free.fr
State Accepted
Headers show
Series pwm: pca9685: Set ALL_LED_OFF_L to POR value | expand

Commit Message

Lionel Vitte Jan. 22, 2022, 6:58 a.m. UTC
During the driver probe, registers are not set to their POR value.

Signed-off-by: Lionel Vitte <lionel.vitte@free.fr>
---
 drivers/pwm/pwm-pca9685.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Clemens Gruber Jan. 22, 2022, 1:19 p.m. UTC | #1
On Sat, Jan 22, 2022 at 07:58:19AM +0100, Lionel Vitte wrote:
> During the driver probe, registers are not set to their POR value.
> 
> Signed-off-by: Lionel Vitte <lionel.vitte@free.fr>
> ---
>  drivers/pwm/pwm-pca9685.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/pwm/pwm-pca9685.c b/drivers/pwm/pwm-pca9685.c
> index c56001a790d0..c91fa7f9e33d 100644
> --- a/drivers/pwm/pwm-pca9685.c
> +++ b/drivers/pwm/pwm-pca9685.c
> @@ -560,10 +560,10 @@ static int pca9685_pwm_probe(struct i2c_client *client,
>  	pca9685_write_reg(pca, PCA9685_MODE1, reg);
>  
>  	/* Reset OFF/ON registers to POR default */
> -	pca9685_write_reg(pca, PCA9685_ALL_LED_OFF_L, LED_FULL);
> +	pca9685_write_reg(pca, PCA9685_ALL_LED_OFF_L, 0);
>  	pca9685_write_reg(pca, PCA9685_ALL_LED_OFF_H, LED_FULL);
>  	pca9685_write_reg(pca, PCA9685_ALL_LED_ON_L, 0);
> -	pca9685_write_reg(pca, PCA9685_ALL_LED_ON_H, 0);
> +	pca9685_write_reg(pca, PCA9685_ALL_LED_ON_H, LED_FULL);
>  
>  	pca->chip.ops = &pca9685_pwm_ops;
>  	/* Add an extra channel for ALL_LED */
> -- 
> 2.34.1
>

Good catch! Resetting the ON registers to 0 is no longer necessary and
the ALL_LED_OFF_L write with LED_FULL was a mistake.

Maybe you could have chosen another subject as you are not only fixing
the ALL_LED_OFF_L mistake. Maybe ".. Fix OFF/ON register reset to POR"
or something similar.

Other than that:

Acked-by: Clemens Gruber <clemens.gruber@pqgruber.com>

Regards,
Clemens
Thierry Reding Feb. 24, 2022, 1:02 p.m. UTC | #2
On Sat, Jan 22, 2022 at 07:58:19AM +0100, Lionel Vitte wrote:
> During the driver probe, registers are not set to their POR value.
> 
> Signed-off-by: Lionel Vitte <lionel.vitte@free.fr>
> ---
>  drivers/pwm/pwm-pca9685.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Applied with the subject rewritten along the lines of what Clemens
suggested.

Thanks,
Thierry
diff mbox series

Patch

diff --git a/drivers/pwm/pwm-pca9685.c b/drivers/pwm/pwm-pca9685.c
index c56001a790d0..c91fa7f9e33d 100644
--- a/drivers/pwm/pwm-pca9685.c
+++ b/drivers/pwm/pwm-pca9685.c
@@ -560,10 +560,10 @@  static int pca9685_pwm_probe(struct i2c_client *client,
 	pca9685_write_reg(pca, PCA9685_MODE1, reg);
 
 	/* Reset OFF/ON registers to POR default */
-	pca9685_write_reg(pca, PCA9685_ALL_LED_OFF_L, LED_FULL);
+	pca9685_write_reg(pca, PCA9685_ALL_LED_OFF_L, 0);
 	pca9685_write_reg(pca, PCA9685_ALL_LED_OFF_H, LED_FULL);
 	pca9685_write_reg(pca, PCA9685_ALL_LED_ON_L, 0);
-	pca9685_write_reg(pca, PCA9685_ALL_LED_ON_H, 0);
+	pca9685_write_reg(pca, PCA9685_ALL_LED_ON_H, LED_FULL);
 
 	pca->chip.ops = &pca9685_pwm_ops;
 	/* Add an extra channel for ALL_LED */