diff mbox series

[v1,1/1] backlight: mp3309c: fix leds flickering in pwm mode

Message ID 20240417153105.1794134-2-f.suligoi@asem.it (mailing list archive)
State Handled Elsewhere
Headers show
Series backlight: mp3309c: fix leds flickering in pwm mode | expand

Commit Message

Flavio Suligoi April 17, 2024, 3:31 p.m. UTC
The mp3309 has two configuration registers, named according to their
address (0x00 and 0x01).
In the second register (0x01), the bit DIMS (Dimming Mode Select) must
be always 0 (zero), in both analog (via i2c commands) and pwm dimming
mode.

In the initial driver version, the DIMS bit was set in pwm mode and
reset in analog mode.
But if the DIMS bit is set in pwm dimming mode and other devices are
connected on the same i2c bus, every i2c commands on the bus generates a
flickering on the LEDs powered by the mp3309c.

This change concerns the chip initialization and does not impact any
existing device-tree configuration.

Signed-off-by: Flavio Suligoi <f.suligoi@asem.it>
---
 drivers/video/backlight/mp3309c.c | 5 -----
 1 file changed, 5 deletions(-)

Comments

Daniel Thompson April 18, 2024, 8:41 a.m. UTC | #1
On Wed, Apr 17, 2024 at 05:31:05PM +0200, Flavio Suligoi wrote:
> The mp3309 has two configuration registers, named according to their
> address (0x00 and 0x01).
> In the second register (0x01), the bit DIMS (Dimming Mode Select) must
> be always 0 (zero), in both analog (via i2c commands) and pwm dimming
> mode.
>
> In the initial driver version, the DIMS bit was set in pwm mode and
> reset in analog mode.
> But if the DIMS bit is set in pwm dimming mode and other devices are
> connected on the same i2c bus, every i2c commands on the bus generates a
> flickering on the LEDs powered by the mp3309c.
>
> This change concerns the chip initialization and does not impact any
> existing device-tree configuration.
>
> Signed-off-by: Flavio Suligoi <f.suligoi@asem.it>

Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>


Daniel.
Lee Jones May 2, 2024, 4:48 p.m. UTC | #2
On Wed, 17 Apr 2024 17:31:05 +0200, Flavio Suligoi wrote:
> The mp3309 has two configuration registers, named according to their
> address (0x00 and 0x01).
> In the second register (0x01), the bit DIMS (Dimming Mode Select) must
> be always 0 (zero), in both analog (via i2c commands) and pwm dimming
> mode.
> 
> In the initial driver version, the DIMS bit was set in pwm mode and
> reset in analog mode.
> But if the DIMS bit is set in pwm dimming mode and other devices are
> connected on the same i2c bus, every i2c commands on the bus generates a
> flickering on the LEDs powered by the mp3309c.
> 
> [...]

Applied, thanks!

[1/1] backlight: mp3309c: fix leds flickering in pwm mode
      commit: ce60cddc2abf61902dfca71d630624db95315124

--
Lee Jones [李琼斯]
Lee Jones May 2, 2024, 4:48 p.m. UTC | #3
On Thu, 02 May 2024, Lee Jones wrote:

> On Wed, 17 Apr 2024 17:31:05 +0200, Flavio Suligoi wrote:
> > The mp3309 has two configuration registers, named according to their
> > address (0x00 and 0x01).
> > In the second register (0x01), the bit DIMS (Dimming Mode Select) must
> > be always 0 (zero), in both analog (via i2c commands) and pwm dimming
> > mode.
> > 
> > In the initial driver version, the DIMS bit was set in pwm mode and
> > reset in analog mode.
> > But if the DIMS bit is set in pwm dimming mode and other devices are
> > connected on the same i2c bus, every i2c commands on the bus generates a
> > flickering on the LEDs powered by the mp3309c.
> > 
> > [...]
> 
> Applied, thanks!
> 
> [1/1] backlight: mp3309c: fix leds flickering in pwm mode
>       commit: ce60cddc2abf61902dfca71d630624db95315124

Applied, but in future it's; I2C, PWM and LED, thanks.
Flavio Suligoi May 3, 2024, 6:47 a.m. UTC | #4
Hi Lee,

...

> Subject: EXTERNAL: Re: (subset) [PATCH v1 1/1] backlight: mp3309c: fix
> leds flickering in pwm mode
> 
> [Use caution with links & attachments]
> 
> 
> 
> On Thu, 02 May 2024, Lee Jones wrote:
> 
> > On Wed, 17 Apr 2024 17:31:05 +0200, Flavio Suligoi wrote:
> > > The mp3309 has two configuration registers, named according to their
> > > address (0x00 and 0x01).
> > > In the second register (0x01), the bit DIMS (Dimming Mode Select)
> > > must be always 0 (zero), in both analog (via i2c commands) and pwm
> > > dimming mode.
> > >
> > > In the initial driver version, the DIMS bit was set in pwm mode and
> > > reset in analog mode.
> > > But if the DIMS bit is set in pwm dimming mode and other devices are
> > > connected on the same i2c bus, every i2c commands on the bus
> > > generates a flickering on the LEDs powered by the mp3309c.
> > >
> > > [...]
> >
> > Applied, thanks!
> >
> > [1/1] backlight: mp3309c: fix leds flickering in pwm mode
> >       commit: ce60cddc2abf61902dfca71d630624db95315124
> 
> Applied, but in future it's; I2C, PWM and LED, thanks.

