On Fri, 2012-10-19 at 21:47 +0400, Roman A. aka BasicXP wrote:
> Confirmed.
> 
> 19.10.2012 21:22, Nuno Gonçalves ?????:
> > LED timer trigger is disabled if you overwrite delay_on with the
> > current value.

Also on lantiq platform. Seen to break for both delay_on and delay_off
same value write.

Possibly here where the timer is deleted:


void led_blink_set(struct led_classdev *led_cdev,
                   unsigned long *delay_on,
                   unsigned long *delay_off)
{
        del_timer_sync(&led_cdev->blink_timer);


and may not be re-instated with early exit from:


static void led_set_software_blink(struct led_classdev *led_cdev,
                                   unsigned long delay_on,
                                   unsigned long delay_off)
{
        int current_brightness;

        current_brightness = led_get_brightness(led_cdev);
        if (current_brightness)
                led_cdev->blink_brightness = current_brightness;
        if (!led_cdev->blink_brightness)
                led_cdev->blink_brightness = led_cdev->max_brightness;

        if (led_get_trigger_data(led_cdev) &&
            delay_on == led_cdev->blink_delay_on &&
            delay_off == led_cdev->blink_delay_off)
                return;




Conor



_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to