Re: [PATCH v4 2/2] leds: bd2606mvv: Driver for the Rohm 6 Channel i2c LED driver

From: Pavel Machek
Date: Fri Apr 14 2023 - 08:19:51 EST


Hi!

> The device provides 6 channels which can be individually
> turned off and on but groups of two channels share a common brightness
> register.

Yeah, well.. Turn it into 3-channel controller with brightness or
6-channel on/off one... You can't really share brightness.

> +++ b/drivers/leds/Kconfig
> @@ -551,6 +551,17 @@ config LEDS_REGULATOR
> help
> This option enables support for regulator driven LEDs.
>
> +config LEDS_BD2606MVV
> + tristate "LED driver for BD2606MVV"
> + depends on LEDS_CLASS
> + depends on I2C
> + select REGMAP_I2C
> + help
> + This option enables support for BD2606MVV LED driver chips
> + accessed via the I2C bus. It supports setting brightness, with
> + the limitiation that there are groups of two channels sharing
> + a brightness setting, but not the on/off setting.
> +

This driver can be used as a module...


> +static int
> +bd2606mvv_brightness_set(struct led_classdev *led_cdev,
> + enum led_brightness brightness)
> +{
> + struct bd2606mvv_led *led = ldev_to_led(led_cdev);
> + struct bd2606mvv_priv *priv = led->priv;
> + int err;
> +
> + if (brightness == 0)
> + return regmap_update_bits(priv->regmap,
> + BD2606_REG_PWRCNT,
> + 1 << led->led_no,
> + 0);
> +
> + /* shared brightness register */
> + err = regmap_write(priv->regmap, led->led_no / 2,
> + brightness);
> + if (err)
> + return err;

Yeah. No.

Best regards,
Pavel
--
People of Russia, stop Putin before his war on Ukraine escalates.

Attachment: signature.asc
Description: PGP signature