Merge remote-tracking branches 'spi/fix/atmel', 'spi/fix/doc', 'spi/fix/dw', 'spi...
[firefly-linux-kernel-4.4.55.git] / drivers / gpio / gpio-max730x.c
index 0814584fcdc1e1164850231cf0e951510bee57e6..18ab89e208065911cd9fe4261686579360331095 100644 (file)
@@ -228,21 +228,16 @@ EXPORT_SYMBOL_GPL(__max730x_probe);
 int __max730x_remove(struct device *dev)
 {
        struct max7301 *ts = dev_get_drvdata(dev);
-       int ret;
 
        if (ts == NULL)
                return -ENODEV;
 
        /* Power down the chip and disable IRQ output */
        ts->write(dev, 0x04, 0x00);
-
-       ret = gpiochip_remove(&ts->chip);
-       if (!ret)
-               mutex_destroy(&ts->lock);
-       else
-               dev_err(dev, "Failed to remove GPIO controller: %d\n", ret);
-
-       return ret;
+       gpiochip_remove(&ts->chip);
+       mutex_destroy(&ts->lock);
+       kfree(ts);
+       return 0;
 }
 EXPORT_SYMBOL_GPL(__max730x_remove);