diff options
Diffstat (limited to 'drivers/gpio/gpio-mm-lantiq.c')
-rw-r--r-- | drivers/gpio/gpio-mm-lantiq.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/gpio/gpio-mm-lantiq.c b/drivers/gpio/gpio-mm-lantiq.c index f67ef2283d64..54e5d8257d34 100644 --- a/drivers/gpio/gpio-mm-lantiq.c +++ b/drivers/gpio/gpio-mm-lantiq.c @@ -61,9 +61,7 @@ static void ltq_mm_apply(struct ltq_mm *chip) */ static void ltq_mm_set(struct gpio_chip *gc, unsigned offset, int value) { - struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); - struct ltq_mm *chip = - container_of(mm_gc, struct ltq_mm, mmchip); + struct ltq_mm *chip = gpiochip_get_data(gc); if (value) chip->shadow |= (1 << offset); @@ -122,7 +120,7 @@ static int ltq_mm_probe(struct platform_device *pdev) if (!of_property_read_u32(pdev->dev.of_node, "lantiq,shadow", &shadow)) chip->shadow = shadow; - return of_mm_gpiochip_add(pdev->dev.of_node, &chip->mmchip); + return of_mm_gpiochip_add_data(pdev->dev.of_node, &chip->mmchip, chip); } static int ltq_mm_remove(struct platform_device *pdev) |