Lines Matching defs:parent_sw
589 static struct tb_switch *alloc_switch(struct tb_switch *parent_sw, u64 route,
592 struct tb *tb = parent_sw->tb;
595 sw = tb_switch_alloc(tb, &parent_sw->dev, route);
611 static int add_switch(struct tb_switch *parent_sw, struct tb_switch *sw)
617 tb_port_at(route, parent_sw)->remote = tb_upstream_port(sw);
618 tb_upstream_port(sw)->remote = tb_port_at(route, parent_sw);
622 tb_port_at(tb_route(sw), parent_sw)->remote = NULL;
627 static void update_switch(struct tb_switch *parent_sw, struct tb_switch *sw,
632 tb_port_at(tb_route(sw), parent_sw)->remote = NULL;
634 tb_port_at(route, parent_sw)->remote = tb_upstream_port(sw);
654 struct tb_switch *parent_sw;
656 parent_sw = tb_to_switch(sw->dev.parent);
657 tb_port_at(tb_route(sw), parent_sw)->remote = NULL;
707 struct tb_switch *sw, *parent_sw;
738 parent_sw = tb_to_switch(sw->dev.parent);
768 update_switch(parent_sw, sw, route, pkg->connection_id,
809 parent_sw = tb_switch_find_by_link_depth(tb, link, depth - 1);
810 if (!parent_sw) {
820 tb_switch_put(parent_sw);
824 pm_runtime_get_sync(&parent_sw->dev);
826 sw = alloc_switch(parent_sw, route, &pkg->ep_uuid);
839 if (add_switch(parent_sw, sw))
843 pm_runtime_mark_last_busy(&parent_sw->dev);
844 pm_runtime_put_autosuspend(&parent_sw->dev);
846 tb_switch_put(parent_sw);
1174 struct tb_switch *sw, *parent_sw;
1206 parent_sw = tb_to_switch(sw->dev.parent);
1207 update_switch(parent_sw, sw, route, pkg->connection_id,
1231 parent_sw = tb_switch_find_by_route(tb, get_parent_route(route));
1232 if (!parent_sw) {
1237 pm_runtime_get_sync(&parent_sw->dev);
1239 sw = alloc_switch(parent_sw, route, &pkg->ep_uuid);
1252 if (add_switch(parent_sw, sw))
1256 pm_runtime_mark_last_busy(&parent_sw->dev);
1257 pm_runtime_put_autosuspend(&parent_sw->dev);
1259 tb_switch_put(parent_sw);