Bump version to v1.5 and start work on adding 4.19 kernel suppot
[librecmc/librecmc.git] / target / linux / generic / patches-4.4 / 085-0002-leds-gpio-introduce-gpio_blink_set_t.patch
1 From 68620e594c250ba8c43a78e77f5296cb9952582e Mon Sep 17 00:00:00 2001
2 From: Heiner Kallweit <hkallweit1@gmail.com>
3 Date: Wed, 14 Sep 2016 20:54:12 +0200
4 Subject: [PATCH] leds: gpio: introduce gpio_blink_set_t
5
6 Introduce a typedef gpio_blink_set_t to improve readability of the code.
7
8 Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
9 Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
10 ---
11  drivers/leds/leds-gpio.c | 6 ++----
12  include/linux/leds.h     | 9 ++++++---
13  2 files changed, 8 insertions(+), 7 deletions(-)
14
15 --- a/drivers/leds/leds-gpio.c
16 +++ b/drivers/leds/leds-gpio.c
17 @@ -29,8 +29,7 @@ struct gpio_led_data {
18         u8 new_level;
19         u8 can_sleep;
20         u8 blinking;
21 -       int (*platform_gpio_blink_set)(struct gpio_desc *desc, int state,
22 -                       unsigned long *delay_on, unsigned long *delay_off);
23 +       gpio_blink_set_t platform_gpio_blink_set;
24  };
25  
26  static void gpio_led_work(struct work_struct *work)
27 @@ -88,8 +87,7 @@ static int gpio_blink_set(struct led_cla
28  
29  static int create_gpio_led(const struct gpio_led *template,
30         struct gpio_led_data *led_dat, struct device *parent,
31 -       int (*blink_set)(struct gpio_desc *, int, unsigned long *,
32 -                        unsigned long *))
33 +       gpio_blink_set_t blink_set)
34  {
35         int ret, state;
36  
37 --- a/include/linux/leds.h
38 +++ b/include/linux/leds.h
39 @@ -330,6 +330,11 @@ struct led_platform_data {
40         struct led_info *leds;
41  };
42  
43 +struct gpio_desc;
44 +typedef int (*gpio_blink_set_t)(struct gpio_desc *desc, int state,
45 +                               unsigned long *delay_on,
46 +                               unsigned long *delay_off);
47 +
48  /* For the leds-gpio driver */
49  struct gpio_led {
50         const char *name;
51 @@ -352,9 +357,7 @@ struct gpio_led_platform_data {
52  #define GPIO_LED_NO_BLINK_LOW  0       /* No blink GPIO state low */
53  #define GPIO_LED_NO_BLINK_HIGH 1       /* No blink GPIO state high */
54  #define GPIO_LED_BLINK         2       /* Please, blink */
55 -       int             (*gpio_blink_set)(struct gpio_desc *desc, int state,
56 -                                       unsigned long *delay_on,
57 -                                       unsigned long *delay_off);
58 +       gpio_blink_set_t        gpio_blink_set;
59  };
60  
61  struct platform_device *gpio_led_register_device(