gpiolib: Make use of enum gpio_lookup_flags consistent
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 10 Apr 2019 15:39:16 +0000 (18:39 +0300)
committerLinus Walleij <linus.walleij@linaro.org>
Tue, 23 Apr 2019 08:55:07 +0000 (10:55 +0200)
The library uses enum gpio_lookup_flags to define the possible
characteristics of GPIO pin. Since enumerator listed only individual
bits the common use of it is in a form of a bitmask of
gpio_lookup_flags GPIO_* values. The more correct type for this is
unsigned long.

Due to above convert all users to use unsigned long instead of
enum gpio_lookup_flags except enumerator definition.

While here, make field and parameter descriptions consistent as well.

Suggested-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpiolib-acpi.c
drivers/gpio/gpiolib-of.c
drivers/gpio/gpiolib.c
drivers/gpio/gpiolib.h
include/linux/gpio/machine.h

index e9ddf66f2d14e9631b346a4193a0e8dce723e96c..962bdd89cd8f7040ec4ed27759c160eaa84f0a8d 100644 (file)
@@ -696,7 +696,7 @@ struct gpio_desc *acpi_find_gpio(struct device *dev,
                                 const char *con_id,
                                 unsigned int idx,
                                 enum gpiod_flags *dflags,
-                                enum gpio_lookup_flags *lookupflags)
+                                unsigned long *lookupflags)
 {
        struct acpi_device *adev = ACPI_COMPANION(dev);
        struct acpi_gpio_info info;
@@ -995,9 +995,12 @@ static void acpi_gpiochip_free_regions(struct acpi_gpio_chip *achip)
        }
 }
 
