Skip to content

Commit

Permalink
thunderbolt: Make tb_find_port() available to other files
Browse files Browse the repository at this point in the history
We will be needing this when adding initial USB4 support so make it
available to other files in the driver as well. We also rename it to
tb_switch_find_port() to follow conventions used in switch.c.

No functional changes.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Link: https://lore.kernel.org/r/20191217123345.31850-2-mika.westerberg@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Mika Westerberg authored and Greg Kroah-Hartman committed Dec 18, 2019
1 parent 10e5e6c commit 386e5e2
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 20 deletions.
18 changes: 18 additions & 0 deletions drivers/thunderbolt/switch.c
Original file line number Diff line number Diff line change
Expand Up @@ -2517,6 +2517,24 @@ struct tb_switch *tb_switch_find_by_route(struct tb *tb, u64 route)
return NULL;
}

/**
* tb_switch_find_port() - return the first port of @type on @sw or NULL
* @sw: Switch to find the port from
* @type: Port type to look for
*/
struct tb_port *tb_switch_find_port(struct tb_switch *sw,
enum tb_port_type type)
{
struct tb_port *port;

tb_switch_for_each_port(sw, port) {
if (port->config.type == type)
return port;
}

return NULL;
}

void tb_switch_exit(void)
{
ida_destroy(&nvm_ida);
Expand Down
22 changes: 2 additions & 20 deletions drivers/thunderbolt/tb.c
Original file line number Diff line number Diff line change
Expand Up @@ -338,24 +338,6 @@ static void tb_free_unplugged_children(struct tb_switch *sw)
}
}

/**
* tb_find_port() - return the first port of @type on @sw or NULL
* @sw: Switch to find the port from
* @type: Port type to look for
*/
static struct tb_port *tb_find_port(struct tb_switch *sw,
enum tb_port_type type)
{
struct tb_port *port;

tb_switch_for_each_port(sw, port) {
if (port->config.type == type)
return port;
}

return NULL;
}

/**
* tb_find_unused_port() - return the first inactive port on @sw
* @sw: Switch to find the port on
Expand Down Expand Up @@ -586,7 +568,7 @@ static int tb_tunnel_pci(struct tb *tb, struct tb_switch *sw)
struct tb_switch *parent_sw;
struct tb_tunnel *tunnel;

up = tb_find_port(sw, TB_TYPE_PCIE_UP);
up = tb_switch_find_port(sw, TB_TYPE_PCIE_UP);
if (!up)
return 0;

Expand Down Expand Up @@ -624,7 +606,7 @@ static int tb_approve_xdomain_paths(struct tb *tb, struct tb_xdomain *xd)

sw = tb_to_switch(xd->dev.parent);
dst_port = tb_port_at(xd->route, sw);
nhi_port = tb_find_port(tb->root_switch, TB_TYPE_NHI);
nhi_port = tb_switch_find_port(tb->root_switch, TB_TYPE_NHI);

mutex_lock(&tb->lock);
tunnel = tb_tunnel_alloc_dma(tb, nhi_port, dst_port, xd->transmit_ring,
Expand Down
2 changes: 2 additions & 0 deletions drivers/thunderbolt/tb.h
Original file line number Diff line number Diff line change
Expand Up @@ -533,6 +533,8 @@ void tb_switch_suspend(struct tb_switch *sw);
int tb_switch_resume(struct tb_switch *sw);
int tb_switch_reset(struct tb *tb, u64 route);
void tb_sw_set_unplugged(struct tb_switch *sw);
struct tb_port *tb_switch_find_port(struct tb_switch *sw,
enum tb_port_type type);
struct tb_switch *tb_switch_find_by_link_depth(struct tb *tb, u8 link,
u8 depth);
struct tb_switch *tb_switch_find_by_uuid(struct tb *tb, const uuid_t *uuid);
Expand Down

0 comments on commit 386e5e2

Please sign in to comment.