On Wed, Dec 09, 2015 at 02:45:10PM +0100, Linus Walleij wrote:
> This makes the driver use the data pointer added to the gpio_chip
> to store a pointer to the state container instead of relying on
> container_of().
> 
> Cc: Michael Hennerich <michael.henner...@analog.com>
> Cc: Dmitry Torokhov <dmitry.torok...@gmail.com>
> Signed-off-by: Linus Walleij <linus.wall...@linaro.org>
> ---
> Dmitry: please ACK this so I can take it through the GPIO tree.

Acked-by: Dmitry Torokhov <dmitry.torok...@gmail.com>

> ---
>  drivers/input/keyboard/adp5589-keys.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/input/keyboard/adp5589-keys.c 
> b/drivers/input/keyboard/adp5589-keys.c
> index 4d446d5085aa..0b72345cf7b6 100644
> --- a/drivers/input/keyboard/adp5589-keys.c
> +++ b/drivers/input/keyboard/adp5589-keys.c
> @@ -387,7 +387,7 @@ static int adp5589_write(struct i2c_client *client, u8 
> reg, u8 val)
>  #ifdef CONFIG_GPIOLIB
>  static int adp5589_gpio_get_value(struct gpio_chip *chip, unsigned off)
>  {
> -     struct adp5589_kpad *kpad = container_of(chip, struct adp5589_kpad, gc);
> +     struct adp5589_kpad *kpad = gpiochip_get_data(chip);
>       unsigned int bank = kpad->var->bank(kpad->gpiomap[off]);
>       unsigned int bit = kpad->var->bit(kpad->gpiomap[off]);
>  
> @@ -399,7 +399,7 @@ static int adp5589_gpio_get_value(struct gpio_chip *chip, 
> unsigned off)
>  static void adp5589_gpio_set_value(struct gpio_chip *chip,
>                                  unsigned off, int val)
>  {
> -     struct adp5589_kpad *kpad = container_of(chip, struct adp5589_kpad, gc);
> +     struct adp5589_kpad *kpad = gpiochip_get_data(chip);
>       unsigned int bank = kpad->var->bank(kpad->gpiomap[off]);
>       unsigned int bit = kpad->var->bit(kpad->gpiomap[off]);
>  
> @@ -418,7 +418,7 @@ static void adp5589_gpio_set_value(struct gpio_chip *chip,
>  
>  static int adp5589_gpio_direction_input(struct gpio_chip *chip, unsigned off)
>  {
> -     struct adp5589_kpad *kpad = container_of(chip, struct adp5589_kpad, gc);
> +     struct adp5589_kpad *kpad = gpiochip_get_data(chip);
>       unsigned int bank = kpad->var->bank(kpad->gpiomap[off]);
>       unsigned int bit = kpad->var->bit(kpad->gpiomap[off]);
>       int ret;
> @@ -438,7 +438,7 @@ static int adp5589_gpio_direction_input(struct gpio_chip 
> *chip, unsigned off)
>  static int adp5589_gpio_direction_output(struct gpio_chip *chip,
>                                        unsigned off, int val)
>  {
> -     struct adp5589_kpad *kpad = container_of(chip, struct adp5589_kpad, gc);
> +     struct adp5589_kpad *kpad = gpiochip_get_data(chip);
>       unsigned int bank = kpad->var->bank(kpad->gpiomap[off]);
>       unsigned int bit = kpad->var->bit(kpad->gpiomap[off]);
>       int ret;
> @@ -525,7 +525,7 @@ static int adp5589_gpio_add(struct adp5589_kpad *kpad)
>  
>       mutex_init(&kpad->gpio_lock);
>  
> -     error = gpiochip_add(&kpad->gc);
> +     error = gpiochip_add_data(&kpad->gc, kpad);
>       if (error) {
>               dev_err(dev, "gpiochip_add failed, err: %d\n", error);
>               return error;
> -- 
> 2.4.3
> 

-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to