pwm: pca9685: Fix wrong argument to set MODE1_SLEEP bit
Current code actually does not set MODE1_SLEEP bit because the new value for bitmask (0x1) is wrong. To set MODE1_SLEEP bit, we should pass MODE1_SLEEP as the new value for bitmask. Signed-off-by: Axel Lin <axel.lin@ingics.com> Reviewed-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
This commit is contained in:
parent
71077bc8db
commit
fed1bf8dc7
@ -190,7 +190,7 @@ static void pca9685_pwm_free(struct pwm_chip *chip, struct pwm_device *pwm)
|
|||||||
|
|
||||||
if (--pca->active_cnt == 0)
|
if (--pca->active_cnt == 0)
|
||||||
regmap_update_bits(pca->regmap, PCA9685_MODE1, MODE1_SLEEP,
|
regmap_update_bits(pca->regmap, PCA9685_MODE1, MODE1_SLEEP,
|
||||||
0x1);
|
MODE1_SLEEP);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct pwm_ops pca9685_pwm_ops = {
|
static const struct pwm_ops pca9685_pwm_ops = {
|
||||||
@ -264,7 +264,8 @@ static int pca9685_pwm_remove(struct i2c_client *client)
|
|||||||
{
|
{
|
||||||
struct pca9685 *pca = i2c_get_clientdata(client);
|
struct pca9685 *pca = i2c_get_clientdata(client);
|
||||||
|
|
||||||
regmap_update_bits(pca->regmap, PCA9685_MODE1, MODE1_SLEEP, 0x1);
|
regmap_update_bits(pca->regmap, PCA9685_MODE1, MODE1_SLEEP,
|
||||||
|
MODE1_SLEEP);
|
||||||
|
|
||||||
return pwmchip_remove(&pca->chip);
|
return pwmchip_remove(&pca->chip);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user