Re: [PATCH 2/3] leds: leds-mc13783: Remove unneeded mc13xxx_{un}lock

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Dec 6, 2013 at 10:22 PM, Alexander Shiyan <shc_work@xxxxxxx> wrote:
> LED registers are used only in this driver, so no additional
> locking is needed. Read-Modify-Write cycle in workqueue is already
> protected by regmap.
>

Good, I will merge this.

Thanks,
-Bryan

> Signed-off-by: Alexander Shiyan <shc_work@xxxxxxx>
> ---
>  drivers/leds/leds-mc13783.c | 13 +------------
>  1 file changed, 1 insertion(+), 12 deletions(-)
>
> diff --git a/drivers/leds/leds-mc13783.c b/drivers/leds/leds-mc13783.c
> index ec704f2..ca87a1b 100644
> --- a/drivers/leds/leds-mc13783.c
> +++ b/drivers/leds/leds-mc13783.c
> @@ -117,9 +117,7 @@ static void mc13xxx_led_work(struct work_struct *work)
>                 BUG();
>         }
>
> -       mc13xxx_lock(led->master);
>         mc13xxx_reg_rmw(led->master, reg, mask << shift, value << shift);
> -       mc13xxx_unlock(led->master);
>  }
>
>  static void mc13xxx_led_set(struct led_classdev *led_cdev,
> @@ -164,19 +162,12 @@ static int __init mc13xxx_led_probe(struct platform_device *pdev)
>         leds->num_leds = num_leds;
>         platform_set_drvdata(pdev, leds);
>
> -       mc13xxx_lock(mcdev);
>         for (i = 0; i < devtype->num_regs; i++) {
>                 reg = pdata->led_control[i];
>                 WARN_ON(reg >= (1 << 24));
>                 ret = mc13xxx_reg_write(mcdev, MC13XXX_REG_LED_CONTROL(i), reg);
>                 if (ret)
> -                       break;
> -       }
> -       mc13xxx_unlock(mcdev);
> -
> -       if (ret) {
> -               dev_err(&pdev->dev, "Unable to init LED driver\n");
> -               return ret;
> +                       return ret;
>         }
>
>         for (i = 0; i < num_leds; i++) {
> @@ -237,10 +228,8 @@ static int mc13xxx_led_remove(struct platform_device *pdev)
>                 cancel_work_sync(&leds->led[i].work);
>         }
>
> -       mc13xxx_lock(mcdev);
>         for (i = 0; i < leds->devtype->num_regs; i++)
>                 mc13xxx_reg_write(mcdev, MC13XXX_REG_LED_CONTROL(i), 0);
> -       mc13xxx_unlock(mcdev);
>
>         return 0;
>  }
> --
> 1.8.3.2
>
--
To unsubscribe from this list: send the line "unsubscribe linux-leds" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux