lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Fri, 27 Nov 2009 08:44:17 +0100
From:	Luotao Fu <l.fu@...gutronix.de>
To:	Lars-Peter Clausen <lars@...afoo.de>
Cc:	rpurdie@...ys.net, l.fu@...gutronix.de,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] leds: leds-pwm: Set led_classdev max_brightness

Hi Lars-Peter,

On Fri, Nov 27, 2009 at 06:17:38AM +0100, Lars-Peter Clausen wrote:
> Currently the driver leds-pwm doesn't set max_brightness for the led device
> although it's platform data proides a maximum brightness. Instead it stores its
> own private driver struct. The max_brightness defaults to 255 for led device if
> it has not been set.
> As a result any leds-pwm device with a different maximum brightness will show
> incorrect behavior, as it is posible to either set a longer then period duty
> time or not be able to switch the led to full brightness.
> 
> Signed-off-by: Lars-Peter Clausen <lars@...afoo.de>

Thanks for the patch, however Pls note that the pwm framework has seen
some major changes by Bill Gatliff, including this driver, see
http://lwn.net/Articles/357837/
The patches are pending, but it's quite possible that this driver will
become obsolete soon.
for the patch it self:

Acked-by: Luotao Fu <l.fu@...gutronix.de>

> ---
>  drivers/leds/leds-pwm.c |    5 ++---
>  1 files changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/leds/leds-pwm.c b/drivers/leds/leds-pwm.c
> index cdfdc87..88b1dd0 100644
> --- a/drivers/leds/leds-pwm.c
> +++ b/drivers/leds/leds-pwm.c
> @@ -27,7 +27,6 @@ struct led_pwm_data {
>  	struct pwm_device	*pwm;
>  	unsigned int 		active_low;
>  	unsigned int		period;
> -	unsigned int		max_brightness;
>  };
>  
>  static void led_pwm_set(struct led_classdev *led_cdev,
> @@ -35,7 +34,7 @@ static void led_pwm_set(struct led_classdev *led_cdev,
>  {
>  	struct led_pwm_data *led_dat =
>  		container_of(led_cdev, struct led_pwm_data, cdev);
> -	unsigned int max = led_dat->max_brightness;
> +	unsigned int max = led_dat->cdev.max_brightness;
>  	unsigned int period =  led_dat->period;
>  
>  	if (brightness == 0) {
> @@ -77,10 +76,10 @@ static int led_pwm_probe(struct platform_device *pdev)
>  		led_dat->cdev.name = cur_led->name;
>  		led_dat->cdev.default_trigger = cur_led->default_trigger;
>  		led_dat->active_low = cur_led->active_low;
> -		led_dat->max_brightness = cur_led->max_brightness;
>  		led_dat->period = cur_led->pwm_period_ns;
>  		led_dat->cdev.brightness_set = led_pwm_set;
>  		led_dat->cdev.brightness = LED_OFF;
> +		led_dat->cdev.max_brightness = cur_led->max_brightness;
>  		led_dat->cdev.flags |= LED_CORE_SUSPENDRESUME;
>  
>  		ret = led_classdev_register(&pdev->dev, &led_dat->cdev);
> -- 
> 1.5.6.5
> 

cheers
Luotao Fu
-- 
Pengutronix e.K.                           | Dipl.-Ing. Luotao Fu        |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

Download attachment "signature.asc" of type "application/pgp-signature" (198 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