Re: [PATCH] leds: tlc591xx: update the maximum brightness

From: Jacek Anaszewski
Date: Tue Sep 24 2019 - 15:26:36 EST


Hi Jean,

Thank you for the patch.

On 9/23/19 12:02 PM, Jean-Jacques Hiblot wrote:
> The TLC chips actually offer 257 levels:
> - 0: led OFF
> - 1-255: Led dimmed is using a PWM. The duty cycle range from 0.4% to 99.6%
> - 256: led fully ON
>
> Signed-off-by: Jean-Jacques Hiblot <jjhiblot@xxxxxx>
> ---
> drivers/leds/leds-tlc591xx.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/leds/leds-tlc591xx.c b/drivers/leds/leds-tlc591xx.c
> index 8eadb673dc2e..a8911ebd30e5 100644
> --- a/drivers/leds/leds-tlc591xx.c
> +++ b/drivers/leds/leds-tlc591xx.c
> @@ -13,6 +13,7 @@
> #include <linux/slab.h>
>
> #define TLC591XX_MAX_LEDS 16
> +#define TLC591XX_MAX_BRIGHTNESS 256
>
> #define TLC591XX_REG_MODE1 0x00
> #define MODE1_RESPON_ADDR_MASK 0xF0
> @@ -112,11 +113,11 @@ tlc591xx_brightness_set(struct led_classdev *led_cdev,
> struct tlc591xx_priv *priv = led->priv;
> int err;
>
> - switch (brightness) {
> + switch ((int)brightness) {
> case 0:
> err = tlc591xx_set_ledout(priv, led, LEDOUT_OFF);
> break;
> - case LED_FULL:
> + case TLC591XX_MAX_BRIGHTNESS:
> err = tlc591xx_set_ledout(priv, led, LEDOUT_ON);
> break;
> default:
> @@ -209,7 +210,7 @@ tlc591xx_probe(struct i2c_client *client,
> led->priv = priv;
> led->led_no = reg;
> led->ldev.brightness_set_blocking = tlc591xx_brightness_set;
> - led->ldev.max_brightness = LED_FULL;
> + led->ldev.max_brightness = TLC591XX_MAX_BRIGHTNESS;
> err = devm_led_classdev_register_ext(dev, &led->ldev,
> &init_data);
> if (err < 0) {
>

Added tag:

Fixes: e370d010a5fe ("leds: tlc591xx: Driver for the TI 8/16 Channel i2c
LED driver")

and applied to the for-5.5 branch.

It is also a good habit to cc the author of the driver.

Cc Andrew.

--
Best regards,
Jacek Anaszewski