On Mon, 10 Aug 2026 12:45:16 +0200
"H. Nikolaus Schaller" <[email protected]> wrote:

> Hi Daniel,
> 
> > Am 10.08.2026 um 12:35 schrieb Daniel Thompson <[email protected]>:
> > 
> > On Sat, Jul 11, 2026 at 08:02:02AM +0200, H. Nikolaus Schaller wrote:  
> >> Retire the platform specific pandora backlight driver since
> >> it can now be replaced by twl_pm and device tree.
> >> 
> >> Signed-off-by: H. Nikolaus Schaller <[email protected]>  
> > 
> > Yay!
> > 
> > Reviewed-by: Daniel Thompson (RISCstar) <[email protected]>  
> 
> Well, there were some good comments by Sahiko to the prerequisites of this 
> patch,
> because it has one speciality the PWM BL driver does not handle (avoid
> interpretation of PWM signals as W1 protocol).
> 
> I haven't found time to work on this, so we can't remove this yet.
> 
> In the end it may either remain a pandora_bl driver (converted to DT)
> or become a patch for something else.
> 
But then it is a TPS61161 on top of PWM, not a pandora driver.
And then there might be just a quirk for that chip in the pwm_bl using
triggered by a compatible. I guess the quirk is this:


if (priv->old_state == PANDORABL_WAS_OFF) {
-               /*
-                * set PWM duty cycle to max. TPS61161 seems to use this
-                * to calibrate it's PWM sensitivity when it starts.
-                */
-               twl_i2c_write_u8(TWL_MODULE_PWM, MAX_VALUE, TWL_PWM0_OFF);
-
-               /* first enable clock, then PWM0 out */
-               twl_i2c_read_u8(TWL4030_MODULE_INTBR, &r, TWL_INTBR_GPBR1);
-               r &= ~PWM0_ENABLE;
-               r |= PWM0_CLK_ENABLE;
-               twl_i2c_write_u8(TWL4030_MODULE_INTBR, r, TWL_INTBR_GPBR1);
-               r |= PWM0_ENABLE;
-               twl_i2c_write_u8(TWL4030_MODULE_INTBR, r, TWL_INTBR_GPBR1);
-
-               /*
-                * TI made it very easy to enable digital control, so easy that
-                * it often triggers unintentionally and disabes PWM control,
-                * so wait until 1 wire mode detection window ends.
-                */
-               usleep_range(2000, 10000);
-       }

Regards,
Andreas

Reply via email to