From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
To: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org
Subject: [PATCH 2/4] device connection: Remove device_connection_add()
Date: Fri, 4 Sep 2020 15:51:21 +0300 [thread overview]
Message-ID: <20200904125123.83725-3-heikki.krogerus@linux.intel.com> (raw)
In-Reply-To: <20200904125123.83725-1-heikki.krogerus@linux.intel.com>
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>
---
drivers/base/devcon.c | 59 +-----------------------------------------
include/linux/device.h | 29 ---------------------
2 files changed, 1 insertion(+), 87 deletions(-)
diff --git a/drivers/base/devcon.c b/drivers/base/devcon.c
index 51ad546303ddb..94ab22a451ce3 100644
--- a/drivers/base/devcon.c
+++ b/drivers/base/devcon.c
@@ -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);
diff --git a/include/linux/device.h b/include/linux/device.h
index 4a98cd2d442c7..43569297c6cc1 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -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.
--
2.28.0
next prev parent reply other threads:[~2020-09-04 12:52 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-04 12:51 [PATCH 0/4] Remove struct device_connection Heikki Krogerus
2020-09-04 12:51 ` [PATCH 1/4] device connection: Remove device_connection_find() Heikki Krogerus
2020-09-04 12:51 ` Heikki Krogerus [this message]
2020-09-04 12:51 ` [PATCH 3/4] device connection: Remove struct device_connection Heikki Krogerus
2020-09-04 12:51 ` [PATCH 4/4] device property: Move fwnode_connection_find_match() under drivers/base/property.c Heikki Krogerus
2020-09-07 9:04 ` Greg Kroah-Hartman
2020-09-07 9:13 ` Heikki Krogerus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200904125123.83725-3-heikki.krogerus@linux.intel.com \
--to=heikki.krogerus@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rafael@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).