}
 EXPORT_SYMBOL_GPL(gpio_to_desc);
 
-/**
- * Convert a GPIO name to its descriptor
- */
-struct gpio_desc *gpio_name_to_desc(const char * const name)
-{
-       struct gpio_chip *chip;
-       unsigned long flags;
-
-       spin_lock_irqsave(&gpio_lock, flags);
-
-       list_for_each_entry(chip, &gpio_chips, list) {
-               int i;
-
-               for (i = 0; i != chip->ngpio; ++i) {
-                       struct gpio_desc *gpio = &chip->desc[i];
-
-                       if (!gpio->name)
-                               continue;
-
-                       if (!strcmp(gpio->name, name)) {
-                               spin_unlock_irqrestore(&gpio_lock, flags);
-                               return gpio;
-                       }
-               }
-       }
-
-       spin_unlock_irqrestore(&gpio_lock, flags);
-
-       return NULL;
-}
-EXPORT_SYMBOL_GPL(gpio_name_to_desc);
-
 /**
  * Get the GPIO descriptor corresponding to the given hw number for this chip.
  */
        return err;
 }
 
+/**
+ * Convert a GPIO name to its descriptor
+ */
+static struct gpio_desc *gpio_name_to_desc(const char * const name)
+{
+       struct gpio_chip *chip;
+       unsigned long flags;
+
+       spin_lock_irqsave(&gpio_lock, flags);
+
+       list_for_each_entry(chip, &gpio_chips, list) {
+               int i;
+
+               for (i = 0; i != chip->ngpio; ++i) {
+                       struct gpio_desc *gpio = &chip->desc[i];
+
+                       if (!gpio->name)
+                               continue;
+
+                       if (!strcmp(gpio->name, name)) {
+                               spin_unlock_irqrestore(&gpio_lock, flags);
+                               return gpio;
+                       }
+               }
+       }
+
+       spin_unlock_irqrestore(&gpio_lock, flags);
+
+       return NULL;
+}
+
 /*
  * Takes the names from gc->names and checks if they are all unique. If they
  * are, they are assigned to their gpio descriptors.
                struct gpio_desc *gpio;
 
                gpio = gpio_name_to_desc(gc->names[i]);
-               if (gpio) {
-                       dev_err(gc->dev, "Detected name collision for GPIO name '%s'\n",
-                               gc->names[i]);
-                       return -EEXIST;
-               }
+               if (gpio)
+                       dev_warn(gc->dev, "Detected name collision for "
+                                "GPIO name '%s'\n",
+                                gc->names[i]);
        }
 
        /* Then add all names to the GPIO descriptors */
 
 /* Convert between the old gpio_ and new gpiod_ interfaces */
 struct gpio_desc *gpio_to_desc(unsigned gpio);
 int desc_to_gpio(const struct gpio_desc *desc);
-struct gpio_desc *gpio_name_to_desc(const char *name);
 
 /* Child properties interface */
 struct fwnode_handle;
        return ERR_PTR(-EINVAL);
 }
 
-static inline struct gpio_desc *gpio_name_to_desc(const char *name)
-{
-       return ERR_PTR(-EINVAL);
-}
-
 static inline int desc_to_gpio(const struct gpio_desc *desc)
 {
        /* GPIO can never have been requested */