Lines Matching refs:src_port
137 while (parent != tunnel->src_port->sw) { in tb_discover_tunnels()
143 pm_runtime_get_sync(&tunnel->src_port->sw->dev); in tb_discover_tunnels()
257 struct tb_port *src_port, in tb_find_tunnel() argument
265 ((src_port && src_port == tunnel->src_port) || in tb_find_tunnel()
275 struct tb_port *src_port, in tb_find_first_usb3_tunnel() argument
282 if (dst_port->sw->config.depth > src_port->sw->config.depth) in tb_find_first_usb3_tunnel()
285 sw = src_port->sw; in tb_find_first_usb3_tunnel()
301 static int tb_available_bandwidth(struct tb *tb, struct tb_port *src_port, in tb_available_bandwidth() argument
311 tunnel = tb_find_first_usb3_tunnel(tb, src_port, dst_port); in tb_available_bandwidth()
325 tb_for_each_port_on_path(src_port, dst_port, port) { in tb_available_bandwidth()
395 struct tb_port *src_port, in tb_release_unused_usb3_bandwidth() argument
400 tunnel = tb_find_first_usb3_tunnel(tb, src_port, dst_port); in tb_release_unused_usb3_bandwidth()
404 static void tb_reclaim_usb3_bandwidth(struct tb *tb, struct tb_port *src_port, in tb_reclaim_usb3_bandwidth() argument
410 tunnel = tb_find_first_usb3_tunnel(tb, src_port, dst_port); in tb_reclaim_usb3_bandwidth()
420 ret = tb_available_bandwidth(tb, tunnel->src_port, tunnel->dst_port, in tb_reclaim_usb3_bandwidth()
669 struct tb_port *src_port, *dst_port; in tb_deactivate_and_free_tunnel() local
679 src_port = tunnel->src_port; in tb_deactivate_and_free_tunnel()
688 tb_switch_dealloc_dp_resource(src_port->sw, src_port); in tb_deactivate_and_free_tunnel()
692 pm_runtime_mark_last_busy(&src_port->sw->dev); in tb_deactivate_and_free_tunnel()
693 pm_runtime_put_autosuspend(&src_port->sw->dev); in tb_deactivate_and_free_tunnel()
697 tb_reclaim_usb3_bandwidth(tb, src_port, dst_port); in tb_deactivate_and_free_tunnel()