staging: greybus: gpio: remove KERNEL_VERSION checks
authorGreg Kroah-Hartman <gregkh@google.com>
Thu, 8 Sep 2016 13:52:06 +0000 (15:52 +0200)
committerGreg Kroah-Hartman <gregkh@google.com>
Mon, 19 Sep 2016 14:41:45 +0000 (16:41 +0200)
No need to support older kernel versions in the Greybus GPIO driver, so
remove the checks as needed, we can now rely on all of the correct
GPIO core apis being present.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/gpio.c
drivers/staging/greybus/kernel_ver.h

index 294e2f5..ea8234a 100644 (file)
@@ -404,11 +404,7 @@ static int gb_gpio_request_handler(struct gb_operation *op)
        }
 
        local_irq_disable();
-#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 3, 0)
-       generic_handle_irq_desc(irq, desc);
-#else
        generic_handle_irq_desc(desc);
-#endif
        local_irq_enable();
 
        return 0;
@@ -684,11 +680,7 @@ static int gb_gpio_probe(struct gbphy_device *gbphy_dev,
        gpio = &ggc->chip;
 
        gpio->label = "greybus_gpio";
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 5, 0)
        gpio->parent = &gbphy_dev->dev;
-#else
-       gpio->dev = &gbphy_dev->dev;
-#endif
        gpio->owner = THIS_MODULE;
 
        gpio->request = gb_gpio_request;
@@ -750,7 +742,7 @@ static void gb_gpio_remove(struct gbphy_device *gbphy_dev)
                gbphy_runtime_get_noresume(gbphy_dev);
 
        gb_connection_disable_rx(connection);
-       gb_gpiochip_remove(&ggc->chip);
+       gpiochip_remove(&ggc->chip);
        gb_gpio_irqchip_remove(ggc);
        gb_connection_disable(connection);
        gb_connection_destroy(connection);
index eda9485..0e129ff 100644 (file)
 #define CORE_OWNS_PSY_STRUCT
 #endif
 
-/*
- * The GPIO api sucks rocks in places, like removal, so work around their
- * explicit requirements of catching the return value for kernels older than
- * 3.17, which they explicitly changed in the 3.17 kernel.  Consistency is
- * overrated.
- */
-#include <linux/gpio.h>
-
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 17, 0)
-static inline void gb_gpiochip_remove(struct gpio_chip *chip)
-{
-       gpiochip_remove(chip);
-}
-#else
-static inline void gb_gpiochip_remove(struct gpio_chip *chip)
-{
-       int ret;
-
-       ret = gpiochip_remove(chip);
-}
-#endif
-
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 15, 0)
 #define MMC_HS400_SUPPORTED
 #define MMC_DDR52_DEFINED