device connection: Remove device_connection_add()
authorHeikki Krogerus <heikki.krogerus@linux.intel.com>
Fri, 4 Sep 2020 12:51:21 +0000 (15:51 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 7 Sep 2020 09:14:09 +0000 (11:14 +0200)
All the users of that API have now been converted to use
software fwnodes instead.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20200904125123.83725-3-heikki.krogerus@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/devcon.c
include/linux/device.h

index 51ad546..94ab22a 100644 (file)
@@ -9,9 +9,6 @@
 #include <linux/device.h>
 #include <linux/property.h>
 
-static DEFINE_MUTEX(devcon_lock);
-static LIST_HEAD(devcon_list);
-
 static void *
 fwnode_graph_devcon_match(struct fwnode_handle *fwnode, const char *con_id,
                          void *data, devcon_match_fn_t match)
@@ -99,60 +96,6 @@ EXPORT_SYMBOL_GPL(fwnode_connection_find_match);
 void *device_connection_find_match(struct device *dev, const char *con_id,
                                   void *data, devcon_match_fn_t match)
 {
-       struct fwnode_handle *fwnode = dev_fwnode(dev);
-       const char *devname = dev_name(dev);
-       struct device_connection *con;
-       void *ret = NULL;
-       int ep;
-
-       if (!match)
-               return NULL;
-
-       ret = fwnode_connection_find_match(fwnode, con_id, data, match);
-       if (ret)
-               return ret;
-
-       mutex_lock(&devcon_lock);
-
-       list_for_each_entry(con, &devcon_list, list) {
-               ep = match_string(con->endpoint, 2, devname);
-               if (ep < 0)
-                       continue;
-
-               if (con_id && strcmp(con->id, con_id))
-                       continue;
-
-               ret = match(con, !ep, data);
-               if (ret)
-                       break;
-       }
-
-       mutex_unlock(&devcon_lock);
-
-       return ret;
+       return fwnode_connection_find_match(dev_fwnode(dev), con_id, data, match);
 }
 EXPORT_SYMBOL_GPL(device_connection_find_match);
-
-/**
- * device_connection_add - Register a connection description
- * @con: The connection description to be registered
- */
-void device_connection_add(struct device_connection *con)
-{
-       mutex_lock(&devcon_lock);
-       list_add_tail(&con->list, &devcon_list);
-       mutex_unlock(&devcon_lock);
-}
-EXPORT_SYMBOL_GPL(device_connection_add);
-
-/**
- * device_connections_remove - Unregister connection description
- * @con: The connection description to be unregistered
- */
-void device_connection_remove(struct device_connection *con)
-{
-       mutex_lock(&devcon_lock);
-       list_del(&con->list);
-       mutex_unlock(&devcon_lock);
-}
-EXPORT_SYMBOL_GPL(device_connection_remove);
index 0704461..ea37deb 100644 (file)
@@ -297,7 +297,6 @@ struct device_dma_parameters {
  * @fwnode: The device node of the connected device
  * @endpoint: The names of the two devices connected together
  * @id: Unique identifier for the connection
- * @list: List head, private, for internal use only
  *
  * NOTE: @fwnode is not used together with @endpoint. @fwnode is used when
  * platform firmware defines the connection. When the connection is registered
@@ -307,7 +306,6 @@ struct device_connection {
        struct fwnode_handle    *fwnode;
        const char              *endpoint[2];
        const char              *id;
-       struct list_head        list;
 };
 
 typedef void *(*devcon_match_fn_t)(struct device_connection *con, int ep,
@@ -319,33 +317,6 @@ void *fwnode_connection_find_match(struct fwnode_handle *fwnode,
 void *device_connection_find_match(struct device *dev, const char *con_id,
                                   void *data, devcon_match_fn_t match);
 
-void device_connection_add(struct device_connection *con);
-void device_connection_remove(struct device_connection *con);
-
-/**
- * device_connections_add - Add multiple device connections at once
- * @cons: Zero terminated array of device connection descriptors
- */
-static inline void device_connections_add(struct device_connection *cons)
-{
-       struct device_connection *c;
-
-       for (c = cons; c->endpoint[0]; c++)
-               device_connection_add(c);
-}
-
-/**
- * device_connections_remove - Remove multiple device connections at once
- * @cons: Zero terminated array of device connection descriptors
- */
-static inline void device_connections_remove(struct device_connection *cons)
-{
-       struct device_connection *c;
-
-       for (c = cons; c->endpoint[0]; c++)
-               device_connection_remove(c);
-}
-
 /**
  * enum device_link_state - Device link states.
  * @DL_STATE_NONE: The presence of the drivers is not being tracked.