-static struct gpio_desc *acpi_gpiochip_parse_own_gpio(
-       struct acpi_gpio_chip *achip, struct fwnode_handle *fwnode,
-       const char **name, unsigned int *lflags, unsigned int *dflags)
+static struct gpio_desc *
+acpi_gpiochip_parse_own_gpio(struct acpi_gpio_chip *achip,
+                            struct fwnode_handle *fwnode,
+                            const char **name,
+                            unsigned long *lflags,
+                            unsigned int *dflags)
 {
        struct gpio_chip *chip = achip->chip;
        struct gpio_desc *desc;
@@ -1040,7 +1043,8 @@ static void acpi_gpiochip_scan_gpios(struct acpi_gpio_chip *achip)
        struct fwnode_handle *fwnode;
 
        device_for_each_child_node(chip->parent, fwnode) {
-               unsigned int lflags, dflags;
+               unsigned long lflags;
+               unsigned int dflags;
                struct gpio_desc *desc;
                const char *name;
                int ret;
index 3a6bb53d89dfed32723d83ab768254b01752cd30..c5547df4f6cdb874e01f53a95b8d33a519301da8 100644 (file)
@@ -287,8 +287,7 @@ static struct gpio_desc *of_find_regulator_gpio(struct device *dev, const char *
 }
 
 struct gpio_desc *of_find_gpio(struct device *dev, const char *con_id,
-                              unsigned int idx,
-                              enum gpio_lookup_flags *flags)
+                              unsigned int idx, unsigned long *flags)
 {
        char prop_name[32]; /* 32 is max size of property name */
        enum of_gpio_flags of_flags;
@@ -361,8 +360,8 @@ struct gpio_desc *of_find_gpio(struct device *dev, const char *con_id,
  * @chip:      GPIO chip whose hog is parsed
  * @idx:       Index of the GPIO to parse
  * @name:      GPIO line name
- * @lflags:    gpio_lookup_flags - returned from of_find_gpio() or
- *             of_parse_own_gpio()
+ * @lflags:    bitmask of gpio_lookup_flags GPIO_* values - returned from
+ *             of_find_gpio() or of_parse_own_gpio()
  * @dflags:    gpiod_flags - optional GPIO initialization flags
  *
  * Returns GPIO descriptor to use with Linux GPIO API, or one of the errno
@@ -371,7 +370,7 @@ struct gpio_desc *of_find_gpio(struct device *dev, const char *con_id,
 static struct gpio_desc *of_parse_own_gpio(struct device_node *np,
                                           struct gpio_chip *chip,
                                           unsigned int idx, const char **name,
-                                          enum gpio_lookup_flags *lflags,
+                                          unsigned long *lflags,
                                           enum gpiod_flags *dflags)
 {
        struct device_node *chip_np;
@@ -444,7 +443,7 @@ static int of_gpiochip_scan_gpios(struct gpio_chip *chip)
        struct gpio_desc *desc = NULL;
        struct device_node *np;
        const char *name;
-       enum gpio_lookup_flags lflags;
+       unsigned long lflags;
        enum gpiod_flags dflags;
        unsigned int i;
        int ret;
index 982845e8212cc4e45bf849d9c2c01023d5240a81..e9909c07517b2de64e4705247cd34fb71245cd38 100644 (file)
@@ -3923,8 +3923,7 @@ found:
 }
 
 static struct gpio_desc *gpiod_find(struct device *dev, const char *con_id,
-                                   unsigned int idx,
-                                   enum gpio_lookup_flags *flags)
+                                   unsigned int idx, unsigned long *flags)
 {
        struct gpio_desc *desc = ERR_PTR(-ENOENT);
        struct gpiod_lookup_table *table;
@@ -4080,8 +4079,8 @@ EXPORT_SYMBOL_GPL(gpiod_get_optional);
  * gpiod_configure_flags - helper function to configure a given GPIO
  * @desc:      gpio whose value will be assigned
  * @con_id:    function within the GPIO consumer
- * @lflags:    gpio_lookup_flags - returned from of_find_gpio() or
- *             of_get_gpio_hog()
+ * @lflags:    bitmask of gpio_lookup_flags GPIO_* values - returned from
+ *             of_find_gpio() or of_get_gpio_hog()
  * @dflags:    gpiod_flags - optional GPIO initialization flags
  *
  * Return 0 on success, -ENOENT if no GPIO has been assigned to the
@@ -4163,9 +4162,9 @@ struct gpio_desc *__must_check gpiod_get_index(struct device *dev,
                                               unsigned int idx,
                                               enum gpiod_flags flags)
 {
+       unsigned long lookupflags = 0;
        struct gpio_desc *desc = NULL;
        int status;
-       enum gpio_lookup_flags lookupflags = 0;
        /* Maybe we have a device name, maybe not */
        const char *devname = dev ? dev_name(dev) : "?";
 
@@ -4403,8 +4402,8 @@ EXPORT_SYMBOL_GPL(gpiod_get_index_optional);
  * gpiod_hog - Hog the specified GPIO desc given the provided flags
  * @desc:      gpio whose value will be assigned
  * @name:      gpio line name
- * @lflags:    gpio_lookup_flags - returned from of_find_gpio() or
- *             of_get_gpio_hog()
+ * @lflags:    bitmask of gpio_lookup_flags GPIO_* values - returned from
+ *             of_find_gpio() or of_get_gpio_hog()
  * @dflags:    gpiod_flags - optional GPIO initialization flags
  */
 int gpiod_hog(struct gpio_desc *desc, const char *name,
index 078ab17b96bf4e84d52d2e159b4f6ee5b5adad77..5dbfce616ae1fef350e47540834a8c11dda82d79 100644 (file)
@@ -17,7 +17,6 @@
 #include <linux/cdev.h>
 
 enum of_gpio_flags;
-enum gpio_lookup_flags;
 struct acpi_device;
 
 /**
@@ -95,7 +94,7 @@ static __maybe_unused const char * const gpio_suffixes[] = { "gpios", "gpio" };
 struct gpio_desc *of_find_gpio(struct device *dev,
                               const char *con_id,
                               unsigned int idx,
-                              enum gpio_lookup_flags *flags);
+                              unsigned long *lookupflags);
 struct gpio_desc *of_get_named_gpiod_flags(struct device_node *np,
                   const char *list_name, int index, enum of_gpio_flags *flags);
 int of_gpiochip_add(struct gpio_chip *gc);
@@ -104,7 +103,7 @@ void of_gpiochip_remove(struct gpio_chip *gc);
 static inline struct gpio_desc *of_find_gpio(struct device *dev,
                                             const char *con_id,
                                             unsigned int idx,
-                                            enum gpio_lookup_flags *flags)
+                                            unsigned long *lookupflags)
 {
        return ERR_PTR(-ENOENT);
 }
@@ -131,7 +130,7 @@ struct gpio_desc *acpi_find_gpio(struct device *dev,
                                 const char *con_id,
                                 unsigned int idx,
                                 enum gpiod_flags *dflags,
-                                enum gpio_lookup_flags *lookupflags);
+                                unsigned long *lookupflags);
 struct gpio_desc *acpi_node_get_gpiod(struct fwnode_handle *fwnode,
                                      const char *propname, int index,
                                      struct acpi_gpio_info *info);
@@ -158,7 +157,7 @@ acpi_gpio_update_gpiod_flags(enum gpiod_flags *flags, struct acpi_gpio_info *inf
 static inline struct gpio_desc *
 acpi_find_gpio(struct device *dev, const char *con_id,
               unsigned int idx, enum gpiod_flags *dflags,
-              enum gpio_lookup_flags *lookupflags)
+              unsigned long *lookupflags)
 {
        return ERR_PTR(-ENOENT);
 }
index a0a981676490da4775dd3b95d83cbbbc49ca6e4c..dad3921585509cebdcb1ef2f118d62054d5ee556 100644 (file)
@@ -22,7 +22,7 @@ enum gpio_lookup_flags {
  * @chip_hwnum: hardware number (i.e. relative to the chip) of the GPIO
  * @con_id: name of the GPIO from the device's point of view
  * @idx: index of the GPIO in case several GPIOs share the same name
- * @flags: mask of GPIO_* values
+ * @flags: bitmask of gpio_lookup_flags GPIO_* values
  *
  * gpiod_lookup is a lookup table for associating GPIOs to specific devices and
  * functions using platform data.
@@ -32,7 +32,7 @@ struct gpiod_lookup {
        u16 chip_hwnum;
        const char *con_id;
        unsigned int idx;
-       enum gpio_lookup_flags flags;
+       unsigned long flags;
 };
 
 struct gpiod_lookup_table {
@@ -46,7 +46,7 @@ struct gpiod_lookup_table {
  * @chip_label: name of the chip the GPIO belongs to
  * @chip_hwnum: hardware number (i.e. relative to the chip) of the GPIO
  * @line_name: consumer name for the hogged line
- * @lflags: mask of GPIO lookup flags
+ * @lflags: bitmask of gpio_lookup_flags GPIO_* values
  * @dflags: GPIO flags used to specify the direction and value
  */
 struct gpiod_hog {
@@ -54,7 +54,7 @@ struct gpiod_hog {
        const char *chip_label;
        u16 chip_hwnum;
        const char *line_name;
-       enum gpio_lookup_flags lflags;
+       unsigned long lflags;
        int dflags;
 };