Lines Matching refs:hops
41 path->hops = kcalloc(num_hops, sizeof(*path->hops), GFP_KERNEL); in tb_path_alloc()
42 if (!path->hops) { in tb_path_alloc()
60 kfree(path->hops); in tb_path_free()
68 res = tb_port_add_nfc_credits(path->hops[i].in_port, in __tb_path_deallocate_nfc()
71 tb_port_warn(path->hops[i].in_port, in __tb_path_deallocate_nfc()
82 res = tb_port_write(path->hops[i].in_port, &hop, TB_CFG_HOPS, in __tb_path_deactivate_hops()
83 2 * path->hops[i].in_hop_index, 2); in __tb_path_deactivate_hops()
85 tb_port_warn(path->hops[i].in_port, in __tb_path_deactivate_hops()
87 i, path->hops[i].in_hop_index); in __tb_path_deactivate_hops()
99 tb_route(path->hops[0].in_port->sw), in tb_path_deactivate()
100 path->hops[0].in_port->port, in tb_path_deactivate()
101 tb_route(path->hops[path->path_length - 1].out_port->sw), in tb_path_deactivate()
102 path->hops[path->path_length - 1].out_port->port); in tb_path_deactivate()
127 tb_route(path->hops[0].in_port->sw), in tb_path_activate()
128 path->hops[0].in_port->port, in tb_path_activate()
129 tb_route(path->hops[path->path_length - 1].out_port->sw), in tb_path_activate()
130 path->hops[path->path_length - 1].out_port->port); in tb_path_activate()
134 if (path->hops[i].in_counter_index == -1) in tb_path_activate()
136 res = tb_port_clear_counter(path->hops[i].in_port, in tb_path_activate()
137 path->hops[i].in_counter_index); in tb_path_activate()
144 res = tb_port_add_nfc_credits(path->hops[i].in_port, in tb_path_activate()
167 res = tb_port_write(path->hops[i].in_port, &hop, TB_CFG_HOPS, in tb_path_activate()
168 2 * path->hops[i].in_hop_index, 2); in tb_path_activate()
176 hop.next_hop = path->hops[i].next_hop_index; in tb_path_activate()
177 hop.out_port = path->hops[i].out_port->port; in tb_path_activate()
191 hop.counter = path->hops[i].in_counter_index; in tb_path_activate()
192 hop.counter_enable = path->hops[i].in_counter_index != -1; in tb_path_activate()
201 tb_port_info(path->hops[i].in_port, "Writing hop %d, index %d", in tb_path_activate()
202 i, path->hops[i].in_hop_index); in tb_path_activate()
203 tb_dump_hop(path->hops[i].in_port, &hop); in tb_path_activate()
204 res = tb_port_write(path->hops[i].in_port, &hop, TB_CFG_HOPS, in tb_path_activate()
205 2 * path->hops[i].in_hop_index, 2); in tb_path_activate()
229 if (path->hops[i].in_port->sw->is_unplugged) in tb_path_is_invalid()
231 if (path->hops[i].out_port->sw->is_unplugged) in tb_path_is_invalid()