summaryrefslogtreecommitdiffstats
path: root/drivers/usb/roles
diff options
context:
space:
mode:
authorHeikki Krogerus <heikki.krogerus@linux.intel.com>2020-09-04 14:51:22 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-09-07 11:14:09 +0200
commitf5514c91e9f72b719bfec64af6acac5ad41df7b5 (patch)
tree82c5d973813e2e42072fec5b537d2953673cdabc /drivers/usb/roles
parentdevice connection: Remove device_connection_add() (diff)
downloadlinux-f5514c91e9f72b719bfec64af6acac5ad41df7b5.tar.xz
linux-f5514c91e9f72b719bfec64af6acac5ad41df7b5.zip
device connection: Remove struct device_connection
Since the connection descriptors can't be stored into the list anymore, there is no need for the data structure. Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Link: https://lore.kernel.org/r/20200904125123.83725-4-heikki.krogerus@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/roles')
-rw-r--r--drivers/usb/roles/class.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/usb/roles/class.c b/drivers/usb/roles/class.c
index 27d92af29635..97f37077b7f9 100644
--- a/drivers/usb/roles/class.c
+++ b/drivers/usb/roles/class.c
@@ -87,19 +87,15 @@ enum usb_role usb_role_switch_get_role(struct usb_role_switch *sw)
}
EXPORT_SYMBOL_GPL(usb_role_switch_get_role);
-static void *usb_role_switch_match(struct device_connection *con, int ep,
+static void *usb_role_switch_match(struct fwnode_handle *fwnode, const char *id,
void *data)
{
struct device *dev;
- if (con->fwnode) {
- if (con->id && !fwnode_property_present(con->fwnode, con->id))
- return NULL;
+ if (id && !fwnode_property_present(fwnode, id))
+ return NULL;
- dev = class_find_device_by_fwnode(role_class, con->fwnode);
- } else {
- dev = class_find_device_by_name(role_class, con->endpoint[ep]);
- }
+ dev = class_find_device_by_fwnode(role_class, fwnode);
return dev ? to_role_switch(dev) : ERR_PTR(-EPROBE_DEFER);
}