Sorry for my question, but do you mean that I also have to add the I2C,
PWM and LED mailing lists in my messages related to the mp33309c patches?

> 
> --
> Lee Jones [李琼斯]

Thanks and best regards,
Flavio
Lee Jones May 3, 2024, 7:07 a.m. UTC | #5
On Fri, 03 May 2024, FLAVIO SULIGOI wrote:

> Hi Lee,
> 
> ...
> 
> > Subject: EXTERNAL: Re: (subset) [PATCH v1 1/1] backlight: mp3309c: fix
> > leds flickering in pwm mode
> > 
> > [Use caution with links & attachments]
> > 
> > 
> > 
> > On Thu, 02 May 2024, Lee Jones wrote:
> > 
> > > On Wed, 17 Apr 2024 17:31:05 +0200, Flavio Suligoi wrote:
> > > > The mp3309 has two configuration registers, named according to their
> > > > address (0x00 and 0x01).
> > > > In the second register (0x01), the bit DIMS (Dimming Mode Select)
> > > > must be always 0 (zero), in both analog (via i2c commands) and pwm
> > > > dimming mode.
> > > >
> > > > In the initial driver version, the DIMS bit was set in pwm mode and
> > > > reset in analog mode.
> > > > But if the DIMS bit is set in pwm dimming mode and other devices are
> > > > connected on the same i2c bus, every i2c commands on the bus
> > > > generates a flickering on the LEDs powered by the mp3309c.
> > > >
> > > > [...]
> > >
> > > Applied, thanks!
> > >
> > > [1/1] backlight: mp3309c: fix leds flickering in pwm mode
> > >       commit: ce60cddc2abf61902dfca71d630624db95315124
> > 
> > Applied, but in future it's; I2C, PWM and LED, thanks.
> 
> Sorry for my question, but do you mean that I also have to add the I2C,
> PWM and LED mailing lists in my messages related to the mp33309c patches?

Just use proper capitalisation when you abbreviate the names these
subsystems please.
Flavio Suligoi May 3, 2024, 7:35 a.m. UTC | #6
Hi Lee,

...

> Subject: Re: EXTERNAL: Re: (subset) [PATCH v1 1/1] backlight: mp3309c:
> fix leds flickering in pwm mode
> 
> On Fri, 03 May 2024, FLAVIO SULIGOI wrote:
> 
> > Hi Lee,
> >
> > ...
> >
> > > Subject: EXTERNAL: Re: (subset) [PATCH v1 1/1] backlight: mp3309c:
> > > fix leds flickering in pwm mode
> > >
> > > [Use caution with links & attachments]
> > >
> > >
> > >
> > > On Thu, 02 May 2024, Lee Jones wrote:
> > >
> > > > On Wed, 17 Apr 2024 17:31:05 +0200, Flavio Suligoi wrote:
> > > > > The mp3309 has two configuration registers, named according to
> > > > > their address (0x00 and 0x01).
> > > > > In the second register (0x01), the bit DIMS (Dimming Mode
> > > > > Select) must be always 0 (zero), in both analog (via i2c
> > > > > commands) and pwm dimming mode.
> > > > >
> > > > > In the initial driver version, the DIMS bit was set in pwm mode
> > > > > and reset in analog mode.
> > > > > But if the DIMS bit is set in pwm dimming mode and other devices
> > > > > are connected on the same i2c bus, every i2c commands on the bus
> > > > > generates a flickering on the LEDs powered by the mp3309c.
> > > > >
> > > > > [...]
> > > >
> > > > Applied, thanks!
> > > >
> > > > [1/1] backlight: mp3309c: fix leds flickering in pwm mode
> > > >       commit: ce60cddc2abf61902dfca71d630624db95315124
> > >
> > > Applied, but in future it's; I2C, PWM and LED, thanks.
> >
> > Sorry for my question, but do you mean that I also have to add the
> > I2C, PWM and LED mailing lists in my messages related to the mp33309c
> patches?
> 
> Just use proper capitalisation when you abbreviate the names these
> subsystems please.

Ah, ok, I got it!

> 
> --
> Lee Jones [李琼斯]

Thanks for your explanation,
Flavio
diff mbox series

Patch

diff --git a/drivers/video/backlight/mp3309c.c b/drivers/video/backlight/mp3309c.c
index 016c1296841c..a28036c964af 100644
--- a/drivers/video/backlight/mp3309c.c
+++ b/drivers/video/backlight/mp3309c.c
@@ -97,15 +97,10 @@  static int mp3309c_enable_device(struct mp3309c_chip *chip)
 
 	/*
 	 * I2C register #1 - Set working mode:
-	 *  - set one of the two dimming mode:
-	 *    - PWM dimming using an external PWM dimming signal
-	 *    - analog dimming using I2C commands
 	 *  - enable/disable synchronous mode
 	 *  - set overvoltage protection (OVP)
 	 */
 	reg_val = 0x00;
-	if (chip->pdata->dimming_mode == DIMMING_PWM)
-		reg_val |= REG_I2C_1_DIMS;
 	if (chip->pdata->sync_mode)
 		reg_val |= REG_I2C_1_SYNC;
 	reg_val |= chip->pdata->over_voltage_protection;