Merge remote-tracking branch 'wireless-next/master' into mac80211-next
[firefly-linux-kernel-4.4.55.git] / drivers / gpio / gpio-cs5535.c
index 92ec58fa92369c8a7717719219a9b7bdfa600826..668127fe90ef7dc63e5b4d9b7c8023af97e76069 100644 (file)
@@ -201,7 +201,8 @@ EXPORT_SYMBOL_GPL(cs5535_gpio_setup_event);
 
 static int chip_gpio_request(struct gpio_chip *c, unsigned offset)
 {
-       struct cs5535_gpio_chip *chip = (struct cs5535_gpio_chip *) c;
+       struct cs5535_gpio_chip *chip =
+               container_of(c, struct cs5535_gpio_chip, chip);
        unsigned long flags;
 
        spin_lock_irqsave(&chip->lock, flags);
@@ -241,7 +242,8 @@ static void chip_gpio_set(struct gpio_chip *chip, unsigned offset, int val)
 
 static int chip_direction_input(struct gpio_chip *c, unsigned offset)
 {
-       struct cs5535_gpio_chip *chip = (struct cs5535_gpio_chip *) c;
+       struct cs5535_gpio_chip *chip =
+               container_of(c, struct cs5535_gpio_chip, chip);
        unsigned long flags;
 
        spin_lock_irqsave(&chip->lock, flags);
@@ -254,7 +256,8 @@ static int chip_direction_input(struct gpio_chip *c, unsigned offset)
 
 static int chip_direction_output(struct gpio_chip *c, unsigned offset, int val)
 {
-       struct cs5535_gpio_chip *chip = (struct cs5535_gpio_chip *) c;
+       struct cs5535_gpio_chip *chip =
+               container_of(c, struct cs5535_gpio_chip, chip);
        unsigned long flags;
 
        spin_lock_irqsave(&chip->lock, flags);