[U-Boot] [PATCH] video: backlight: fix pwm invertation

Stefan Mavrodiev stefan at olimex.com
Tue Jul 2 07:40:50 UTC 2019


Hi,

On 6/27/19 9:56 PM, marvin24 at posteo.de wrote:
> Am Freitag, 21. Juni 2019, 22:01:35 CEST schrieb Marc Dietrich:
>> Fixes: 57e7775413 ("video: backlight: Parse PWM polarity cell")
>>
>> set_pwm will always fail if pwm_set_invert is not implemented, leaving the
>> backlight dark. Fix this by calling pwm_set_invert only if pwm is inverted.
I'm not sure if this is true. pwm_set_invert() checks for .set_invert.
Which pwm driver you're using?


>>
>> Signed-off-by: Marc Dietrich <marvin24 at gmx.de>
> ping?
>
>
>> ---
>>   drivers/video/pwm_backlight.c | 7 ++++---
>>   1 file changed, 4 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/video/pwm_backlight.c b/drivers/video/pwm_backlight.c
>> index a587977c22..26bcbeb42b 100644
>> --- a/drivers/video/pwm_backlight.c
>> +++ b/drivers/video/pwm_backlight.c
>> @@ -61,12 +61,13 @@ static int set_pwm(struct pwm_backlight_priv *priv)
>>
>>   	duty_cycle = priv->period_ns * (priv->cur_level - priv->min_level) /
>>   		(priv->max_level - priv->min_level + 1);
>> +
>>   	ret = pwm_set_config(priv->pwm, priv->channel, priv->period_ns,
>>   			     duty_cycle);
>> -	if (ret)
>> -		return log_ret(ret);
>>
>> -	ret = pwm_set_invert(priv->pwm, priv->channel, priv->polarity);
>> +	if (!ret && priv->polarity)
>> +		ret = pwm_set_invert(priv->pwm, priv->channel, priv->polarity);
This shouldn't be a problem. Rather the driver doesn't handle polarity 
correctly.
>> +
>>   	return log_ret(ret);
>>   }
>>
>> --
>> 2.17.1

P.S.

You should cc to all maintainers. You can use ./scripts/get_maintainer.pl.


Best regards,
Stefan Mavrodiev



More information about the U-Boot mailing list