Lines Matching full:role
236 * - when node role is MRM, in this case test_monitor is always set to false
239 * - when node role is MRA, there are 2 subcases:
240 * - when MRA behaves as MRM, in this case is similar with MRM role
263 * role MRA and behaves as MRC. The reason is that the in br_mrp_test_work_expired()
266 * the role of a MRM. in br_mrp_test_work_expired()
314 /* This function is continuously called when the node has the interconnect role
403 /* Stop sending MRP_InTest frames if has an interconnect role */ in br_mrp_del_impl()
564 /* Set port role, port role can be primary or secondary
568 enum br_mrp_port_role_type role) in br_mrp_set_port_role() argument
580 switch (role) { in br_mrp_set_port_role()
591 br_mrp_port_switchdev_set_role(p, role); in br_mrp_set_port_role()
618 /* Set ring role, ring role can be only MRM(Media Redundancy Manager) or
623 struct br_mrp_ring_role *role) in br_mrp_set_ring_role() argument
625 struct br_mrp *mrp = br_mrp_find_id(br, role->ring_id); in br_mrp_set_ring_role()
631 mrp->ring_role = role->ring_role; in br_mrp_set_ring_role()
634 err = br_mrp_switchdev_set_ring_role(br, mrp, role->ring_role); in br_mrp_set_ring_role()
638 /* Now detect if the HW actually applied the role or not. If the HW in br_mrp_set_ring_role()
639 * applied the role it means that the SW will not to do those operations in br_mrp_set_ring_role()
640 * anymore. For example if the role ir MRM then the HW will notify the in br_mrp_set_ring_role()
701 /* Set in role, in role can be only MIM(Media Interconnection Manager) or
705 int br_mrp_set_in_role(struct net_bridge *br, struct br_mrp_in_role *role) in br_mrp_set_in_role() argument
707 struct br_mrp *mrp = br_mrp_find_id(br, role->ring_id); in br_mrp_set_in_role()
714 if (!br_mrp_get_port(br, role->i_ifindex)) in br_mrp_set_in_role()
717 if (role->in_role == BR_MRP_IN_ROLE_DISABLED) { in br_mrp_set_in_role()
739 mrp->in_role = role->in_role; in br_mrp_set_in_role()
746 if (!br_mrp_unique_ifindex(br, role->i_ifindex)) in br_mrp_set_in_role()
756 p = br_mrp_get_port(br, role->i_ifindex); in br_mrp_set_in_role()
763 mrp->in_role = role->in_role; in br_mrp_set_in_role()
764 mrp->in_id = role->in_id; in br_mrp_set_in_role()
767 err = br_mrp_switchdev_set_in_role(br, mrp, role->in_id, in br_mrp_set_in_role()
768 role->ring_id, role->in_role); in br_mrp_set_in_role()
772 /* Now detect if the HW actually applied the role or not. If the HW in br_mrp_set_in_role()
773 * applied the role it means that the SW will not to do those operations in br_mrp_set_in_role()
774 * anymore. For example if the role is MIM then the HW will notify the in br_mrp_set_in_role()
1011 * the frame type, ring role and interconnect role
1042 * interconnect role and ports to process or forward the frame in br_mrp_rcv()
1045 /* If the role is MRM then don't forward the frames */ in br_mrp_rcv()
1051 /* If the role is MRA then don't forward the frames if it in br_mrp_rcv()
1093 * role then it should forward all frames between the ring ports in br_mrp_rcv()