Lines Matching refs:parent
155 struct ice_sched_node *parent; in ice_sched_add_node() local
166 parent = ice_sched_find_node_by_teid(pi->root, in ice_sched_add_node()
168 if (!parent) { in ice_sched_add_node()
198 node->parent = parent; in ice_sched_add_node()
200 parent->children[parent->num_children++] = node; in ice_sched_add_node()
236 ice_sched_remove_elems(struct ice_hw *hw, struct ice_sched_node *parent, in ice_sched_remove_elems() argument
249 buf->hdr.parent_teid = parent->info.node_teid; in ice_sched_remove_elems()
274 struct ice_sched_node *parent, u8 layer) in ice_sched_get_first_node() argument
276 return pi->sib_head[parent->tc_num][layer]; in ice_sched_get_first_node()
309 struct ice_sched_node *parent; in ice_free_sched_node() local
327 ice_sched_remove_elems(hw, node->parent, 1, &teid); in ice_free_sched_node()
329 parent = node->parent; in ice_free_sched_node()
331 if (parent) { in ice_free_sched_node()
335 for (i = 0; i < parent->num_children; i++) in ice_free_sched_node()
336 if (parent->children[i] == node) { in ice_free_sched_node()
337 for (j = i + 1; j < parent->num_children; j++) in ice_free_sched_node()
338 parent->children[j - 1] = in ice_free_sched_node()
339 parent->children[j]; in ice_free_sched_node()
340 parent->num_children--; in ice_free_sched_node()
896 struct ice_sched_node *parent, u8 layer, u16 num_nodes, in ice_sched_add_elems() argument
913 buf->hdr.parent_teid = parent->info.node_teid; in ice_sched_add_elems()
916 buf->generic[i].parent_teid = parent->info.node_teid; in ice_sched_add_elems()
956 new_node = ice_sched_find_node_by_teid(parent, teid); in ice_sched_add_elems()
1017 struct ice_sched_node *parent, u8 layer, in ice_sched_add_nodes_to_hw_layer() argument
1028 if (!parent || layer < pi->hw->sw_entry_point_layer) in ice_sched_add_nodes_to_hw_layer()
1032 max_child_nodes = pi->hw->max_children[parent->tx_sched_layer]; in ice_sched_add_nodes_to_hw_layer()
1035 if ((parent->num_children + num_nodes) > max_child_nodes) { in ice_sched_add_nodes_to_hw_layer()
1037 if (parent == tc_node) in ice_sched_add_nodes_to_hw_layer()
1042 return ice_sched_add_elems(pi, tc_node, parent, layer, num_nodes, in ice_sched_add_nodes_to_hw_layer()
1061 struct ice_sched_node *parent, u8 layer, in ice_sched_add_nodes_to_layer() argument
1074 status = ice_sched_add_nodes_to_hw_layer(pi, tc_node, parent, in ice_sched_add_nodes_to_layer()
1094 max_child_nodes = pi->hw->max_children[parent->tx_sched_layer]; in ice_sched_add_nodes_to_layer()
1096 if (parent->num_children < max_child_nodes) { in ice_sched_add_nodes_to_layer()
1097 new_num_nodes = max_child_nodes - parent->num_children; in ice_sched_add_nodes_to_layer()
1100 parent = parent->sibling; in ice_sched_add_nodes_to_layer()
1194 status = ice_sched_remove_elems(pi->hw, node->parent, 1, &teid); in ice_rm_dflt_leaf_node()
1658 struct ice_sched_node *parent, *node; in ice_sched_add_vsi_child_nodes() local
1666 parent = ice_sched_get_vsi_node(pi, tc_node, vsi_handle); in ice_sched_add_vsi_child_nodes()
1670 if (!parent) in ice_sched_add_vsi_child_nodes()
1673 status = ice_sched_add_nodes_to_layer(pi, tc_node, parent, i, in ice_sched_add_vsi_child_nodes()
1684 parent = ice_sched_find_node_by_teid(tc_node, in ice_sched_add_vsi_child_nodes()
1686 node = parent; in ice_sched_add_vsi_child_nodes()
1692 parent = parent->children[0]; in ice_sched_add_vsi_child_nodes()
1761 struct ice_sched_node *parent = tc_node; in ice_sched_add_vsi_support_nodes() local
1773 status = ice_sched_add_nodes_to_layer(pi, tc_node, parent, in ice_sched_add_vsi_support_nodes()
1784 parent = ice_sched_find_node_by_teid(tc_node, in ice_sched_add_vsi_support_nodes()
1787 parent = parent->children[0]; in ice_sched_add_vsi_support_nodes()
1789 if (!parent) in ice_sched_add_vsi_support_nodes()
1793 parent->vsi_handle = vsi_handle; in ice_sched_add_vsi_support_nodes()
2176 struct ice_sched_node *parent; in ice_sched_get_free_vsi_parent() local
2178 parent = ice_sched_get_free_vsi_parent(hw, node->children[i], in ice_sched_get_free_vsi_parent()
2180 if (parent) in ice_sched_get_free_vsi_parent()
2181 return parent; in ice_sched_get_free_vsi_parent()
2202 old_parent = node->parent; in ice_sched_update_parent()
2216 node->parent = new_parent; in ice_sched_update_parent()
2230 ice_sched_move_nodes(struct ice_port_info *pi, struct ice_sched_node *parent, in ice_sched_move_nodes() argument
2242 if (!parent || !num_items) in ice_sched_move_nodes()
2246 if (parent->num_children + num_items > in ice_sched_move_nodes()
2247 hw->max_children[parent->tx_sched_layer]) in ice_sched_move_nodes()
2263 buf->hdr.dest_parent_teid = parent->info.node_teid; in ice_sched_move_nodes()
2274 ice_sched_update_parent(parent, node); in ice_sched_move_nodes()
2296 struct ice_sched_node *vsi_node, *agg_node, *tc_node, *parent; in ice_sched_move_vsi_to_agg() local
2328 parent = ice_sched_get_free_vsi_parent(pi->hw, in ice_sched_move_vsi_to_agg()
2331 if (parent) in ice_sched_move_vsi_to_agg()
2336 parent = agg_node; in ice_sched_move_vsi_to_agg()
2338 status = ice_sched_add_nodes_to_layer(pi, tc_node, parent, i, in ice_sched_move_vsi_to_agg()
2349 parent = ice_sched_find_node_by_teid(tc_node, in ice_sched_move_vsi_to_agg()
2352 parent = parent->children[0]; in ice_sched_move_vsi_to_agg()
2354 if (!parent) in ice_sched_move_vsi_to_agg()
2360 return ice_sched_move_nodes(pi, parent, 1, &vsi_teid); in ice_sched_move_vsi_to_agg()
2460 struct ice_sched_node *parent = agg_node->parent; in ice_sched_rm_agg_cfg() local
2462 if (!parent) in ice_sched_rm_agg_cfg()
2465 if (parent->num_children > 1) in ice_sched_rm_agg_cfg()
2468 agg_node = parent; in ice_sched_rm_agg_cfg()
2545 struct ice_sched_node *parent, *agg_node, *tc_node; in ice_sched_add_agg_cfg() local
2572 parent = ice_sched_get_first_node(pi, tc_node, i); in ice_sched_add_agg_cfg()
2575 while (parent) { in ice_sched_add_agg_cfg()
2576 if (parent->num_children < hw->max_children[i]) in ice_sched_add_agg_cfg()
2578 parent = parent->sibling; in ice_sched_add_agg_cfg()
2582 if (!parent) in ice_sched_add_agg_cfg()
2587 parent = tc_node; in ice_sched_add_agg_cfg()
2589 if (!parent) in ice_sched_add_agg_cfg()
2592 status = ice_sched_add_nodes_to_layer(pi, tc_node, parent, i, in ice_sched_add_agg_cfg()
2603 parent = ice_sched_find_node_by_teid(tc_node, in ice_sched_add_agg_cfg()
2606 if (parent && i == aggl) in ice_sched_add_agg_cfg()
2607 parent->agg_id = agg_id; in ice_sched_add_agg_cfg()
2609 parent = parent->children[0]; in ice_sched_add_agg_cfg()
3445 return node->parent; in ice_sched_get_srl_node()
3779 (node->parent && node->parent->num_children == 1))) in ice_sched_validate_srl_node()